「機械学習の発展は人生を豊かにする」ヤフーの黒帯

「機械学習の発展は人生を豊かにする」ヤフーの黒帯

今回は、機械学習の分野で黒帯に認定された田頭(たがみ)さんに、機械学習の精度を高めるために行う「実験」についてや、機械学習で実現したいことなどを聞きました。 

- 「機械学習」について詳しく教えてください。機械を賢くしていく、というイメージなのでしょうか……?

はい。コンピューターに経験値を積ませて「賢く」していくような感じです。

機械学習にも、さまざまな問題設定や手法がありますが、よく例として挙げられるのがスパムメールの判定問題です。送られてきたメールの文面やタイトル、アドレスを見て、このメールはスパムかそうではないかを判定します。その結果、答えが合っていればOKですし、間違っていれば、それをフィードバックして、今度は正しい答えを予測できるように修正します。

人間が教科書の問題を解くときに、答え合わせして間違えていた場合には、正しい答えを導き出せるよう、解き方を修正するのと同じです(^^

- 機械がもっと賢くなることで、さらに人間と機械が近づいていくのでしょうか?

人間も機械も必ず間違えることがあります。今のところ、機械の方が間違えることが多いので、人の目を通さないとできないこともまだまだたくさんあるんです。
ですが、たとえば将棋や囲碁のゲームAIの場合、機械が強くなることで、対戦する人間も強くなりレベルアップできる。そのように、人間が機械から学んでいくようになっていくのかもしれないですね。

- 機械学習の面白さは、どんなところですか?

人が24時間365日ずっと判定し続けることは無理なので、そこを機械に代わりにやってもらいましょう、というのが機械学習の考え方の面白いところだと思います。

エンジニアは、1つのラクをするために別の苦労をする、ということがよくあります。たとえばプログラムを効率よく書くためにテキストエディタを細かく設定したり、集計作業が簡単にできるようにするためのプログラムを書いたり。
準備は大変でも一度やっておけば作業の自動化ができるという延長戦上に、機械学習もあるのかなと思っています。

また、機械学習にはデータ量がとても重要なので、ヤフーで国内トップクラスの大量のデータで実験できることに、まず面白さとやりがいを感じています! 

image

(学会で発表する田頭さん)

- 機械学習では、どうやってその精度を高めているのですか?

「オフライン」と「オンライン」の2種類の実験を行うことで精度を高めています。

オフライン実験は、実際のサービス上でユーザーがクリックや購入などのアクションをしたデータを集めて、私たちの手元(オフライン環境)で行うものです。
具体的には、集めたデータの中で、ユーザーにクリックされたAとクリックされなかったBのうち、クリックされたAのスコアを機械が高く設定できるかを定量的に評価します。この評価により、ユーザーにクリックされやすいものを優先して表示できるかを確認できます。
この実験の結果は、たとえば広告やYahoo!ショッピングの検索ランキング、スマホ版のYahoo! JAPANトップページに表示される「あなたへのおすすめ」欄のニュースなど、ユーザーの過去のアクションを元にオススメのものを表示するサービスに生かされています。

オンライン実験は、いわゆる「ABテスト」(※)と呼ばれるもので、すでにユーザーが使っているサービス上で行います。先ほどのオフライン実験で改善した予測のロジックを本番システムに組み込むので、実際のユーザーの反応を知ることができるんです。
ただ、その予測のロジックも、広告やユーザーへのオススメ機能など、多少興味に合わない内容が表示されたとしても、興味があるものを相対的に多く出すことで価値を生み出せるところには組み込みやすいのですが、表示した内容に間違いがあるとリスクが大きいところには組み込みにくいのが実情です。 

論文を執筆するときは、オンライン実験まで行い、実際のサービスに反映したらユーザーからの反応が良くなった、という結果まで載せることが多いです。

(※)ABテスト:
異なる2パターンのウェブページを用意し、実際にユーザーに利用してもらった効果を比較するテスト。

image

(オンライン実験とオフライン実験について説明中)

- ちなみに、実験は絶対成功するものなのですか……?

オフライン実験は成功することが多いのですが、オフラインでいい結果がでても、オンライン実験では結果が良くならないこともあります。
それどころか、オンライン実験してみたら、今までのロジックより結果が悪くなってしまった、ということも。
そして、その理由がなかなかわからない時があるんです……。

実験では、オフライン実験で成功する指標を見つけることが一番大切です。その指標は、オンライン実験で得られるクリック率や広告の売り上げなどに連動していなければなりません。
指標さえ見つかれば、あとはオフライン実験を繰り返して数値が上がったものをオンラインにも反映すればいいのですが、指標がなかなか見つからない時も多いんです。
「この指標が関係しているのではないか」とひたすら探していく地道な作業が続くときは少し大変ですね(^^

オフライン実験で見るべき指標が固まると、機械学習のサイクルを回す数が増え、やっとオンライン実験にも反映できます。
オンライン実験は、ユーザーが今使っているサービスに反映するので、ヘタなものは反映できないですからね……。

image

(机の上には執筆中の論文の山が)

- 機械学習を使って、一番実現したいことは何ですか?

機械学習の分野は研究としてはかなり進んできましたが、まだ実際のビジネスとのギャップは残っていると思っています。ヤフーのサービスにもっと取り入れて、ユーザーの課題解決、満足度を上げていきたいです。

また、機械にやってもらったほうがいいことはまだまだあると思っています。人をラクにさせるための技術なので。機械にやってもらうことで生み出せた時間で、また新しいプログラムを書けばいいんです(笑)
そして、もっとみんなが余暇の時間を楽しめるようになったり、人間として本質的なことがあるのであれば、それを大切にしてほしいなと思います。たとえば家族と過ごす時間が増えるとか(^^

もちろん、人生を豊かにするものは人それぞれだと思うのですが、1日のうちで人生を豊かにするための時間を十分に持てている人は、案外少ないと思うので……。そういうことに機械学習が役立っていけばうれしいですね。

————————————-

2015年から大学院にも通っている田頭さん。「二足のわらじがこんなに大変だとは思いませんでした(^^」とのことでした。今年は、ご自身の研究もしっかり進めていきたいそうです!