NLTK機能セットをScipy.sparseアレイに変換する方法はありますか?

StackOverflow https://stackoverflow.com/questions/8394257

  •  28-10-2019
  •  | 
  •  

質問

入力にnumpy/scipyアレイが必要なscikit.learnを使用しようとしています。 NLTKで生成される機能セットは、UnigramおよびBigRam周波数で構成されています。私は手動でそれをすることができましたが、それは多くの努力になります。だから、私が見落としている解決策があるかどうか疑問に思っています。

役に立ちましたか?

解決

私が知っているわけではありませんが、Scikit-Learnができることに注意してください n- グラム周波数カウント自体。単語レベルを仮定します n- グラム:

from sklearn.feature_extraction.text import CountVectorizer, WordNGramAnalyzer
v = CountVectorizer(analyzer=WordNGramAnalyzer(min_n=1, max_n=2))
X = v.fit_transform(files)

どこ files 文字列またはファイルのようなオブジェクトのリストです。この後、 X 生の周波数カウントのscipy.sparseマトリックスです。

他のヒント

Jacob Perkinsは、Scikit-Learn分類器を使用してNLTK分類子をトレーニングするためにAAブリッジを行いました。

https://github.com/japerk/nltk-trainer/blob/master/nltk_trainer/classification/sci.py

バージョン0.9+を使用している場合は、パッケージインポートラインを更新する必要があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top