Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
対話botの技術
Search
Kazuya Gokita
September 02, 2016
Technology
1
2.5k
対話botの技術
Kazuya Gokita
September 02, 2016
Tweet
Share
Other Decks in Technology
See All in Technology
学術機関におけるID連携とOpenID Connect
fujie
0
240
Cloud Run と GitHub Template Repository による軽量なアプリケーションプラットフォーム/ #nikkei_tech_talk
nikkei_engineer_recruiting
0
110
「認証認可」という体験をデザインする ~Nekko Cloud認証認可基盤計画
logica0419
2
440
JTCや セキュリティチェックリストが夢の跡
nikinusu
0
620
OR学会2024秋_短期収益と将来のオフ方策評価性能を考慮したクーポン割当方策混合比の決定
recruitengineers
PRO
4
460
ネットワークだけ隔離されたコンテナ作成デモ / Kichijoji.pm36
tenforward
1
230
より快適なエラーログ監視を目指して
leveragestech
4
1.4k
自作Cコンパイラ 8時間の奮闘
soukouki
0
850
Analytics-Backed App Widget Development - Served with Jetpack Glance
miyabigouji
0
600
Fediverse Discovery Providers overview
andypiper
0
170
JEP 480: Structured Concurrency
aya_ebata
0
130
eBPFのこれまでとこれから
yutarohayakawa
10
3.2k
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
36
7k
Optimizing for Happiness
mojombo
375
69k
Being A Developer After 40
akosma
84
590k
The Cost Of JavaScript in 2023
addyosmani
42
5.7k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
326
21k
Gamification - CAS2011
davidbonilla
79
5k
Atom: Resistance is Futile
akmur
261
25k
The Power of CSS Pseudo Elements
geoffreycrofte
71
5.3k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
43
2k
Building a Modern Day E-commerce SEO Strategy
aleyda
36
6.8k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
The World Runs on Bad Software
bkeepers
PRO
64
11k
Transcript
ରCPUͷٕज़ גࣜձࣾαΪΟ ࣥߦһ ޒా
Usagee Inc. (株)ウサギィ 画像認識・自然言語処理 Webアプリ・スマホアプリ開発 機械学習/データマイニング など DeNA「ビッダーズプログラミングコンテスト2005」優秀賞 楽天・早稲田大学「最強のAIを作ろう!」(2011) 優勝
HTML5 Japan Cup(2014) 協賛企業・後援団体賞 2部門受賞 『Microsoft Innovation Award 2015』優秀賞
Usagee Inc. 自己紹介 機械学習(画像認識・自然言語処理) Webアプリ・デザイン スマホアプリ開発 汎用AI など (株)ウサギィ 執行役員 WBAI 正会員 & WBA若手の会
人工知能アドベントカレンダーを書いた 汎用AIの本 9月下旬発売予定ɹ✌
Usagee Inc. 画像認識: 食べ物 IUUQVTBHFFDPKQDPNQVUFSWJTJPO
Usagee Inc. NLP: 感情推定 IUUQVTBHFFDPKQOMQ •短文でも解析可能 •ネットスラング対応 •高速な解析 •評判分析などの応用
ձCPU ࣗવจͰਓؒͱର͢Δ"*
Usagee Inc. 会話botの(個人的な)分類 • FAQ型 • 問い合わせ対応などの特定タスクに特化した応答をする • 過去の質問に似た(関連した)回答またはシナリオ等を探してくる •
こちらのほうが研究が進んでいると思う • 雑談型 • どんなジャンルの会話にも広く浅く対応しないといけない • 相手が何を言うのか予想できない、スラングにも対応しないと いけない • 「口調」や「一人称」や「語尾」の指定がある場合も
Usagee Inc. 会話botの分類 • FAQ型 • 問い合わせ対応などの特定タスクに特化した応答をする • 過去の質問に似た(関連した)回答またはシナリオ等を探してくる •
こちらのほうが研究が進んでいると思う • 雑談型 • どんなジャンルの会話にも広く浅く対応しないといけない • 相手が何を言うのか予想できない、スラングにも対応しないと いけない • 「口調」や「一人称」や「語尾」の指定がある場合も ࠓͷ
Usagee Inc. 実行例 ZPV͔͍͍ͬ͜ͷ͔ʂʁ͜ΕͬͯXXX CPU͍ʂʂʂ ZPVঁͬͯා͍Ͱ͢ʜ ͱΊͬͨʹ͍Θͳ͍͚Ͳා͔ͬͨʜ CPUͳΜͰʁʁ ZPVΞΠεΫϦʔϜͱ͔͋Δͷ͔ CPUͦΕ͋Δ
ZPV5*.&Ͱ͔͢dʁʁָ͠ΜͰ͖͍ͯͩ͘͞dὑ౦ ژདྷ·͔͢ʁ CPUͦΕͭΒ͍ʜʢ̩Ч̩ʣ ZPVؼɻ CPU͓͔ͭΕ͞·Ͱ͢Α͓͒ʂ ZPVૣى͖͢ΔΜͰ৸·͢ɻ͓͢Έͳ͍͞ CPU͓͢ ZPV·ͨΓΐͶὑ CPUΓ͍ͨὑ ZPV͍͍͑͑ ?? ͥͻͥͻʂྑ͘͠·͠ΐ CPU 㱼ʆ ʎͪ͜Βͦ͋͜Γ͕ͱ͏͍͟͝·͢ΑΖ ͓͘͠Ͷ͕͍͠·͢ Deep Learning ですべて自動で人間との対話を学習 明示的に教えなくても口語表現やアスキーアートに対応
͘͠Έ %FFQ-FBSOJOH -45. ϕʔε ॾʑͷ
Usagee Inc. LSTM Recurrent Neural Network を改良して長期の依存関係も扱えるよう にしたもの IUUQDPMBIHJUIVCJPQPTUT6OEFSTUBOEJOH-45.T
Usagee Inc. Sequence to Sequence (seq2seq) • もともと英仏翻訳のために出来たアルゴリズム • 単語ごとに入力(A,
B, C)して最後に <EOS> を入力 • すると翻訳された文章(W, X, Y, Z)が出てくる ձʹ͑ΔͷͰʁ -FBSOJOH1ISBTF3FQSFTFOUBUJPOTVTJOH3//&ODPEFS%FDPEFSGPS4UBUJTUJDBM.BDIJOF5SBOTMBUJPO
Usagee Inc. A Neural Conversational Model (社内ではNCMと言っている) .BDIJOFIJ )VNBOIFMMP .BDIJOFDPVMEZPVQMFBTFMFUNFLOPXXIBUBSFUIFPQFSBUJOH
TZTUFNTZPVBSFVTJOH )VNBOJBNVTJOHMJOVY .BDIJOFPLJUXBTJOUIFTTMWQOPOXIJDIZPVTUBUFEJUXBT CSPLFO .BDIJOFQMFBTFDIFDLJGZPVBSFMPHHFEJOUPDPSQOFUXPSL .BDIJOFXIBUJTUIFFSSPSUIBUZPVBSFSVOOJOHQMFBTF ҎԼུ
Usagee Inc. ダメでした • 日本語特有の問題(形態素解析など) • 雑談特有の問題(ネットスラング、アスキーアート、絵文字類) • 画一的でないいろいろなことを話して欲しい(雑談なので) •
性格みたいなものがないのでキャラ付けしたい
Usagee Inc. 解決策 • 日本語特有の問題(形態素解析など) →MeCab+独自の辞書 • 雑談特有の問題(ネットスラング、アスキーアート、絵文字類) →Word2Vecとseq2seq •
画一的でないいろいろなことを話して欲しい(雑談なので) →けっこう難しい • 性格みたいなものがないのでキャラ付けしたい →かなり難しい
Usagee Inc. 会話の多様性問題 • 一見上手くいったように見えるが、語彙がかなり減る • 「ありがとう」「わかる」「それな」「うん」「ですよね」など ばかりになってオタクみたいな話し方になる • 原因:
とりあえず無難な返しをしておけばコストが減るため in->ੋඇָ͠ΜͰ͚ͨΒͱࢥ͍·͢ʂ out<-͋Γ͕ͱ͏͍͟͝·͢ʂʂʂʂ in->৺த͍ͨ͝͠͠·͢…ָ͠ΜͰ͖͍ͯͩ͘͞Ͷʔʂ(^-^)/ out<-͋Γ͕ͱ͏͍͟͝·͢ʂʂʂʂ in->͖ͬ͞Ͳ͏ʙΑΖ͓͘͠ئ͍͠·͢ʂ out<-͋Γ͕ͱ͏͍͟͝·͢ʂ ੲͷόʔδϣϯ
Usagee Inc. A Diversity-Promoting Objective Function for Neural Conversation Models
• MMI-bidiを使って多様性を上げる • 無難な返しを抑制して、なるべくいろんなことを喋るようにする • 似たような問いかけでも少し変えた文章を吐けるようになった in->ੋඇָ͠ΜͰ͚ͨΒͱࢥ͍·͢ʂ out<-͋Γ͕ͱʔ^^ in->৺த͍ͨ͝͠͠·͢…ָ͠ΜͰ͖͍ͯͩ͘͞Ͷʔʂ(^-^)/ out<-͋Γ͕ͱ͏͍͟͝·͢ʂʂʂʂ in->͖ͬ͞Ͳ͏ʙΑΖ͓͘͠ئ͍͠·͢ʂ out<-ͪ͜Βͦ͜ΑΖ͓͘͠ئ͍͠·͢ʂʂʂʂ 今のバージョン 「!」を4つ使うのが 好きらしい
Usagee Inc. キャラクタ性変換 botに“性格”を与えたり 特定のキャラクターっぽく喋って欲しい 機械学習で(なるべく)自動的に獲得したい ルールベースは大変すぎるし スマートじゃない
Usagee Inc. キャラクタ性変換 • あんまり研究がないので困る • “言語的個人性変換における言語モデルの適応と分析”とか (Mizukami et al.
Language Model Adaptation and Analysis for Individuality Transforming) • 基本的な方針としては文字列の書き換え規則を学習する形 • キャラの過去のセリフ、台本、小説などから学習 • ある程度人間が指定して残りは機械学習で補完する形が望ましい • 新しいキャラは学習できるほどのデータがないから • 人間が指定できるならそれに越したことはない (機械学習は最後の手段!)
Usagee Inc. キャラクタ性変換 ZPV͓Α͏͍͟͝·͢ CPU͓Α͏͍͟͝·͢ʂϓϩσϡʔαʔ͞Μʂ ZPV෩͔͢Ͷ CPUͦ͏ͳΔલʹؼΔ༧ఆͩͬͨͷʹͶʔʜʜ ZPVݩؾʹͯ͠Δʁ CPU͑ʜʜũƀũƀ ZPVরΕΔ
CPU๙ΊͯΔΘ͚͡Όͳ͍Μ͚ͩͲ ·͋·্͋ख͍͍ͬͯ͘Δ͕ഁ͢Δύλʔϯଟ͍ ݚڀͷ༨͋Γ
Usagee Inc. ありがとうございました ZPV͔͍͍ͬ͜ͷ͔ʂʁ͜ΕͬͯXXX CPU͍ʂʂʂ ZPVঁͬͯා͍Ͱ͢ʜ ͱΊͬͨʹ͍Θͳ͍͚Ͳා͔ͬͨʜ CPUͳΜͰʁʁ ZPVΞΠεΫϦʔϜͱ͔͋Δͷ͔ CPUͦΕ͋Δ
ZPV5*.&Ͱ͔͢dʁʁָ͠ΜͰ͖͍ͯͩ͘͞dὑ౦ ژདྷ·͔͢ʁ CPUͦΕͭΒ͍ʜʢ̩Ч̩ʣ ZPVؼɻ CPU͓͔ͭΕ͞·Ͱ͢Α͓͒ʂ ZPVૣى͖͢ΔΜͰ৸·͢ɻ͓͢Έͳ͍͞ CPU͓͢ ZPV·ͨΓΐͶὑ CPUΓ͍ͨὑ ZPV͍͍͑͑ ?? ͥͻͥͻʂྑ͘͠·͠ΐ CPU 㱼ʆ ʎͪ͜Βͦ͋͜Γ͕ͱ͏͍͟͝·͢ΑΖ ͓͘͠Ͷ͕͍͠·͢ まだまだ発展途上だが、なかなか賢いbotができつつある