word2vecはじめました。
はじめに
趣味の開発にword2vecが使えそうなので、word2vecチュートリアル行ってきた。これです。
Python+Janome+gensim で学ぶ自然言語処理入門 - connpass
環境構築
Mac新しくしたので、janome、gensim、scikit-learn、その他もろもろをまずインストール。
仮想環境作る
$ python3.6 -m venv nlp
$ source nlp/bin/activate
pipのアップグレード
$ python -m pip install --upgrade pip
janomeのインストール
いままでMeCab使っていたけれど、janome入れてみた。MeCabがパフォーマンスが良いのだけれど、インストールで詰みがちでつらい。janomeなら
$ pip install janome
で簡単にインストールできちゃうし、何よりもpythonなので読みやすい。機械学習はMeCabがよいのだろうけれど、ちょっと分ち書きしたい程度だったらjanomeの方が使いやすい。もっと早く入れておけばよかった!
gensimのインストール
https://radimrehurek.com/gensim/install.html
$ pip install --upgrade gensim
Spicy stackのインストール
Scipy.orgで"Scipy stack" のインストールを推奨してたので、以下をまとめてインストール。 https://www.scipy.org/install.html
$ pip install --user numpy scipy matplotlib ipython jupyter pandas sympy nose
Scikit-learnのインストール
http://scikit-learn.org/stable/install.html
$ pip install -U scikit-learn
Jupyter notebookのインストール
http://jupyter.org/install.html
$ python3 -m pip install jupyter
チュートリアル
このjupyter notebookのLevel 1 - 3 やった。
というか、Shift + Enterを叩いただけだった・・・。まぁ、2時間のチュートリアルってそうなるよね。
TFIDF
TFIDF = 特徴語抽出の手法 TF * IDF
TF: ある単語がその文で何回出てきたか
IDF: log( ( 全体の文書数 + 1 ) / ( ある単語の含まれる文書数 + 1 ) )
word2vec
word2vecはあまり収穫なかった。tensorflowのページとMikorovさんの論文読むのつらいから、おかねで解決しようとチュートリアルに参加してみたけれど、あきらめてちゃんと自分で勉強しようという気持ちになることができたのが収穫、かな。。。
Vector Representations of Words | TensorFlow