Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
対話botの技術
Search
Kazuya Gokita
September 02, 2016
Technology
1
2.8k
対話botの技術
Kazuya Gokita
September 02, 2016
Tweet
Share
Other Decks in Technology
See All in Technology
Claude Code はじめてガイド -1時間で学べるAI駆動開発の基本と実践-
oikon48
45
27k
小さな判断で育つ、大きな意思決定力 / 20251204 Takahiro Kinjo
shift_evolve
PRO
1
480
あなたの知らないDateのひみつ / The Secret of "Date" You Haven't known #tqrk16
expajp
0
120
シンプルを極める。アンチパターンなDB設計の本質
facilo_inc
2
1.6k
AIにおける自由の追求
shujisado
3
480
Gemini でコードレビュー知見を見える化
zozotech
PRO
1
120
eBPFとwaruiBPF
sat
PRO
4
2.4k
たかが特別な時間の終わり / It's Only the End of Special Time
watany
28
7.6k
re:Invent 2025 ふりかえり 生成AI版
takaakikakei
1
120
Bakuraku Engineering Team Deck
layerx
PRO
12
6.5k
Noを伝える技術2025: 爆速合意形成のためのNICOフレームワーク速習 #pmconf2025
aki_iinuma
2
1.8k
【pmconf2025】PdMの「責任感」がチームを弱くする?「分業型」から全員がユーザー価値に本気で向き合う「共創型開発チーム」への変遷
toshimasa012345
0
200
Featured
See All Featured
Code Reviewing Like a Champion
maltzj
527
40k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Faster Mobile Websites
deanohume
310
31k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.1k
A better future with KSS
kneath
240
18k
A designer walks into a library…
pauljervisheath
210
24k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Become a Pro
speakerdeck
PRO
30
5.7k
Unsuck your backbone
ammeep
671
58k
Site-Speed That Sticks
csswizardry
13
990
Git: the NoSQL Database
bkeepers
PRO
432
66k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
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ができつつある