コンテンツに移動

専門家に聞く: 機械学習についての Q&A

機械学習と聞くと、未来の話のように感じる方も多いでしょう。しかし最近では、囲碁でプロ棋士と対局する Google のコンピュータや、自動返信を作成する Inbox by Gmail など、実際の生活に使われる例が増えています。どの話も面白そうですよね。でも、そもそも機械学習とは何なのか、そして、それにどのような意義があるのでしょうか。また、写真に映った犬を識別するのは意外と難しいのですが、それを聞いて不思議に思われる方もいるでしょう。そこで、Google で機械学習について研究する科学者マヤ グプタ氏にインタビューし、わかりやすく説明してもらいました。ぜひご覧ください。

まず基本的なことからお聞きします。機械学習とは何でしょうか?

機械学習では多数の事例を収集し、そうした事例を説明するパターンを見つけ出します。そのパターンを使って新しい事例について予測します。

たとえば、おすすめの映画を例に説明しましょう。10 億人の人々にお気に入りの映画を 10 本ずつ挙げてもらうとします。コンピュータはこの膨大な事例を使って、人々に好まれる映画に共通の特徴を学習し、それらの事例を説明するパターンを見つけ出します。たとえば、「ホラー映画を好きな人は一般に恋愛映画は好きではないが、同じ俳優が出演している映画なら好きになる」などです。コンピュータにジャック ニコルソン主演のホラー映画「シャイニング」を好きだと伝えると、コンピュータは、そのユーザーはジャック ニコルソン主演のロマンチック コメディ「恋愛適齢期」も気に入るのではないか、YouTube で他にどんな動画をすすめればよいか、推測することができるのです。

何となくですが、わかった気がします。実際にはどのような仕組みなのですか?

実際には、機械学習のパターンはとても複雑なため、言葉では説明しにくいのです。たとえば、Google フォトでは、自分の持っている写真を検索して、犬が映った写真を見つけることができます。それはどのような仕組みだと思いますか?まず、「dog(犬)」という名前の付いた写真の例を大量に収集します(もちろんインターネットを使います)。「cat(猫)」という名前や、その他無数の名前の写真も収集しますが、ここですべてを挙げるのは止めておきましょう(笑)。

次に、コンピュータは犬や猫の写真かどうか推測するのに使えるピクセルのパターンや、色のパターンを探します。まず、犬を識別するのに適したパターンをランダムに推測し、次に犬のサンプル画像を見て、現在のパターンで正しく識別できるかどうか調べます。犬の写真を猫だと誤って認識した場合は、使っているパターンをわずかに調整します。さらに猫の画像を見て、再びパターンを調整し、猫だと正しく識別できるようにします。この手順を 10 億回ほど繰り返します。サンプル画像を見て、うまく識別できない場合は、正しく識別できるようにパターンを調整する、という手順です。

最終的に、これらのパターンから「ディープ ニューラル ネットワーク」などの機械学習モデルが形成されます。犬や猫や消防士や、その他のさまざまなものをほとんど正しく識別できるモデルです。

何だか、近未来的ですね。現在、機械学習を使っている Google のサービスは他にありますか?

Google は、機械学習を使って新しい試みをたくさん行っています。たとえば Google 翻訳では、ある言語の道路標識やメニューの写真を取り込み、写真に映っている語句を識別して、ユーザーが使っている言語にリアルタイムで翻訳してしまいます。魔法みたいですよね。

また、Google 翻訳に翻訳したいフレーズを話しかけると、機械学習の音声認識が機能します。音声認識は他にもさまざまなサービスで使われていますよ。Google アプリでは音声で検索できますし、YouTube 動画の検索にも導入されています。

標識やメニューにカメラを向けるだけで、すぐに翻訳が表示されます。インターネット接続も必要ありません。 *Word Lens は英語と日本語、その他 25 以上の言語との間でご利用いただけます。
異なる言語を話す人と会話できます。
キーボードで入力できない文字や単語を簡単に手書きできます。
翻訳したい語句を入力するだけです。

なぜ Google は機械学習を重視しているのですか?

機械学習は新しいものではなく、18 世紀の統計学にルーツがあります。しかしご存知のように、注目を集めるようになったのは最近のことで、それには 3 つの理由があります。

まず、写真の中から犬を探すというのは、人間にとっては簡単なことです。しかし、コンピュータに正確な予測方法を教えるには、膨大な数の事例が必要です。インターネットでさまざまなことが行われている現在では、コンピュータが学習できる事例が豊富に手に入るようになりました。たとえば最近では、世界中のあらゆる言語のウェブサイトに「dog(犬)」という名前の付いた写真が無数に存在します。

しかし、事例が多くあるだけでは十分ではありません。たくさんの犬の写真をウェブカメラに見せるだけで、何かを学習させるのは無理な話です。コンピュータには学習プログラムが必要なのです。近年、Google が参加するこの分野では、機械学習プログラムの複雑性や能力の向上において、大きな前進がありました。

しかし、私たちのプログラムは完璧ではなく、コンピュータの処理能力も不十分です。そのため、大量の事例を何度も調べて、プログラムの問題をいくつも調整し、改良していく必要があります。それには膨大な計算能力と高度な並列処理が必要です。そして、ソフトウェアやハードウェアの発展により、それも可能になってきました。

現時点ではコンピュータでは不可能だけれど、近い将来、機械学習によって可能になることはありますか?

実はつい最近まで、音声認識では、電話ごしにクレジット カード番号を読み上げたとき、0~9 という 10 種類の数字を認識することすら難しかったのです。音声認識はここ 5 年ほどで、高度な機械学習を使用して驚くほど進化しました。今では Google 検索に使えるようになり、さらに改良され、高速になりつつあります。

個人的には、機械学習のおかげで、皆がおしゃれになるのではないかと考えています。個人的に私は試着が嫌いなので、自分に似合うジーンズのブランドを見つけると、そのブランドのものばかり 5 本も買ってしまいます。機械学習なら、さまざまな人に似合うブランドの例を参考に、自分に似合う他のブランドをおすすめしてくれるかもしれません。これは Google の仕事の領域からは少し外れるので、だれかが取り組んでくれないかと思っているんですよ。

10 年後、機械学習はどのようになっているでしょうか?

この分野全体で追究しているのは、より少ない事例から、より速く学習する方法です。その手法の 1 つで、Google が力を入れているのは、コンピュータにもっと「常識」を与えることです。専門用語では「正則化(regularization)」と呼ばれています。

コンピュータにとっての「常識」とはどのようなものだと思いますか?一般的には、「事例が少ししか変化していない場合、コンピュータは判断を完全に変えるべきではない」ということです。たとえば、写真の中で犬がカウボーイ ハットをかぶっていても、犬であることに変わりはありませんよね。

このように重要性が低く小さな変化には反応しないようプログラムを組むことで、こうした常識を機械学習プログラムで強化できるのです。言うは易しですが、方法を間違えると、コンピュータは重要な変化にも反応しなくなってしまいます。その辺りのバランスが難しく、まだ研究の途上にあります。

機械学習の一番の魅力は何ですか?研究のモチベーションは何でしょうか?

私はシアトルで育ったので、ルイス クラーク探検隊など、アメリカ西部の初期の探検家について詳しく習いました。機械学習の研究には、同じような探究の精神があります。最初は物事をよく観察し、それから素晴らしい未来にたどり着けるよう、道のりを綿密に計画するのです。

Google の機械学習について、広告のキャッチ フレーズを考えてもらえますか?

「最初にうまくいかなかったら、あと 10 億回試してみよう」

トップへ戻る