ちょっと前になりますが、昨年12月に行われた機械学習のトップカンファレンスであるNIPS2015の講演ビデオが上がっているようなのでチェックしてみました。今回ご紹介するのはケンブリッジ大学のZoubin Ghahramani教授の研究です。
同教授は今後excitingな機械学習の基礎・応用に関する取り組みとして次のような6テーマを紹介しています。
・Bayesian Nonparametrics
ベイジアンノンパラメトリクスでは、無限次元を持つモデルを仮定することにより、データ量に応じて適切なモデルを学習することができます。こういったモデルは関数上の確率分布(確率過程)を考慮することによって実現できます。代表的な例はガウス過程、中華料理店過程、インド料理過程などです(ご飯ばっかりですね)。
ガウス過程は、回帰や識別、ランキングや次元削減に使われています。またある種のニューラルネットワークがガウス過程の一例であることが1994年に示されているそうです。
・Probabilistic Programming
確率モデルを構築し、推論アルゴリズムを導き、実装をする・・・といったプロセスはものすごく時間がかかって大変です。Probabilistic programmingは確率モデル(あるいは確率にデータを生成するプロセス)を記述するための言語で、推論はサンプリングや変分近似で勝手にやってくれます。代表的なのはBugsやStanです。
・Bayesian Optimization
日本語だと「ベイズ的最適化」の名前でコンセンサスが取れていたと思います。ガウス過程を使い未知の関数の最適値を探す手法です。未知の関数の評価にとても時間orコストがかかるような状況を仮定しており、いかに少ない評価回数で最適値を探せるかがポイントになります。
・Data Compression
シャノンの定理によると、すべての圧縮アルゴリズムは確率モデルに基づくそうです。ベイジアンノンパラメトリクスを使ったアダプティブな圧縮アルゴリズムが近年非常によい圧縮性能を出しているようです。
・Automatic Statistician
データを食わせるだけで何かしらレポートを返してくれるような野心的なアルゴリズムの話です。アイデアは非常にシンプルで、いくつかのカーネルを組み合わせて周辺尤度を評価することによって、データをうまく説明するような適切なモデルを探索します。
・Rational Allocation of Computational Resources
大量のデータと複数のモデルがある中、リソース(時間、CPU、メモリ、ディスクサイズ)が限られた状況下でいかに最適な機械学習システムを構築するか、という課題設定です。これを不確実性がある中での逐次的な意思決定問題として扱います。
・個人的な雑感
Bayesian nonparametricsは従来のベイズ学習に対する正当な拡張であるため、今後も基礎的な研究は発展していくかと思います。そろそろ大きなアプリケーションがほしいところですが、ディープラーニングなどの成功しているモデルもかなりの部分はこれに置き換わり、より洗練されたアルゴリズムになるのではないかと予測しています。
Probabilistic programmingは基本的に推論性能はあまりよくないようです。僕は使ったことがないのですが、とりあえず複数のモデルを素早く試したいときなんかには便利だと思います。普通にモデル構築→アルゴリズム導出→実装ってやってるとそれだけで1日使いますからね・・・。
ベイズ的最適化は非常に概念もわかりやすく応用先も広いのでぜひ多くの人に使っていただきたいと思います。日本の京などのでっかいコンピュータで何かシミュレーションを行う場合は、Bayesian optimizationで全体を包んであげると解探索が早くなるかもしれません。あまりいないと思いますが、例えば遺伝的アルゴリズムとかを使っている人は早々にこちらへの置き換えを検討した方が良いと思います。
データ圧縮も面白い領域です。結局のところ、jpegに代表されるように、非可逆圧縮というのはデータの中の捨ててもいい情報と残さなきゃいけない情報をうまく見つけることが基本になっています。これは機械学習における特徴量抽出といっしょです。画像だったら、人間が認知に必要でない情報は捨ててもいい可能性が高いと言えるわけですね。データ圧縮もかなりドメイン依存が強いかと思いますが、汎用的なアルゴリズムでどこまでいけるのかは興味深いですね。
Automatic statistiicianはデータサイエンスにおける究極的な課題の1つなんじゃないかと思います。ただ、質問でもありましたが、決してデータサイエンティストの職業を奪うようなものではなく、あくまで便利なツールであるという位置づけだそうです。
リソースアロケーションの話は実応用で非常に重要です。まぁそれ以前に日本だったらちゃんと複数の確率モデルを作れる人がいないと話にならないですが・・・。
以上です。