word2vecで単語をマッピングする
何を作ったか?
こんなものを作りました。
http://tkdmah.com/word2cordinates
どんなものか?
word2vecを用いて単語を2次元にマッピングします。
word2vecは、単語を200次元ベクトルに変換するモデルです。
ベクトルは単位ベクトルなので、200次元球面に配置されることになります。
200次元ベクトルを人間が見るのは難しいので、2次元化します。
そのためにまず、4つの単語を用いてX軸とY軸を作成します。
次に、その軸で張られた座標に対して、単語をプロットします。
単語の座標は、以下のように決定されます。
X軸を規定する単語ベクトルをv_x+, v_x-, Y軸を規定する単語ベクトルをv_y+, v_y-とします。
また、プロット対象とする単語ベクトルをv_targetとします。
このとき、v_targetがv_x+, v_x-となす角(θ_x+, θ_x-)がどちらに近いかを[-1,1]にマッピングしたものが、X座標(x_target)となります。
同様に、Y座標はv_y+,v_y-から計算します。
どうやって作ったか?
1. 日本語版Wikipediaのデータをダウンロードする。
2. mecabで分かち書きする。
3. gensim/pythonを用いてword2vecのモデルを作成する。
4. モデルを利用したアプリケーションをgensim, django, d3.jsなどを利用して作成する。
5. webサーバを構築して公開する。
サンプル
- X軸:期待⇔不安、Y軸:幸福⇔不幸としてプロット
- X軸:数学⇔文学、Y軸:科学⇔社会としてプロット
その他におもしろいサンプルができたら教えて下さい^^
今後の課題
- Twitterデータでモデル作るとか
- 可視化の仕方を変えるとか
モデルの精度評価(分類問題)
分類問題の精度評価についてまとめておきます。
代表的な評価指標にはどのようなものがあるのか、その中でどれを使えばいいのか、回帰分析の精度は使えるか、について順に書いていきます。
今回は、下記の混合行列で表されるような疾病検査を例にとって説明します。陽性・陰性は予測クラス、疾病あり・疾病なしは正解クラスです。
疾病あり | 疾病なし | |
---|---|---|
陽性 | ||
陰性 |
評価指標には何かあるか?
一般的によく使われる評価指標に、Precision, Recall, Specificity, F-measure, Accuracy, AUCがある。
HueでHadoopをWeb UIから使う
Hue とは
Hadoopは基本的にコマンドラインやJavaから操作する。そのため、初心者にはハードルが少々高い。
実は、オープンソースのWeb UIがApacheで開発されている。Web UIを用いることで、操作が単純になり、学習コストも低減される。
今回は、そのHueをインストールして使ってみる。
- Hueの公式ホームページ: http://cloudera.github.io/hue/
- HueのGitHubページ: https://github.com/cloudera/hue
Hueのインストール
0. Hadoop環境を構築する。
カンタンにHadoop環境を試用するには、Cloudera社が提供しているVMイメージを用いるよい。ClouderaのダウンロードページからVMをダウンロードし、VMWare Playerで立ち上げれば、すでにHadoop環境が整っている。詳細は下記のエントリを参照のこと。
今回の環境
- CentOS 6.2 64bit
- Hadoop 2.0.0-cdh4.1.1
1. Gitをインストールする。
HueはGithubで公開するため、Gitをインストールしておく必要がある。
$ yum -y install git-core
3. Mavenをインストールする。
下記からMevenをダウンロードする。
ダウンロードしたファイルを解凍し、パスを通しておく。
$ mkdir /usr/local/apache-maven $ mv /tmp/apache-maven-3.0.5-bin.tar.gz /usr/local/apache-maven/ $ cd /usr/local/apache-maven $ tar zxvf /usr/local/apache-maven/apache-maven-3.0.5-bin.tar.gz $ export M2_HOME=/usr/local/apache-maven/apache-maven-3.0.5 $ export M2=$M2_HOME/bin $ export PATH=$M2:$PATH $ mvn --version
4. その他必要なツールをインストールする。
$ yum -y install ant $ yum -y install asciidoc $ yum -y install cyrus-sasl-devel $ yum -y install cyrus-sasl-gssapi $ yum -y install gcc $ yum -y install gcc-c++ $ yum -y install krb5-devel $ yum -y install libtidy $ yum -y install libxml2-devel $ yum -y install libxslt-devel $ yum -y install mysql $ yum -y install mysql-devel $ yum -y install openldap-devel $ yum -y install python-devel $ yum -y install python-simplejson $ yum -y install sqlite-devel
5. Hueをインストールする。
$ cd /usr/lib/hue $ make apps $ build/env/bin/hue runserver
Hueを使ってみる
ホームページ
Hive
ファイルブラウザ
Hueってあまり聞かないけど、なかなか便利そうだ。(インストールはとても面倒だが。)
(以下追記)
今回はApache Hueをインストールしましたが、CDHであれば
$ yum install hue hue-server $ yum install hue-plugins
のようにyumでインストールできるようです。なるほど便利ですね^^情報ありがとうございます。