最終更新日:
著者のJohn Roach氏はテック系の記事を中心に執筆しているライターで、過去にナショナル・ジオグラフィックにも記事を投稿しており、2016年よりMicrosoftのブログ記事を手がけています。同氏がMicrosoftが運営するAIブログ『Microsoft The AI Blog』に投稿した記事では、Microsoft Azureに実装された自動的機械学習の機能について解説しています。
AIの学習においては、一般にヒトは学習データを成形し、そのデータの特徴を抽出するのに相応しい学習モデルを選定し、さらにディープラーニングを実行する場合には隠れ層の数を設定するハイパーパラメーターの設定というような前処理を実行しなければなりません。こうした作業はAIの学習を頻繁に行うような場合には、ヒトに多大な負担を強いることになります。ゲノム編集の研究に携わっていたMicrosoftの研究員Nicolo Fusi氏は、その研究において頻繁に使う機械学習であるCRISPR.MLの前処理を実行する負担に悩まされていました。そこで同氏は、こうした前処理を自動的に実行するAIを開発することによって、自らの負担を軽減しようと思いました。こうした経緯で開発された自動的機械学習は、ゲノム編集の研究目的に留まらず、Microsoft Azureの機械学習の機能のひとつとして実装されるに至りました。
以上の自動的機械学習は、例えば風力発電に活用されている大量の風車の動作を最適化するAIのチューニングに非常に役立ちます。というのも、各風車に実装されたAIの前処理をすべて自動化できるからです。なお、この機能の詳細はこちらから確認することができます。
John Roach
2018/9/24
Nicolo Fusi氏にとって、今日の多くのAIシステムに力を与えている機械学習のモデルを選択し、検証し、そしてチューニングするという必要不可欠ではあるが退屈なプロセスは、あまりにも時間がかかり過ぎることが明らかなのであった。
彼と彼の同僚が、ゲノム編集における最善の実験方法を決定するためにAIを活用して生物学的演算を実行するツールであるCRISPR.ML※を組み立てている時、機械学習のモデルを選択する作業は大きな負担となり、限界に達した。
※CRISPR MLとは、ゲノム編集を効率的に実行するために開発された機械学習システム。遺伝子を改変する最新技術であるゲノム編集においては、改変すべきを遺伝子をガイドRNAと呼ばれる核酸(化学物質)で特定する。このガイドRNAが特定すべき改変に関係している遺伝子部位には、多数の候補があることが一般的である。同機械学習は、こうした遺伝子の候補から改変を実行するのに有効な遺伝子を特定することを目的に開発された。
「(機械学習モデルを選択する作業は)時間の無駄だ」、と彼は言った。
そこで彼は、AI開発における一部分となっているデータの変換、機械学習モデルの選択、そしてハイパーパラメーターのチューニングを自動的に実行するAI機能を開発することを決意した。そして、彼のこの決意から期せずして新製品が作られたのだ。
9/24の月曜日、フロリダ州のオーランドで開催されたMicrosoft Igniteカンファレンスにおいて、Microsoftは以上のような自動的に機械学習を実行する機能をAzure Machine Learningサービスに組み込んだことを発表した。この機能は、現在はプレビュー機能として使用できる。
機械学習の再想像
自動的機械学習は、MicrosoftのAzure Machine Learningを情報ネットワークの隅々にまで行き渡らせることの最前線に位置づけられる。このシステムは、学習データを使って予測する機械学習モデルを組み立て訓練し、そしてあらゆる場所に実装したいと思っているすべてのヒトのためのものだ。実装される場所はクラウド、オンプレミス、そしてエッジといったものが考えられる。
また、MicrosoftはAzure Machine Learningサービスにプログラミング言語のひとつであるPythonのためのSDKを含めたことも発表した。Pythonとは、データサイエンティストのあいだではポピュラーな言語である。このSDKにはPythonの開発環境としてVisual Studio Code、PyCharm、Azure Databricks notebook、そしてJupyter Notebookが統合された。
MicrosoftのAIプラットフォームのコーポレート・ヴァイス・プレジデントであるEric Boyd氏は「わたしたちは、ユーザは自分が欲しいツールを使いたがり、またどんなフレームワークも使いたいと思っていることを聞いています。それゆえ、ユーザのためにどのようにAzure Machine Learningを届けるべきか再考したのでした」と述べている。彼はAzure Machine Learningのサービスの再創造を率いた人物でもある。彼は「わたしたちの製品は、様々な機能に焦点をあてたPythonのSDKともとにユーザのところに戻ってきたのです」とも語った。
Azure Machine Learningに新たに実装された機能には、多数の画像処理ユニットが集積したGPUを活用して機械学習モデルの組み立てと訓練を開発者が迅速に実行することを可能とするディープラーニング、そしてAzureにおいて画像認識のシナリオを実行して高速で画像を分類するFPGA※へのアクセスがある。
※powerful field programmable gate arrayの頭文字をとった単語。直訳すると「現場で書き換え可能な論理回路の多数配列」となる。FPGAとは製品の設計や用途に合わせて回路を変更できる集積回路のこと。
推奨システム
機械学習のモデルの選択と、その機械学習モデルのパフォーマンスを司るいわゆるハイパーパラメーターのチューニングを自動化することによって、Microsoftのより幅広い顧客がAI開発をできるようになる、とBoyd氏は述べている。
彼が言うには「自動化された機械学習が思いつく学習モデルにもとづいて予測したいと思って、わたしたちといっしょに働いているチームと企業がたくさんあります」とのこと。
自動的機械学習は機械学習の専門家にもアドバンテージをもたらす、とも彼は付け加えている。
「とりわけ熟練のデータサイエンティストにとっては、自動的機械学習はショートカットを提供します。彼らの多くの退屈な作業を自動化することになるのです」とも彼は語った。
自動的機械学習は、有料動画ストリーミングサービスが動画をおすすめするような仕方で、与えられたデータに対して、最善な機械学習のいわゆるパイプラインを提示する。有料動画ストリーミングサービスの新規ユーザはいつくかの動画を視聴して評価する引き換えに、次に見るべきおすすめ動画が提供される。推奨システムがユーザがどんな動画をもっとも高く評価したかについて学ぶにつれて、おすすめ動画の内容もより的を得たものとなる。
有料動画ストリーミングサービスにおける推奨システムと同様に、自動的機械学習はどのような設定にするとパイプラインが正確な予測するのか学習するために、ユーザから与えられた新規のデータセットに対して異なったハイパーパラメーターを設定した複数の機械学習モデルを実行する。このようにして得られた学習結果は次回の推奨処理に通知され、こうした学習とその結果のフィードバックが以後何百回と繰り返される。
「最終的には、ユーザは非常に良いパイプラインを得ることになります。このパイプラインを得るまでにユーザは何もしなくて良いのです。さらには、この自動的機械学習システムがユーザのデータを記録することはけっしてありません。このことによって、多くのヒトビトがこのシステムに関心を寄せているのです」と彼は言い、ユーザのデータはローカル・コンピュータか、あるいはMicrosoftのプライバシーポリシーに準拠したAzureにあるバーチャルコンピュータに留まり続けることも説明した。
ラボから製品へ
Fusi氏は、自動的機械学習の背後にある研究内容を学術論文に書いている。Microsoftの機械学習プラットフォーム・チームのグループ・プログラム・マネージャーであるVenky Veeraraghavan氏は、Azure Machine LearningチームがFusi氏が開発した自動的機械学習をAzureの機能に統合する機会が得られた時のことを語っている。
新規のテクノロジーを認識し、そのテクノロジーを使った製品をテストし、顧客とともに評価するというプロセスにおいて、Azureチームは顧客がその製品を使う新しい方法をいくつか発見してきた。
例えば、風力発電所における風車のような地理的に異なった場所に何百あるいは何千にものぼる設備を所有する顧客は、それぞれの設備に対して予測モデルをチューニングする自動的機械学習を使うことができる。こうした自動的機械学習を使わなければ、顧客は多くの設備に対して法外な費用と時間のかかる機械学習を実行しなければならない。
ほかの使用ケースとして、データサイエンティスト自らがすでに選択しチューニングした学習モデルに対して、その選択とチューニングが正しいことを確かめる手段として自動的機械学習を使うということもある。Veeraraghavan氏が言うには「自動的機械学習によって、データサイエンティストは自分が選択した学習モデルより良いものを得ることがしばしばあるのです」とのこと。
Fusi氏から見ると、以上のような自動的機械学習はAI開発におけるほとんどの退屈な部分を撲滅し、AI開発におけるほかの工学的側面に焦点を当てることを可能とするのだ。こうした工学的側面には、例えばデータ間の有益な関係を抽出するといったものがある。もちろん、自動的に機械学習している最中に休憩するというのもありだ。
「AI開発を自動的機械学習から始めることができると、この機能を実行したら後は帰宅し就寝して、そして仕事場に戻ればよい学習モデルに会えるのです」とも彼は語っている。
原文
『Microsoft unveils AI capability that automates AI development』
著者
John Roach
翻訳
吉本幸記
編集
おざけん