B to Cサービスの現場から考える機械学習活用 #MLCT

D490d541e3d1ab04d5203e8b210b2233?s=47 ysekky
August 26, 2014

B to Cサービスの現場から考える機械学習活用 #MLCT

D490d541e3d1ab04d5203e8b210b2233?s=128

ysekky

August 26, 2014
Tweet

Transcript

  1. 2.

    自己紹介 •  関 喜史 (Seki Yoshifumi) •  株式会社Gunosy 共同創業者 • 

    東京大学大学院博士後期課程在学中 •  専門 •  コンテンツ評価・推薦システム・ユーザ行動分析
  2. 6.

    最適に届けるということ •  スマートフォンの普及 •  新聞・雑誌・PCと全くことなるインタフェース •  タイトルの重要性 •  アクセシビリティ・回線スピード • 

    室内外問わないインターネットへの接続 •  情報流通量の増大 •  大手メディアのネット参入 •  ブログの一般コンテンツ化 •  キュレーションサイト・バイラルメディアなどの隆盛 •  興味の多様化
  3. 9.

    それぞれが得意なこと •  機械が得意なこと •  大量のデータを処理すること •  24時間働き続けること •  数値データから素早く意思決定をすること • 

    判断基準がすでに与えられている前提 •  人が得意なこと •  仮説を立てること •  人の気持ちを理解すること(対機械比) •  ニュアンスを読み取ること
  4. 10.

    B to Cサービスでの課題 •  学術研究では過去のデータをいかに再現できるかを見る •  Ex. 3年間の購買データを最初の1年のデータを使ってどれだけ再現で きたか • 

    機械学習が組み込まれる前とあとでユーザの行動は変わる •  データセットによる検証によって成果を見積もることが困難 •  精度があがっても実際にユーザに刺さるかは別問題 •  重要なのはユーザの満足度 •  全体の予測性能より、カバレッジが影響する可能性もある •  タスクによって変わる.あんまり予測できない •  ユーザ層が変わればモデルが変わる. •  サービスの成長に合わせてモデルが通用しなくなることがままある アカデミックでの評価がそのまま役に立つわけではない
  5. 12.

    1. 目標設定 •  改善目標となる数値をきめる •  DAU/WAUだったりとか •  N日後継続率だったりとか •  Click/DAUだったりとか

    •  これを決めておかないとあとからいろいろ言い訳が効く •  「いやこんな側面もあるんですよ」 •  「こういう風に見ればいいところもあります」とか •  タスクの優先順位をここから決める
  6. 13.

    2. 仮説立案 •  その目標値を上げるための仮説 •  仮説なきモデル実装はやってはいけない •  「とりあえずこのモデル精度いいらしいから試そうよ〜」 •  それはなぜ精度があがるのか?その上がる理由は自社が抱える課題と一致

    しているのか •  精度があがって目標数値は上がるのか? •  仮説が正しかった場合,どの数値にどのような変化が生まれる のか •  成果がでなかったとき施策が間違っていたのか、仮説が間違っていた のかを知らなければならない •  成功・失敗は運だが、それは結果を正しく認識して試行を繰り返してこそ 意味がある
  7. 15.

    4. モデル実装・自動化 •  ルールベース・人力で有効性が確認されたらモデル化・自動 化をすすめる •  ここでやっと機械学習感でてくる •  すべてをモデル化することを考えるのではなく効率のいいポイ ントを考える

    •  Ex. 人手を全部置き換えるのでなくある程度の絞込みを行う •  サービスの改善によって重要なポイントが変わってくるため, それに対応しやすい形が理想 •  複雑なモデルはサービスの変化に対してついていけるのか? •  この改善ポイントは複雑なモデルを組む価値はあるか •  基本的にモデルの解釈性と精度はトレードオフだったりする •  個人的にはなるだけ解釈性を高くしておきたいと考えている
  8. 16.

    進め方 •  やる/やらないのジャッジはほとんどない •  小規模にやってみて数値をみながら拡大していく •  そのためにも事前の目標数値設計が重要 •  どれぐらい上がるかとかは正直わかんないので、どの数値を上げたいかぐら いの見積もり

    •  どれをやるかを考えている暇があったら全部やってみようぜという感じ •  施策が当たるか当たらないかは運。結果から学ぶ。 •  技術ありきでは考えない •  ルールや人手であってもよくなるならやる •  スケールするためには機械学習等が必要なのでやる
  9. 17.

    リスク管理 •  ユーザが変わればモデルも変わる •  成長するサービスが立ち向かわなければいけない課題 •  成功体験にとらわれ過ぎないことが大事 •  これは機械も人間も一緒 • 

    モデルの導入によって大きく下がったりする •  教師データ不足とかカバレッジ不足 •  これまでと体験が変わること •  事前にはなかなか予測しにくい •  下がることがあることを踏まえてテストを実施する •  既存の体験を大きく変わるような変更は避ける •  デザインなどもそうだが,機械学習の場合はコントロールしにくいので注 意する必要がある
  10. 18.

    学術知識の利活用 •  いま何ができるようになっているかを知る •  どのような考え方が成功しているかを知る •  流行りの勝ちパターンがある. •  そのパターンは転用できることが多い • 

    手法の精度や結果より,なぜその手法を用いることの優位性 があるのかに注目する •  その優位性が自分のサービスの課題を解決するものなのかを考える •  そのモデルによってデータをどのように解釈することが可能になったの か? •  これを理解してないと活用するのは難しい •  機械学習応用系の学会は参考になるのが多い •  WWW, KDD, WSDMなど •  自分で使ったことがないと活用イメージわかない
  11. 19.

    まとめ •  B to C向けの機械学習活用は学術研究とのギャップが大きい •  B to Cは精度が目的ではなく、ユーザの満足度が目的 • 

    PrecisionやRecallではその結果は測れない •  上記指標でみているのは再現度 •  既存の体験 •  リスクを把握した上で実サービス上で試していく姿勢が大事 •  実装コストが高いことが多いため、仮説ベースからルールや人力運用を 経由するのがよいと考える •  リーンスタートアップにおけるMVP的な考え方 •  ルールや人力運用が考慮できない場合はそもそもなにを目的として機 械学習を活用したいのかを考えるべき •  論文などを通してデータ活用の考え方は学ぶべき •  実務活用するために普段からいろんな手法を使っていること が重要
  12. 20.

    機械学習 × KPI •  機械学習だからって特別なことはそうない •  アカデミック側の評価基準にとらわれないことが大事 •  大事なのはユーザをよりよくすること • 

    仮説をもってKPIを設計して取り組む •  実行する前にユーザの行動がどうなるか想像できるかどうかが重要 •  サービスの拡大に対して断続的な改善を行う方法はまだ未知 かも •  新規ユーザの動向にはしっかり目を配る •  獲得チャネルとか、広告の訴求によって流入ユーザの行動傾向は大き く変わる.