classifier.pkl
別のモジュールにロードしようとしているというピクルスファイルがあります。しかし、理解できないエラーが発生します。
漬ける私のコード:
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'))
ピクルスを外す私のコード:
features, extract_features, classifier =
cPickle.load(open('cocaine_classifier.pkl','rb'))
私のエラー:
AttributeError: 'module' object has no attribute 'extract_features'
少し前に、私は.pkl
3つのものを漬けてファイルを作成しました。
- 機能:リスト
- extract_features:関数
- 分類器:NLTKナイーブベイズ分類器のインスタンス
不可解なことに、次のコードでも同じエラーが発生します。
x = cPickle.load(open('cocaine_classifier.pkl','rb'))
なぜ3つ取得できないのですか?タプルを開梱しようとしていないときでも?
アップデート
NPEが指摘したように、選択解除される関数のパスは、選択解除される関数と正確に一致する必要があります。私はデバッグとターミナルを行っていたので、from mod import *
すべてを名前空間にロードしますが、ロードimport mod as m
しません。