Webでの強化学習適用のノウハウについて

 Webでの強化学習適用のノウハウについて

2018/11/24 第30回 Machine Learning 15minutes!での、蓑田の講演資料になります

Eea9a05e6e222a3d50c73f54a49fadf4?s=128

Recruit Technologies

November 24, 2018
Tweet

Transcript

  1. Webでの強化学習適用のノウハウについて 株式会社リクルートテクノロジーズ ITエンジニアリング本部 データテクノロジーラボ部 蓑田 和麻

  2. 2 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    自己紹介 趣味etc 学歴 略歴 氏名 蓑田 和麻 (ミノダ カズマ) 慶應義塾大学院 理工学研究科 応用統計学専攻 新卒入社3年目。 リクルートホールディングスに新卒入社し、 リクルートテクノロジーズ出向。 3ヶ月のサービス開発研修後、現プロダクト開発グループに配属 され、機械学習を活用したAPI開発、導入・推進業務を行う。 ( https://a3rt.recruit-tech.co.jp/) その一環で現在、強化学習の研究開発を行う。 人狼 麻雀 出典:https://www.nikkei.com/article/DGXMZO32538030T00C18A7000000/ https://www.nikkeibp.co.jp/atclpubmkt/book/18/270260/
  3. 3 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    1 3 本日の内容 リクルートの紹介 リクルートでの強化学習活用方針 4 webでの強化学習の難しさと工夫 2 強化学習とは(DQN)
  4. 4 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    リクルートの紹介
  5. 5 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    リクルートのビジネスモデル さまざまなドメインでマッチングモデルに基づいたビジネスを展開。 Matching Business HR Bridal Group Buying Used Cars Travel Real Estate Beauty Gourmet Social Games E-Commerce Ad Network New Business Consumers Enterprise
  6. 6 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    リクルートの事業領域 「選択」をサポートするような情報サービスを展開 Life event area Lifestyle Area Travel Business support Lifestyle Health & Beauty Job Hunt Marriage Job Change Home Purchase Car Purchase Child Birth Education
  7. 7 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    組織体制 7 ITソリューション統括部 人材領域データテクノ ロジー用途開拓G 販促領域データテクノ ロジー用途開拓G 人材領域を軸とした テクノロジーの用途開拓 販促領域を軸とした テクノロジーの用途開拓 データテクノロジー プロダクト開発グループ データテクノロジー インフラグループ データ解析基盤の 構築・運用、 高度演算環境の検証 データテクノロジーラボ部 ソリューションを軸とし た各種R&D系 プロダクトの開発
  8. 8 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    組織ミッション Research & Development データテクノロジーを発見・検証・開発し、 ビジネス活用用途を開拓する。
  9. 9 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    A3RTの誕生 リクルートの機械学習によるソリューション活用の敷居を下げ、 事業のサービスの価値を高めるための汎用的な機械学習APIサービス群 https://a3rt.recruit-tech.co.jp/ ↑検索して使ってみてください!!
  10. 10 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    強化学習とは(DQNを中心に)
  11. 11 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    強化学習の例 Deep mindの Alpha GO 出典:http://blog.brainpad.co.jp/entry/2017/02/24/121500
  12. 12 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    強化学習の例(2) 出典:https://gigazine.net/news/20160310-google-deep-learning-robot/
  13. 13 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    強化学習とは 【強化学習】人間がHowを教えなくても問題の解決 策を見出す事ができる手法 *https://deepmind.com/about/ 走る 飛ぶ 攻撃する ゴール ゴール時のみに報酬を与えることで、 どのプロセスが良かったか評価できる!! 出典: https://www.silhouette-illust.com/
  14. 14 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    〜DQN(Deep Q-Network)〜 【Q学習】 状態sで行動aを行った時の、将来の収益 を推定する関数Qを求める 状態s/行動a 走る 飛ぶ 攻撃する 目の前に敵がいる 0 6 4 目の前に敵がいない 8 2 0 こんな単純なゲームであれば良いが、世の中のタスクはもっと複雑 →→Deep Learningで関数Qを近似(Deep Q-Network) ある状態において、各行動への良さ(Q値)の度合い
  15. 15 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    リクルートでの強化学習の活用 報酬:最終スコア アクション:どこに落とすか 状態:今の盤面 報酬:勝敗 アクション:次どこに置くか 状態:今の盤面 報酬:コンバージョン アクション:次どこに遷移する(させる)か 状態:今のページ + 遷移してきたページ) ゲーム Web 出典:https://markezine.jp/article/detail/25366 http://www.geocities.jp/hag167/rev237.htm
  16. 16 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    強化学習のメリット 2018/11/30 Copyright(C)2016 Recruit Technologies Co.,Ltd. All rights reserved 16 教師あり学習 強化学習 プロセスの 学習 × 教師ラベルの直接的な学習しか できない。 ◎ 将来的なゴールを考慮したプロセ スの学習が1つのモデルで可能。 目的変数の 設計 △ 目的変数を柔軟に設計できない。 ◯ CVのページが+100点、詳細が +50、離脱が-30のように柔軟な設 計が可能。 リアルタイ ム性 △ 事前に学習されたロジックに依 存。 ◦ ・事前学習 + リアルタイ ムな学習が可能 ・別行動の探索も可能 将来的なゴールを考慮したプロセスの評価が最大のメリット。
  17. 17 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    リクルートでの強化学習活用方針
  18. 18 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    リクルートでの強化学習活用方針 1.リアルタイムUX ユーザーの状態をリアルタイムに捉え、最適なアクションを導く 2.サイト改善提案 現在のサイト構成から、どういう導線があればCVにつながりやすくなるのかを提案する 「Web×強化学習」でできること
  19. 19 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    リクルートでの強化学習活用方針 1.リアルタイムUX ユーザーの状態をリアルタイムに捉え、最適なアクションを導く 2.サイト改善提案 現在のサイト構成から、どういう導線があればCVにつながりやすくなるのかを提案する 「Web×強化学習」でできること
  20. 20 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    某サイトでの活用法 深層強化学習を用いて、膨大なユーザの状態から 最適なアクションを導出。 状態 ・ ユーザの流入経路 ・ 過去に辿ってきたページ ・ 過去に閲覧した詳細ページのタグ ・ ユーザのログイン有無 など様々 → ユーザのとりうる状態は 2173 通り。 アクション ・ 検索軸 47パターン 「深層強化学習エンジンforte× ライブデータプラットフォーム hacci」 により、膨大なパターンの状態から最適なアクションを、リア ルタイムに導出することが可能に。 ※ hacciとはリクルートで内製開発しているアクセスログをリアルタイムで流す仕組み
  21. 21 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    某サイトでの活用法 イメージ図 ・ 検索項目が多すぎて利用率 が低い ・ 検索項目なしで検索すると 一覧に多く出るので迷ってし まう ・リアルタイムでユーザーの 状態を捉え最適な検索軸をお すすめして上げる ・ 迷いにくくなり、ユーザービリティ向 上に繋がる Before After
  22. 22 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    リクルートでの強化学習活用方針 1.リアルタイムUX ユーザーの状態をリアルタイムに捉え、最適なアクションを導く 2.サイト改善提案 現在のサイト構成から、どういう導線があればCVにつながりやすくなるのかを提案する 「Web×強化学習」でできること
  23. 23 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    某サイトデータの応用結果(学習結果)  あるユーザにおける実際のアクションと学習で導かれた行動 ※ 5遷移目〜10遷移目だけを表示 ※ Q値 = 現在の状態に対して、ある特定のアクションの価値を表す値 ※ 現在の状態が同じでも、過去の遷移パターンによって、強化学習のアウトプットは異なる。 遷移数 実際の行動 強化学習的に最適な行動 ページ C1 ページ C2 ページC3 ページ C5 ページC6 ページX1 ページ X2 ページ X3 ページX4 ページ X5 Q = 0.5415 Q = 0.4906 Q = 0.5817 Q = 0.0268 Q = 0.6905 Q = 0.6905 Q = 0.8179 Q = 1.0833 Q = 0.6945
  24. 24 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    3. 某サイトデータの応用結果(学習結果) 遷移回数 CVをしなかったAさんの行動遷移  各状態のQ値の遷移 サイト構成上、訪問不可能ページ サイト構成上、訪問可能なページ 訪問不可能で、CVページを除いたページ 訪問可能で、CVページを除いたページ 実際の行動 ・黄 > 赤 : サイト改善の余地がある。 → 強化学習を使えば、黄 = 赤 にすることが可能。 ・青 >> 赤:このユーザはサイトをうまく使えていない。 → 強化学習を使えば、青→赤に近づけることが可能。 Q値 考察
  25. 25 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    Webでの強化学習の難しさと工夫
  26. 26 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    Webでの強化学習活用の難しさ 1. オンライン学習が困難 普通、強化学習はgreedyにアクションを選択しFBを得られるが、web施策の場合実際に組み 込まないとできない。リクルートのサイトに組み込むのはある程度見込みがないと厳しい。 2. 状態の定義が困難 囲碁やオセロの場合、盤面情報が全てだが、webの場合ログから特徴量設計(ドメイン知識必 要)が必要となる。 → DNNだからとりあえず全部入れとけだと、カテゴリカル変数も多いので、経験上うまくい かない。 「Web×強化学習」の難しさ
  27. 27 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    Webでの強化学習活用の難しさ 3. アクションが単一でない 例えば、検索軸をおすすめにする場合、大抵複数の検索軸を同時に入れる。(単一のアクショ ンでない) 全パターンを網羅しようとするとアクションの次元爆発が起きる。 4. 複雑なアーキテクチャー リアルタイムでサイトログをAPIに飛ばす必要がある。(predictに必要。) 「Web×強化学習」の難しさ
  28. 28 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    Webでの強化学習活用の工夫 1. オンライン学習が困難 【工夫】オフライン強化学習の活用。過去のログを活用しオフライン学 習しベースモデルとする。そこからサイトに組み込み「探索」を行う 2. 状態の定義が困難 【工夫】地道に特徴量選定をしていくしかない
  29. 29 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    工夫 1. アクションが単一でない 【工夫】DDPG(Actor-Critic)の利用。アクションに連続値を取ること ができる 2. 複雑なアーキテクチャー 【工夫】クラウド(GCP)のマネージドサービスを上手く活用
  30. 30 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    実際のアーキテクチャー forte Container Engine Node Pool エンドユーザー Cloud PUB/S UB 事業側 Master Node Pool Redis Redis Cluster (ユーザ情報用) Redis Redis master master master Redis slave Redis slave Redis slave Redis マスタデータ用 DataStoreに取り込み DataStore Dataflow Redisにない場合取得 forteからpull forte jalan Pod Autoscaling Autoscaling forte Predict App Pod Autoscaling sys_uu_idで リクエスト Model GCS ModelデータをMount 強化学習Model作成 Modelデータを UPDATE Node PoolのAuto ScalingはMIN4 MAX10 1Nodeのスペックは8coreの7.2G Node Poolの固定6台 1Nodeのスペックは2coreの13G
  31. 31 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    まとめ 1.Webでの強化学習適用には様々な障壁が 一度しくみを組むことでノウハウの横展開は可能 2.状態、アクション、報酬の設計 ここはビジネスセンスが重要 3.手法選定 DQN、Actor-Critic等上手く設計に合わせて選定していくことが重要
  32. 32 Copyright © Recruit Technologies Co., Ltd. All Rights Reserved.

    最後に 我々は新しいアイディアを日々考えて います。 是非、ご興味あれば協業等できればと 思いますのでお声掛けください。 連絡先:k_minoda@r.recruit.co.jp Facebook:kazuma minoda(蓑田 和麻)