Slide 1

Slide 1 text

ミクシィでの取り組み紹介 2019/07/03 株式会社ミクシィ AI・ロボット事業部 Kentaro Nakanishi

Slide 2

Slide 2 text

自己紹介 Kentaro Nakanishi @cfiken ミクシィ: AI・ロボット事業部 昨年4月まで iOS エンジニア (マッチングアプリ Poiboy) 今は AI 関連新規事業 最近は nlpaper と Kaggle と ゲームを両立させたい

Slide 3

Slide 3 text

ミクシィグループ ● XFLAG ○ モンスト ○ ファイトリーグ ● みてね ● SNS mixi ● minimo ● スマートヘルス ● ...

Slide 4

Slide 4 text

ミクシィグループでの機械学習に関する取り組み ● XFLAG での ゲームAI (強化学習など) ○ https://speakerdeck.com/mixi_engineers/machine-learning-in-fight-league ● みてねでの画像/動画処理 ○ https://mixi.connpass.com/event/115664/ ● mixi での不適切コンテンツ検出 ○ https://medium.com/mixi-developers/mixi-20190110-d1cde81cf37c ● その他いろいろ

Slide 5

Slide 5 text

AI・ロボット事業部??

Slide 6

Slide 6 text

AI・ロボット事業部での取り組み ● 雑談対話ロボットの制作 ● 特に対話部分にフォーカス ● ハードも作ります ● 新規事業としてやっているのでプロダクトについてはあ んまり話せません

Slide 7

Slide 7 text

AI・ロボット事業部での取り組み ● PO 合わせて 12人のチームで開発 ● エンジニア: 7人 ○ 1人はまだ Deep ヒヨコ (私) ○ 1人は Deep 系スーパーマン (私目線) ● 日本語対話データも自社で収集 ○ 100万オーダーのターン

Slide 8

Slide 8 text

We are hiring!!!!!!!!

Slide 9

Slide 9 text

AI・ロボット事業部での取り組み ● 対話モデル変遷の紹介 ● 今後の課題 10分しかないのでサササッと

Slide 10

Slide 10 text

対話モデル変遷の紹介

Slide 11

Slide 11 text

対話モデル変遷 ● Seq2Seq + Attention ● HRED / VHRED ● Transformer ● Alphabot ● Policy Network (Transformer) on BERT ● Policy Network XL ● ???

Slide 12

Slide 12 text

Seq2Seq + Attention 割愛

Slide 13

Slide 13 text

HRED / VHRED ● 対話として一問一答では成立しないため、過去の N回の 対話履歴を元に返答を行いたい ● HRED (Hierarchical Recurrent Encoder Decoder) ○ A. Sordoni et al., 2015 ● 長いコンテキストを入力可能に

Slide 14

Slide 14 text

HRED / VHRED ● 学習が難しい: 過学習しがち, 学習時間がかなりかかる ● VHRED は誰も学習が成功しなかった...

Slide 15

Slide 15 text

Transformer ● RNN は学習に時間がかかる/難しい ● Attention is All You Need ○ A. Vaswani et al., 2017 ● 実用レベルだったので RNN から乗り換え ● RNN と比べて圧倒的に学習が早い ○ PDCA 高速化 / GPUコスト減 ● 会話精度も体感的には向上

Slide 16

Slide 16 text

Transformer (Hierarchical) ● 対話モデルでは HRED のように Hierarchical に設計

Slide 17

Slide 17 text

Alphabot ● もっと先を見据えて良い方向へ持っていく対話をしたい ● AlphaGo の枠組みをヒントに設計 ○ N ターン先まで見て良さそうな返答を選ぶ ● Policy, Reward, Alpha の3つのネットワークからなる ○ Policy: 返答を生成 ○ Reward: 返答を評価 ○ Alpha: どの発言が将来的に良い報酬となるかを近似

Slide 18

Slide 18 text

Alphabot Policy と Reward をトレー ニングデータから学習 Policy: 発話を生成 Reward: 発話を評価 bot 同士で対話させ、 MCTS で対話を探索/評価

Slide 19

Slide 19 text

Alphabot MCTS の探索は時間がかか るので推論時は厳しい Alpha で MCTS の結果を近 似するようなモデルを学習 推論的には Policy + Alpha で出力を生成 & 決める

Slide 20

Slide 20 text

Policy Network (Transformer) on BERT ● Alphabot の枠組みは良いが、まだまだ Policy が弱い ● データ数が多くないため名詞などの知識理解が弱点 ● BERT を用いることで改善

Slide 21

Slide 21 text

Policy Network XL ● モデルが過去 N 発話分しか見ることができない ○ コンテキスト理解に限界 ○ 内容のない対話が続くと何の話か分からなくなる ● Transformer の Encoder への入力の一部を Memory Module として、対話の中で更新・保存する ● Transformer-XL から着想

Slide 22

Slide 22 text

Policy Network XL ● N (=3) 発話以前の文脈も取得可能に ● Hierarchical 構造がなくなりシンプルに ● 何を記憶するかも一緒に学習

Slide 23

Slide 23 text

その他: with Condition ● Condition として外部状況を取り込めるようなモデルを いろいろ実験中 ○ どこで入れるか (decoder, encoder, ...) ○ どのように入れるか (binary, embedding, ...) ○ 何を入れるか (ユーザ情報, 天気, 友人情報, ...)

Slide 24

Slide 24 text

??? ● 他にも色々なモデルで試行錯誤 ● 外部情報 (ユーザ情報, 今日の天気, 季節, ...) の活用 ● GAN など生成モデルアプローチも実験 ● ターン制でない対話 ● Encoder-Decoder でない枠組み㊙も試し中 ● 興味がある方は懇親会で

Slide 25

Slide 25 text

今後の課題

Slide 26

Slide 26 text

今後の課題 ● まだ課題だらけ ○ 返答生成のクオリティ ○ モデルの評価 ○ 記憶 ○ レスポンスタイム ○ 多様性 ○ 企画意図の実現 ● 興味がある方は(略)

Slide 27

Slide 27 text

ありがとうございました

Slide 28

Slide 28 text

No content