マイクロソフトの機械学習~20 年の歴史

[2014 年 7 月 8 日]

あまり知られていないかもしれませんが、マイクロソフトには機械学習システム構築と本番環境での利用における 20年以上の歴史があります。この歴史は、最近流行っているビッグデータと深層学習の歴史よりもはるかに長いのです。機械学習を利用するにあたっては、いままで機械学習の分野で利用されてきた様々な技術について知識を深めておくことが役に立ちます。

マイクロソフトにおける機械学習の歴史は1992年に始まりました。まず、ベイジアンネットワーク、言語モデリング、および音声認識で研究と活用を始めました。 1993年までに、Eric HorvitzDavid HeckermanJack Breeseが Microsoft Research に意思決定理論グループ (Decision Theory Group)を開設し、XD Huang音声認識グループを開設しました。 90年代には、テキストの分類電子メールの優先順位付けなどの多くの課題が、線形分類ベイジアンネットワークの組み合わせによって解決できることがわかりました。その作業により、最初のコンテンツベースのスパム検出器やその他のプロトタイプや製品が生まれました。

そのうち、マイクロソフト製品の特定の課題解決をするだけではなく、アルゴリズム自体を直接お客様の手に渡すことを考えるようになりました。お客様が直接利用可能なツールを作成するには、アルゴリズムに加えて、エンドツーエンドのユーザーエクスペリエンスを検討する必要があります。お客様にリコメンドサービスを提供するために、Commerce Server製品に予測分析機能を追加し、 2005年にSQL Server のデータマイニング製品を出荷しました。これにより、お客様はSQL Server製品の上に分析機能を組み込むことができるようになったのです。

アルゴリズムの高度化に伴い、情報検索、コンピュータビジョン、音声認識など、機械学習に関連する分野でのより難しい課題を解決し始めました。機械学習とこれらの分野における経験値の融合により、実質的により大きな進歩を遂げました。たとえば、 Jamie ShottonAntonio Criminisiらは、人間の姿勢推定医用画像の両方について、決定木を用いてピクセル単位の分類を行いました。 Li DengFrank SeideDong Yuらは音声認識に深層学習技術を適用しました。

既存の問題に対するより洗練されたアルゴリズムに加えて、マイクロソフトでは機械学習のための新しいフレームワークを模索してきました。 機械学習の最も一般的なフレームワークは分類回帰です。これらのフレームワークでは、機械学習は、データのベクトルからラベル(分類)または値(回帰)へのマッピングを学習します。しかし、機械学習はラベルや値を生成するよりもはるかに多くを行うことができます。 「構造予測」と呼ばれる機械学習の分野があります。これの初期の例は、機械学習が項目のランク付けされたリストを生成する「ランキング学習」でした(これはBingにとって非常に便利です)。もう1つの興味深い枠組みは、広告システムのモデル化に使用した因果モデル構築です。さらに別のフレームワークは、(モデルではなく)データからプログラムを直接生成しています。

また、最近のMicrosoft Azure Machine Leaningはとても面白い仕組みです。 Azure Machine Learningは、特定のデータ管理プラットフォーム(SQLなど)に限定されるのではなく、クラウドに展開できるモデルを作成します。 機械学習を使ってクラウドサービスを作成すると、機械学習を特定のアプリケーションに変換する際の手間が軽減されます。マイクロソフトにおけるすべての経験とアルゴリズムをAzure Machine Learning製品に取り込み、お客様が創造性を利用して機械学習ベース製品を構築できるようにしたいと考えています。

 

この文章は以下の原文を要約したものです: