pythonでfasttextの分析を使いたいのですが、実行結果が空になってしまいます。
ネットで調べたところ同じ問題の質問を見つけたのですが未解決でしたので改めて質問させていただきます
https://teratail.com/questions/154512
環境
OS:windows10
python:3.6.5
fasttext:0.8.3
該当のソースコード
python
1import fasttext as ft 2import MeCab 3 4class predict: 5 6 def get_surfaces(self, content): 7 8 tagger = MeCab.Tagger('') 9 tagger.parse('') 10 surfaces = [] 11 node = tagger.parseToNode(content) 12 13 while node: 14 surfaces.append(node.surface) 15 node = node.next 16 17 return surfaces 18 19 def value_class(self, content): 20 21 words = " ".join(self.get_surfaces(content)) 22 print(words) 23 classifier = ft.load_model("model.bin") 24 estimate = classifier.predict_proba([words], k=3) 25 print(estimate) 26 27if __name__ == '__main__': 28 pre = predict() 29 pre.value_class("ここに文章を入力") 30
実行結果
ここ に 文章 を 入力
[[]]
追記
学習済みモデルはpythonからでも生成できたのでそれを使いました
exeを直接使って生成したモデルとネット上に配布されていたモデルも試してみましたがダメでした
pythonでのモデル生成部分は以下の通りです
python
1import fasttext as ft 2 3input_file = 'model.txt' 4output_file = 'model' 5ft.supervised(input_file, output_file)