読者です 読者をやめる 読者になる 読者になる

人工知能してみる

人工知能の中の人が機械学習とかデータドリブン的なことを勉強します

gensimでトピックモデルを実装してみる

自然言語処理のライブラリはpythonでは多々ありますが、gensimを今回は使います。
以前もgensimはWord2Vecを使うために使いましたね。
grahamian.hatenablog.com

今回はトピックモデルを実装するために使います。
とはいえ、作るだけならコードは3行で済みます。

こちらを参考に実装しました。
qiita.com

import gensim 
corpus = corpora.lowcorpus.LowCorpus('text.txt')
lda = gensim.models.ldamodel.LdaModel(corpus=corpus, num_topics=20, id2word=corpus.id2word)

text.txtはスペースで単語を区切ったテキストファイルです。
事前にMecabで分ち書きをして名詞だけにしてあります。

実装はこれだけで完了です。
あとはLdaModelを使って文書分類の推定されたトピックIDを見たり、トピックにおけるトークンの出現率を見ることができます。
また、num_topicsを変えることで分類するトピック数を変えることもできます。

トピックモデルは抽象的な理解は簡単ですが、LDAトピックモデルは統計の知識がないと理解が難しいです。
でも実装がこんな簡単にできるなんて最高ですね。