Textblobを使用してテキスト分類を試みています。以下に示すように、最初にモデルをトレーニングし、pickleを使用してモデルをシリアル化します。
import pickle
from textblob.classifiers import NaiveBayesClassifier
with open('sample.csv', 'r') as fp:
cl = NaiveBayesClassifier(fp, format="csv")
f = open('sample_classifier.pickle', 'wb')
pickle.dump(cl, f)
f.close()
そして、このファイルを実行しようとすると:
import pickle
f = open('sample_classifier.pickle', encoding="utf8")
cl = pickle.load(f)
f.close()
私はこのエラーを受け取ります:
UnicodeDecodeError: 'utf-8'コーデックは位置0のバイト0x80をデコードできません:開始バイトが無効です
Sample.csvのコンテンツは次のとおりです。
私のSQLはまったく正しく機能していません。これは間違った選択でした、SQL
問題があります。すぐに返信してください、サポート
私はここでどこに間違っていますか?助けてください。
モードopen
のファイルをwb
に選択すると、生のバイナリで書き込むことになります。適用される文字エンコードはありません。
したがって、このファイルを読み取るには、単にopen
モードでrb
する必要があります。
ファイルを次のように開く必要があると思います
f = open('sample_classifier.pickle', 'rb')
cl = pickle.load(f)
デコードする必要はありません。 pickle.load
は、保存したものの正確なコピーを提供します。この時点で、作成したようにcl
を操作できるはずです。