2012年8月27日月曜日

機械学習の特集



どうしてもレコマンドしてみたくて…
という人は読んでみるとよいかと思います。

-機械学習とは
-Mahoutの歴史

このあたりは興味を持った。
実はこのあたり、もっと学生時代に深めたかった気はする。

書いてある通りに手を動かしました。

・Eclipseのインストール…もともとしてあった

・Mavenのインストール(3.0.4)…とりあえず書いてある通りに。

・Mahoutのインストール←☆つまづきました。


mahout-distribution-0.7 kitsu$ mvn eclipse:eclipse
[INFO] Scanning for projects...
[INFO]                                                                        
[INFO] ------------------------------------------------------------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] ------------------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.124s
[INFO] Finished at: Sun Aug 05 13:01:18 JST 2012
[INFO] Final Memory: 4M/81M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-eclipse-plugin:2.9:eclipse (default-cli): Goal requires a project to execute but there is no POM in this directory (/usr/local/bin/mahout-distribution-0.7). Please verify you invoked Maven from the correct directory. -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MissingProjectException


pomファイルというのが変?
と思い、mahout-distribution-0.7.pomというのもダウンロードして入れてみたりするんだけど、
最後までいかない。

結局、ダウンロードしなおしたのか、
しばらくして例のとおりのダウンロードログが出るように。
実際はすごく長かった。

・MahoutのソースコードをEclipseへインポート…これもEclipse使い慣れている人なら大丈夫な感だった。

・テストプログラム…その通りにやったら相関が出た。

・Hadoopで動かす←☆ちょっと面倒でした。

./bin/hadoop fs -put $testdir/inputdata.csv input/samples.txt

とやったら、

Error: JAVA_HOME is not set.

Mac OSXのJAVA_HOMEを探すのに一苦労。
いいのかわからないけど10.6あたりだと/Library/Java/homeということで、

export JAVA_HOME=/Library/Java/home

として再度 fs -put... のくだりを実行。

WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

が出たが気にしなかった。

最後のコマンド

./bin/hadoop jar /usr/local/bin/mahout-distribution-0.7/core/target/mahout-core-0.7-job.jar org.apache.mahout.cf.taste.hadoop.item.RecommenderJob -Dmapred.output.dir=output -Dmapred.input.dir=input/samples.txt --similarityClassname SIMILARITY_PEARSON_CORRELATION

打ったら、
わんさか途中経過が出てきてしかもなかなか終わらないと思ったが、
最後にはコンソールに制御が戻った。

参考文献:
機械学習ライブラリ『Mahout』入門(前編) - Software Design 2012年8月 技術評論社
機械学習ライブラリ『Mahout』入門(後編) - Software Design 2012年9月 技術評論社

- by Mizuk

読書中(技術系)

I am kitsutsuki.

Kobo Touch and Kindle Touch are my only friends.


Responsive Web Design with HTML5 and CSS3 by Ben Frain

I was flicking through the catalog to find the latest summary of HTML5 and CSS3 and I chose this one as it looked both reasonable and concise.


特集:機械学習ライブラリ『Mahout』入門 (Software Design 2012.8 - 9)

機械学習とかHadoopとかBig Dataとかそういう言葉の罠にまんまとかかり、
週末を過ごした。

途中おかしなこともあったけど、なんとかサンプルは動きましたよ。


Facts and Fallacies of Software Engineering by Robert L.Glass

こんな風に言いたい放題してみたいと思いつつ、
技術もおぼつかないチキンだと思ってしまい、
日々がすぎて行く。

いちおう続きを考えて構成されている本ではあるのだろうけど、
1個読んだら前のを特に覚えている必要もないので、
こういうネタに数字ふってある系の読み物が最近好き。


Text To Speechで女性ボイスで聞いたら、
ロボティックなやさぐれ具合がニューエイジしていて、
面白かった。

- by Mizuk