本研究課題では、機械学習アルゴリズムの分散実行機構を構築し、ライブラリとして実装・公開することを目的としていた。機械学習アルゴリズム中で生じる学習状態や学習パラメタの共有が原因となり生じるボトルネックや、十分な並列分散効果を得るための入力データへのアクセスの高速化が重要な技術的課題であった。さらには、前年度の研究を踏まえて、並列分散環境としてGPGPUにターゲットを絞ることが今年度の計画であった。 今年度の研究計画でGPGPUにターゲットを絞るに至った原因は、MapReduceを用いてクラウド上で機械学習アルゴリズムを並列分散実行する仕組みについては、Apache Mahoutプロジェクトが従来より取り組んでおり、Apache MahoutプロジェクトとGoogleの提携でMahoutプロジェクトの実装が急速に充実したこと、MapReduceを適用可能な機械学習アルゴリズムは限られていることなどであった。そこで、本研究課題では並列分散環境としてのターゲットをGPGPUに変更し、より多用な機械学習アルゴリズムに対応することや、GPGPUを用いることでクラウドのような分散環境と比較して、極めて高速に入力データにアクセスできる効果を狙った。 しかし研究を進めるにつれ、GPGPUのように並列度が高く、データアクセスが比較的高速な環境で並列実行効果を十分に得るためには、そもそものアプリケーションが生成するデータ量が十分に膨大でなくてはならないことが予備実験から明らかになった。また、こうした膨大なデータを高速生成するアプリケーションは一定の需要があるものの、学術分野から実データにアクセスすることが極めて難しく、現実的な実験を行なうことができなかった。しかし、技術的な課題がより明確になったことから、今後は入力データの高速化にターゲットを絞り、本研究課題をさらに発展させていく予定である。
|