Jubatusワークショップに行って来ました
昨日行われたJubatus Workshopに参加してきました。ref. 第一回 Jubatus Workshop #jubatus - Togetter JubatusOfficial Presentations
以下は僕の解釈も含めたまとめ
- ユバタスの必要性
- データはこれからも増加していく。今多いってことより、今後どんどん増えるということが重要な問題
- データの活用は 蓄積→理解→予測。世の中はようやく蓄積が出来るようになり理解に向かい始めた段階.
- CPUの速度が向上する速度よりも、データ量の増える速度の方が大きい。必然的にデータに対する処理で並列性を考えなければいけない状況が増えてくる。
- 既存のシステムとの差
- MIX
- モデルパラメータの共有をリアルタイムにしないという妥協によって実現可能。モデルパラメータの間欠的なMIXでOKだというのは論文にもなっている
- 現状は線形分類器の並列化になっていて、モデルパラメータのMIX処理("Iterative Parameter Mixuture")は単なる平均。
- unnonouno「Iterative Parameter Mixtureについてはこの辺を参照 http://t.co/ApubeIxC」hillbig「平均だと大分乱暴な気がしますが、パーセプトロンぐらいだったら、収束性能が示されています。 http://t.co/r384e8AH」
- ユースケース:パケットデータからの電力消費量推定
- テキスト寄り?
- 学習差分だけの通信で通信量が減る理由
- nishio「差分を通信したらモデル全体を通信するのより楽, というのがよくわからないなぁ. たとえば線形分類器だと各クラスタ×各特徴×floatとかで重みベクトルの塊があるんだと思うが, それの前の学習からの変化量ってやっぱり同じ個数のfloatじゃないの? *YF*」
- niam「重みベクトルの非0の部分だけ通信しているのかな?だったらモデル全体ではなく差分だけ通信することで通信量下がるのはちょっとわかる気が。」
- nishio「自然言語を想定した場合, モデルパラメータの差分はスパースなので非0だけ送れば圧縮できる, というところまでは理解できた.」
- つまり、hillbig「非定形データ(bag of words, bag of image feature, 行動履歴)の特徴ベクトルが疎ベクトルなので、それ向けの実装になっています」ということね
その他
- Twitterの内容を多クラス分類するのが6000QPSで走るらしい!(詳しい情報どこ?)
- Twitterのストリームを処理するくらいならマシンは2台程度で十分らしい(詳しい情報どこ?)
- 教師あり学習だけではなく, 1月くらいをめどに近傍探索と属性補完(レコメンドの要素技術)にもチャレンジとな. ストリーム化はアカデミック的にもチャレンジング. 将来的には統計分析やHMM,LDAなんかも乗せると。
- 入力データがBag of wordsやn-gramでベクトル化され, 線形分類のオンライン学習に流し込まれる. 中の仕組みは今回は詳しいことは言わないらしい. パーセプトロンとPA, CW, AROW,
NHEADNHERDの5つが既に実装済み。 - MIX処理の開始時にはロックを獲得するが, これは他の学習機がMIXを開始しないためのもので, MIX処理中でも個々が差分を送ったり受け取ったりしている間以外は学習や分類を受け付けられる,ただしMIX処理中の学習結果は捨てられる,これは不可避とのこと
- hillbig「データではなくモデルだけをやりとりするので、ネットワークがネックにならないというのが売りではあります。将来的にネットワークバンド幅が細い、組み込み向けでの利用もできたらなと考えています」
- jubakeeperがやってくれるので、1台か複数台かを考える必要がない