ツイッターの男女判定(前回の記事)のために、LDAを使ったテキストマイニングがやりたくなった。そのインストール手順メモ。
LDA(Latent Dirichlet Allocations)を使うために現時点で一番簡単な方法は、pythonのgensimというパッケージを使う方法のようです。その手順を書きます。
gensim関係のやってみたシリーズのリンク一覧
Python GensimでLDAを使うための前準備・パッケージのインストール
gensim0.8.6のチュートリアルをやってみた【コーパスとベクトル空間】
インストール前の注意事項
pythonに必要なパッケージ類は全部ソースからインストールしています。
ソースからインストールしない方法もあるのですが、2013年4月時点では、pythonに詳しくないと難しいので全くおすすめしません。対象とするOSはAmazon Linuxです。
pythonはyumで使われてたりするので、システムのpythonのバージョンを変えると問題が起きます。なので、この記事ではpythonを特定の場所にインストールしています。
yumからインストールする系のパッケージはyumでバイナリをインストールします。必要そうなものはとりあえず全部入れる手順にしているので、何かしらのサービスが稼働しているサーバーで試すのはおすすめしません。
gensimでLDAを使うプログラムは、一回の実行に10時間とかかかったりしますし、メモリやCPUリソースも大量に使います。そういう意味でも、専用のサーバーを用意することをおすすめします。本手順はAmazon EC2で実行しています。
pythonと必要なパッケージのインストール
コンパイラ等のインストール。
Amazon Linuxはsse3に対応していたのでatlas-sse3も入れています。どのバージョンのsseに対応しているかは「cat /proc/cpuinfo」のflagsで確認できます。
sudo yum groupinstall -y 'Development Tools' install openssl-devel* zlib*.x86_64 sudo yum install -y gcc gcc-c++ zlib-devel openssl-devel bzip2-devel sudo yum install -y atlas atlas-devel atlas-sse3 atlas-sse3-devel gcc-gfortran
pythonのインストール。
numpyとscipyを一般ユーザーでインストールする都合上、pythonをインストールしたディレクトリを一般ユーザーでも書き込めるようにします。
cd wget http://python.org/ftp/python/2.7/Python-2.7.tgz tar xfz Python-2.7.tgz cd Python-2.7 ./configure --prefix=/opt/python2.7 --with-threads --enable-shared make sudo make install # ~/.bashrcに追記 alias python='/opt/python2.7/bin/python' alias python2.7='/opt/python2.7/bin/python' PATH=$PATH:/opt/python2.7/bin source ~/.bashrc # /etc/ld.so.conf.d/opt-python2.7.confに追記 /opt/python2.7/lib sudo ldconfig sudo chown -R ec2-user /opt/python2.7 sudo chgrp -R ec2-user /opt/python2.7
numpyのインストール。
cd wget http://downloads.sourceforge.net/project/numpy/NumPy/1.7.0/numpy-1.7.0.tar.gz tar zxvf numpy-1.7.0.tar.gz cd numpy-1.7.0 python2.7 setup.py build python2.7 setup.py install
scipyのインストール。
cd wget http://downloads.sourceforge.net/project/scipy/scipy/0.11.0/scipy-0.11.0.tar.gz tar zxvf scipy-0.11.0.tar.gz cd scipy-0.11.0 python2.7 setup.py build python2.7 setup.py install
gensimのインストール。
これが今回の大本命です。
cd wget https://pypi.python.org/packages/source/g/gensim/gensim-0.8.6.tar.gz tar zxvf gensim-0.8.6.tar.gz cd gensim-0.8.6 python2.7 setup.py build python2.7 setup.py install
インストールが成功したことの確認。
下記の3つのimport文でエラーが起きなければインストール完了です。
cd python2.7 >>> import numpy >>> import scipy >>> import gensim
atlasがちゃんと使われているかどうかの確認は、「python -c 'import numpy; numpy.show_config()'」でできます。
参考リンク
ec2へpythonをソースからインストール
http://joshualholmes.wordpress.com/category/amazon-ec2/
numpy, scipyをソースからインストール
http://memo.yomukaku.net/entries/jbRkQkq
gensimをソースからインストール
http://radimrehurek.com/gensim/install.html