Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

【19-D-1】人間と機械学習のはざま:どこまでアルゴリズムに任せるか

5,512 views

Published on

Developers summit 発表資料
2016年2月19日(金)@目黒雅叙園

#devsumi

白ヤギコーポレーション
堅田洋資

白ヤギコーポレーションは自然言語処理、人工知能、データ解析を得意とする技術集団です。このような技術を中心に開発を展開していますと、これまで人間の感覚で判断するような曖昧なことを機械学習やアルゴリズムに任せられないか、という課題によく直面します。例えば、メディアがどの記事を「今日のイチ押し」に選ぶべきかや、ある記事が特定のテーマに関連しているかどうかの判断などです。今回のセッションでは自社の情報収集アプリ「カメリオ」の開発経験から、人間の「感覚」が必要な判断について、どのように機械学習やアルゴリズムを用いたか、またその結果等についてお話しできればと思います。

Published in: Data & Analytics
  • Be the first to comment

【19-D-1】人間と機械学習のはざま:どこまでアルゴリズムに任せるか

  1. 1. 人間と機械学習のはざま 2016.02
  2. 2. 自己紹介 堅田 洋資 (かただ ようすけ) 所属:白ヤギコーポレーション 職種:データサイエンティスト これまでの仕事 ● データ分析コンサルタント@某監査法人 ● アルゴリズム開発@センサースタートアップ ● コンサルタント@某会計系アドバイザリーファーム ● マーケティング@某食品メーカー
  3. 3. 「深く知ることで、生きることを豊かに」 私達のビジョン 私達のミッション 「あらゆるコンテンツを収集、解析し 本当に必要としている人に必要な形で届ける」 白ヤギコーポレーションとは
  4. 4. 白ヤギコーポレーションのメンバー アルゴリズムからAPIまで解析/実装メンバーを揃える データベース 統計解析・アルゴリズム サーバ/アプリ API 専門/背景 M. Kitano Y. Katada Y. Ito 経験・実績 20年以上の システム運用、 マネジャー経験 University of SanFransisco 修士(Analytics) Node.js, Obj-C コミュニティでは「あ の伊藤さん」 Android 開発歴4 年 インドネシアか ら日本へ ザッパラスで占いア プリ開発部門の総 責任者を務め、250 台 のサーバー で300万会員、 日3000万PVを 処理するシステム を運営 統計学、機械学習 の専門家で Python, R, SQLを 駆使して日々 大量のデータを 分析。わかりやす いデータ可視化に こだわる 元スマニューCTO サーバーから アプリ開発まででき るフルスタックエン ジニア 高専時代はロボ カップで世界3位 専攻は人工知能 (画像処理)。自動 販売機向けアプリ など、 アンドロイドを中 心にアプリ開発を 経験 筑波大博士 (自然言語処理) 白ヤギにおける 自然言語処理と 機械学習アルゴ リズムの要 最近はDeep learningにも精 をだす N. Kaneko N. Yuwono T. Morimoto 立命会館大学修士 (ネットワーク) エンタープライズ分 野でサーバー サイド開発10年以 上。PyConJP発表 やオープンソース コミュニティに出没 東京大学修士 (自然言語処理) アルゴリズム開発 から実装まで一貫し てできる エンジニア 楽天技術研究所で 自然言語処理や機 械学習を用いた研 究開発 K. Tanita Y. Watanabe コロンビア大学MBA パナソニック上海勤務、ボストン・コンサルティング・グループでマネジャーを 経て、白ヤギコーポレーションを設立。ビジネス設計、プロダクト設計を軸に チームを率いる。白ヤギ唯一の非エンジニア
  5. 5. 白ヤギコーポレーションの持つプロダクト 自然言語処理 機械学習 データ解析 あらゆるニュースを 数万のテーマに分類して お届けする情報収集アプリ キュレーションメディアや 情報収集強化ツール向け API 対記事閲覧者に特化した レコメン。「記事」「閲覧者」「表 示すべき商品/広告」の特徴を 理解して記事ごとに最適な商 品/広告を表示 ヤギレコ 白ヤギアナリティクス オンラインの行動データから IoTで収集された行動データま で、あらゆる行動データを解析 し、モデリング
  6. 6. 人工知能型情報収集アプリ:カメリオ App Store ベストアプリ受賞 iphone iphone ダイエット ・・に興味 ビジネススキル プログラミング ・・に興味 文房具 インテリア ・・に興味 ・ ・ ・ ・ ・ ・ ビジネス スキル インテリア プログラ ミング 文房具 ダイエット 数万件/日の 記事を収集 テーマに分類 各ユーザーの興味 にあわせて配信
  7. 7. アジェンダ 機械学習とは 機械学習を使って効率的・効果的にする 機械が単語を理解する
  8. 8. 挙手をお願いします! 機械学習やデータサイエンスを 仕事にされている方、挙手をお願いします!
  9. 9. オレンジとりんごをどう見分けるか? No 重さ 円周 色 1 200g 10cm 橙 2 220g 11cm 橙 3 300g 21cm 赤 4 310g 25cm 赤 果物 オレンジ オレンジ りんご りんご
  10. 10. 機械学習を使わなければ・・・ 人間がデータを見ながら、 No 重さ 円周 色 1 200g 10cm 橙 2 220g 11cm 橙 3 300g 21cm 赤 4 310g 25cm 赤 果物 オレンジ オレンジ りんご りんご 人間がパターンを考えて、プログラムを書く必要があります。 IF 重さ >= 300g AND 円周 >= 20cm THEN りんご ELSE オレンジ
  11. 11. 機械学習を使うと・・・ No 重さ 円周 色 1 200g 10cm 橙 2 220g 11cm 橙 3 300g 21cm 赤 4 310g 25cm 赤 果物 オレンジ オレンジ りんご りんご 学習 重さ 円周 り り オ オ オレンジとりんごを最もきれいに判別できるパターンを、 アルゴリズムが見つけてくれます。 IF 重さ >= 300g AND 円周 >= 20cm THEN りんご ELSE オレンジ 結果的にアルゴリズムが見つけたパターンが、以下のようになっているかもしれません。
  12. 12. 機械学習とは 「人間が明示的にパターンの認識方法を与えなくても、与えられたデー タからパターンを見つけ出すこと」 (よくある誤解) 機械学習は「魔法の杖」 (現実) 機械学習と人間のそれぞれの役割がある
  13. 13. 機械学習を使って効率的・効果的にする ~ プッシュの例 ~
  14. 14. カメリオは毎晩、こんなプッシュ通知をユーザーに送っています
  15. 15. プッシュ通知は起動人数を押し上げるための重要な施策です プッシュ通知を送らないと、 起動率(その日にアプリを使用した/ 全ユーザー)がXX%減少する どのくらいだと思いますか?
  16. 16. プッシュ通知は起動人数を押し上げるための重要な施策です プッシュ通知を送らないとと、 起動率(その日にアプリを使用した/ 全ユーザー)が10%減少する 10%ダウン! ある月の 起動率の平均
  17. 17. 以前は弊社代表がプッシュを手作業で一斉送信していました 今日は何を送ろう... やばい! もう8時過ぎてる!!
  18. 18. 従来のやり方の問題点とあるべき姿 問題点 ● 人間が手作業で送信している。 ○ 送り忘れが発生する・・・ ● 全員に同じメッセージを送信している。 ○ 興味をひかなければ開いてもらえない・・・
  19. 19. 従来のやり方の問題点とあるべき姿 あるべき姿 ● 定時になったら自動送信される。 ○ 手間の削減と送り忘れをなくすことができる! ● ユーザーごとにカスタマイズしたメッセージを送る。 ○ 興味のある内容だから開封率が上がるはず! 問題点 ● 人間が手作業で送信している。 ○ 送り忘れが発生する・・・ ● 全員に同じメッセージを送信している。 ○ 興味をひかなければ開いてもらえない・・・
  20. 20. 従来のやり方の問題点とあるべき姿 あるべき姿 ● 定時になったら自動送信される。 ○ 手間の削減と送り忘れをなくすことができる! ● ユーザーごとにカスタマイズしたメッセージを送る。 ○ 興味のある内容だから開封率が上がるはず! 機械学習の出番! 問題点 ● 人間が手作業で送信している。 ○ 送り忘れが発生する・・・ ● 全員に同じメッセージを送信している。 ○ 興味をひかなければ開いてもらえない・・・
  21. 21. 幸いにもカメリオはユーザーごとの「興味」がわかります カメリオにはいろいろなユーザーがいます。 例えば、 ● iPadとiPhoneアクセサリーとiPhoneをフォローしてる ユーザーがいたり、 ● ファッションとチョコレートをフォローしているユーザー がいたり、 ● ディープラーニングとプログラミングをフォローしている ユーザー など
  22. 22. 「テーマ」のデータを使ってユーザーをグループ分け user1 user2 user3 user N iPhone 乃木坂46 起業 自動車・・・ ・・・ 0 1 0 1 1 0 1 1 0 1 0 0 1 1 0 1 ・・・ テーマ ユーザー LDAという機械学習手法を用いてクラスタリングすると、似ているテー マを追っている人のグループができます。 そして、各グループに対して興味ある記事を配信します。 Apple製品が 大好きなグループ スタートアップに 強い興味を持つグループ 住宅、インテリア等 生活情報へ関心があるグループ ・・・
  23. 23. 人間と機械学習のはざま:アルゴリズムのチューニング ● どのようなユーザーでクラスターを作るのか? ○ どのようにノイズを減らすか? ● クラスタ数をいくつにするか? ○ クラスター数と計算時間と効果のバランスをどう取るか? プッシュ配信プッシュ配信対象 ユーザー特定 19:30??:??
  24. 24. その結果、プッシュの開封率が大幅に改善! 開封率が2倍に! マニュアル送信 検証期間 本番導入 開封率平均 (2015年8月を 100としたとき)
  25. 25. 間違い? 少しタイムラグがあったり、 びっくりするような記事が送信されたこともあります。
  26. 26. この例を通してお伝えしたかったこと • カメリオではこれまで人間が行っていたプッシュ通知を、機械学習 を用いることで自動化しました。 • 「機械学習」を入れれば、即座に問題が解決するわけではありませ ん。 • アルゴリズムのチューニング等は人間の試行錯誤がある • 時々ではあるが、びっくりするような結果もある • 機械学習を使って成果を出すためには人間の洞察が必要
  27. 27. 機械が単語を理解する ~ word2vec, カメリオの例~
  28. 28. 単語の意味ってなんだろう? は次のうちどれでしょう? ● 犬 ● 飛行機 ● ● バナナ 「 は持ち運び可能で、通話ができて、ネットも見られる。」
  29. 29. 単語の意味ってなんだろう? は次のうちどれでしょう? ● 犬 ● 飛行機 ● ● バナナ 「 は持ち運び可能で、通話ができて、ネットも見られる。」
  30. 30. 辞書は単語の意味を定義しているか • 「 は、アップル製のスマートフォンである」 • 「スマートフォンは、携帯電話機の一形態を指す用語」 • 「携帯電話は、有線電話系通信事業者による電話機を  携帯する形の移動体通信システム」 より抜粋 辞書は単語を別の単語で説明しているだけ。
  31. 31. 単語そのものは意味を持たない 単語の意味は周辺に現れる単語によって決まる 現代では「分布仮説」として知られている
  32. 32. 分布的意味表現 • 古典的なアプローチ • 単語の意味をその単語の周辺に現れるすべての単語との関連性(共起頻度)で表す • 高次元(次元≒語彙数)、スパース 分散的意味表現 • 深層学習ブームで最近人気 • 単語の意味を固定次元のベクトルで表す • 低次元( 〜 次元)、密 意味表現の つのアプローチ
  33. 33. 分布的意味表現 • 古典的なアプローチ • 単語の意味をその単語の周辺に現れるすべての単語との関連性(共起頻度)で表す • 高次元(次元≒語彙数)、スパース 分散的意味表現 • 深層学習ブームで最近人気 • 単語の意味を固定次元のベクトルで表す • 低次元( 〜 次元)、密 意味表現の つのアプローチ
  34. 34. 周辺に来る単語から単語の意味が見えてくる ヨーロッパ 屈指 の 中世 以来 の ルイジアナ州 内 で は 、 地元 の バイエルン 州 の 州都 で ブルワリー で 醸造 さ れ た ハイネケン は 、 オランダ の 青島 で 製造 が 始まっ た 、 広く 知ら れる 黒 スタウト ( グラス で 乾杯 する 音 と コーチ および 関係 者 など が 互いに 独特 な 燻製 の フレーバー を もつ を 用い た 自然 麦酒 など 独特 な バーレーワイン ( 長期 熟成 エール 野生 酵母 を 用いる こと で 、 長期 低温 醗酵 で 造ら れる 1994 年 の 酒税法 改正 を うけ 、 産地 として 広く 知ら れ て いる として 親しま れ て いる 。 の 祭典 オクトーバーフェスト で 知ら れる を できたて で 提供 する パブ 醸造 会社 及び ブランド 名 。 の ブランド 。 中国 で 最も 古い の 一種 。 具体 的 に は ポーター ) が 注が れる SE で 締め られる を かけ合う 風習 で ある 。 の スタイル の ひとつ 。 を 醸造 する ブルワリー で ある ) を 製造 ・ 販売 し て いる の 発酵 に 通常 用い られる は 、 ドイツ で もっと も 知ら れ 醸造 免許 を 取得 し て 製造 し 始め た ビール ビール ビール ビール ビール ビール ビール ビール ビール ビール ビール ビール ビール ビール ビール ?
  35. 35. 周辺に来る単語から単語の意味が見えてくる ヨーロッパ 屈指 の 中世 以来 の ルイジアナ州 内 で は 、 地元 の バイエルン 州 の 州都 で ブルワリー で 醸造 さ れ た ハイネケン は 、 オランダ の 青島 で 製造 が 始まっ た 、 広く 知ら れる 黒 スタウト ( グラス で 乾杯 する 音 と コーチ および 関係 者 など が 互いに 独特 な 燻製 の フレーバー を もつ を 用い た 自然 麦酒 など 独特 な バーレーワイン ( 長期 熟成 エール 野生 酵母 を 用いる こと で 、 長期 低温 醗酵 で 造ら れる 1994 年 の 酒税法 改正 を うけ 、 産地 として 広く 知ら れ て いる として 親しま れ て いる 。 の 祭典 オクトーバーフェスト で 知ら れる を できたて で 提供 する パブ 醸造 会社 及び ブランド 名 。 の ブランド 。 中国 で 最も 古い の 一種 。 具体 的 に は ポーター ) が 注が れる SE で 締め られる を かけ合う 風習 で ある 。 の スタイル の ひとつ 。 を 醸造 する ブルワリー で ある ) を 製造 ・ 販売 し て いる の 発酵 に 通常 用い られる は 、 ドイツ で もっと も 知ら れ 醸造 免許 を 取得 し て 製造 し 始め た ビール ビール ビール ビール ビール ビール ビール ビール ビール ビール ビール ビール ビール ビール ビール ビール
  36. 36. 周辺語の出現回数(共起頻度)によって単語の意味を表す 次の例文を使って「ビール」の意味を表すと ● 「ブルワリーで醸造されたビール」 ● 「ハイネケンはオランダのビール醸造会社」 ● 「ビールの祭典オクトーバーフェスト」 ● 「グラスで乾杯する音とともにビールが注がれる」 ビール 醸造 乾杯 会社 祭典 音 オクトーバーフェ スト オランダ グラス ハイネケン ブルワリー
  37. 37. ビール 醸造 製造 スタイル 会社 ブランド 種類 生産 メーカー 販売 工場 ワイン 生産 フランス 醸造 ブドウ 地域 ぶどう 世界 産地 会社 製造 パソコン 販売 メーカー ソフト 日本 テレビ 当時 自作 機能 発売 インストール これを使って単語同士の類似度が計算できる。 ビール ワイン ビール パソコン ワイン パソコン 似た意味の単語は周辺語も似ている コサイン類似度 一致しない場合は 0 完全に一致する場合は1
  38. 38. 分布的意味表現 • 古典的なアプローチ • 単語の意味をその単語の周辺に現れるすべての単語との関連性(共起頻度)で表す • 高次元(次元≒語彙数)、スパース 分散的意味表現 • 深層学習ブームで最近人気 • 単語の意味を固定次元のベクトルで表す • 低次元( 〜 次元)、密 意味表現の つのアプローチ
  39. 39. ベクトルを使って意味の足し算や引き算ができる king - man + woman = queen (good + best) / 2 = better MAN WOMAN QUEEN KING 単語の意味は固定長のベクトルで表される (図は2次元で可視化した様子)
  40. 40. の作り方 • すべての単語に固定長のベクトルを割り当てる 最初はランダムで初期化 • 周辺(窓幅 )の単語を予測するようにベクトルの値を学習する the cat sat on the couch 対象語 文脈語 この式を最大化する
  41. 41. 種類の意味表現の比較 分布的意味表現のメリット・デメリット • 文書検索で用いるベクトル空間モデルと相性が良い • 得られた意味表現を人間が解釈しやすい • ビール 醸造 乾杯 グラス 分散的意味表現のメリット・デメリット • アナロジーなど特定のタスクで性能が良い • ⇒分布的意味表現ではうまく表現できないような意味を扱えている • ベクトルの足し算や引き算に意味がある • 意味表現のベクトル空間について、まだよく分かっていない
  42. 42. 分散的意味表現の発展 年 • のオリジナル論文が発表。実装も公開されて ブームに 年 • 様々なタスクで共起頻度ベースの手法よりも の性能が優れてい るという調査結果が報告された • • 特定のケースで が共起頻度から計算される自己相互情報量の 行列分解と理論的に等価であることが示された 多くの成果がここ数年で起きている(まだまだ発展中)
  43. 43. カメリオにおける意味の扱い テーマ テーマの意味=関連単語との関連度 • テーマに合った記事を表示するために、 • テーマと意味的に類似している記事を検索する • 検索のためのクエリはアルゴリズムで自動生成する 検索クエリの例→ ビール ビヤ 麦芽酒 麦酒 クラフトビール ビール 醸造 麦芽 発酵 ホッ プ 酵母 ラガー 麦 酒 エール スタウト 麦 大麦 麦汁 上面発酵
  44. 44. テーマの運用 人間と機械学習のはざま ● テーマの追加 ○ 現在はリクエストに基づいて人手で対応 ○ テーマの価値判断が必要なため ● クエリ修正 ○ 一部精度の悪いクエリは人間が保守 →機械学習を使って省力化した い ● アルゴリズムの改良 ○ アルゴリズムの出力を人間が評価する ■ 個々の記事がテーマと関連しているかどうか ○ データをもとに機械で最適化
  45. 45. この例を通してお伝えしたかったこと • 単語の意味は周辺の単語によって決まる • 共起頻度をそのまま使う分布的意味表現 • のような分散的意味表現 • で得られる意味表現には面白い性質があるこ とが分かってきた • カメリオにおける意味の扱いについて • テーマの運用では機械と人間が協力している
  46. 46. まとめ 1. 機械学習は人間には見つけられない複雑なパターンも 見つけてくれ、使わない手はない。 2. しかし、機械学習を使っていくには人間の介入も必要。 3. どのように人間が介入していくかを考えることが重要。
  47. 47. ご清聴ありがとうございました
  48. 48. 参考文献
  49. 49. 参考にしたスライド資料 深層意味表現学習 リバープール大学 ボレガラ先生 単語の分散表現と構成性の計算モデルの発展 東北大学 岡崎先生 入門 〜分布仮説から まで〜 海野さん

×