超言理論

特に益もない日記である

自制的な人間になりたい

どうにも最近やる気が出ない。
こういう時は何か特に理由があるわけでなく、春の匂いがするとか、雨が降っているとか、月が赤いとかそのくらいの理由で調子が悪くなる。
もっとうまいこと自分をコントロールしていかないと研究なんて進むもんじゃないんだけど、そもそも研究が進んでないから気分が落ちるんじゃないかと思うともうどっちが先変わらないのでどうしようもない。


どうしようもないので、どうしようもないなりにどうにかなることだけ適当にやっていく。
python2 + sklearnで次元圧縮(TruncatedSVD)をかけようと思ったら上手く行かなくて、どうやら調べたところsklearnのバージョンが相当古いらしい。
いい機会なのでpython3に完全に移行してしまうことにする。

sklearnのインストール周りはかなり手厚く公式に書かれているので、そこを参照すればだいたいつまづかずに適当に終わらせられる。
Installing scikit-learn — scikit-learn 0.15.2 documentation
ご丁寧

If you have Python 3:
sudo apt-get install build-essential python3-dev python3-setuptools \
python3-numpy python3-scipy \
libatlas-dev libatlas3gf-base

で、肝心のsklearnのインストールでこけるんだけど、これも先人の知恵。

python3.4.0でscikit-learnでインストール - Handwriting
なぜかpip3入ってなかったので、以下に従いインストール
Python2 と Python3 の共存 - TEXT/YUBASCRIPT

これでpyhton3 + sklearnが動く。

やった作業をまとめると、

$ sudo apt-get install python3 git
$ wget https://pypi.python.org/packages/source/d/distribute/distribute-0.6.49.tar.gz#md5=89e68df89faf1966bcbd99a0033fbf8e
$ tar xzvf distribute-0.6.49.tar.gz
$ cd distribute-0.6.49
$ sudo python3 setup.py install
$ sudo apt-get install build-essential python3-dev python3-setuptools \
                     python3-numpy python3-scipy \
                     libatlas-dev libatlas3gf-base
$ sudo pip3 install git+https://github.com/scikit-learn/scikit-learn.git
$ python3
Python 3.2.3 (default, Feb 20 2013, 14:44:27)
[GCC 4.7.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sklearn
>>> sklearn.__version__
'0.16.dev'

Python3になると文字コード周りがちょっと改善されてて楽だけど、単純に2to3で変換できない部分も多いから移植は苦労することが多い。
今回はかなり小規模だったので余裕だったが…

scikit-learn Cookbook

scikit-learn Cookbook


Copyright © 2012-2016 Masahiro MIZUKAMI All Rights Reserved.