我有一個名爲classifier.pkl
的醃製文件,我試圖加載到另一個模塊中。但是,我收到一個我不明白的錯誤。如何解讀這個cPickle錯誤?
我的代碼來醃製:
features = ['bob','ice','snowing'] #... shortened for exposition's sake
def extract_features(document):
return {'contains(%s)'% word: (word in set(document))
for word in all_together_word_list}
training_set = classify.util.apply_features(extract_features,tweets[0])
classifier = NaiveBayesClassifier.train(training_set)
cPcikle.dump(open('cocaine_classifier.pkl','wb'))
我的代碼unpickle:
features, extract_features, classifier =
cPickle.load(open('cocaine_classifier.pkl','rb'))
我的錯誤:
AttributeError: 'module' object has no attribute 'extract_features'
前段時間我酸洗三件事情作出.pkl
文件:
-
個
- 特點:列表
- extract_features:功能
- 分類:NLTK樸素貝葉斯分類器的實例
令人困惑的是,我得到了下面的代碼相同的錯誤:
x = cPickle.load(open('cocaine_classifier.pkl','rb'))
爲什麼能我有三件事嗎?即使我沒有試圖解開元組?
更新
由於NPE指出被拆封必須在其被拆封到其中的函數完全匹配功能的路徑。我正在調試和終端,所以from mod import *
加載到命名空間的一切,而import mod as m
沒有。
你可以發佈你用來醃製這些對象的代碼嗎? – Blender
'cocaine_classifier'?我很好奇... – NPE
@NPE:這是一些流行病學研究,真的:http://tox.sinaiem.org/(正在建設中)。 (不試圖做廣告只是說明原因) – mac389