SlideShare ist ein Scribd-Unternehmen logo
1 von 31
自分好みのチャットボットを作るハンズオン
株式会社パソナテッ ク 寺岡幸二
© Pasona Tech,inc.All Rights Reserved.2017/6/17 1
自己紹介
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 2
寺岡 幸二
株式会社パソナテック
マーケティング戦略部 マネージャー
LINEボットはじめました
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 3
本日の流れ
1. LINEボットをノンプログラミングで
作ってみる。
2. チャットボットの仕組みから機械学習につい
て学ぶ。
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 4
LINEボットを
ノンプログラミングで作ってみる。
© Pasona Tech,inc.All Rights Reserved.
SESSION 1
2017/6/17 5
本日使うもの
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 6
LINE
LINEボットと対話できる
LINE@アカウントを作成
LINE Business Center
LINEボットを構築するための
開発ツール
api.ai
チャットボットの対話エンジン
となるツール
1. 下準備
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 7
1. LINEアカウントの設定
• 「 設定」 →「 アカ ウント」 →「メールアドレス変更」
で 、メールアドレス とパスワードを設定しておく。
2. Googleアカウントの取得
• LINE アカ ウントのメールアドレス で、 Google ア
カ ウントを取得して お くとラクです。 ※ 別でも全
然 OK 。
3. メールを受信できるように
• LINE Bu sin e ss Ce n te r / a pi.a i のアカ ウン
ト開設時、認証メールが飛びま す。
2. LINE Business Center にログイン
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 8
https://business.line.me/ja/
※初回ログイン時、認証作業が入ります。
3. LINE@アカウントを作成
1. 「LINE Messaging API」を選択。
2. アカウント名と業種を自由に設定したら、確認
ボタン→申し込む。
3. LINE@ Managerへ移動。
4. Bot設定を聞かれるので、「APIを利用する」
を押す。(確認を承諾)
5. アカウント設定→Bot設定で、webhookを利
用するに設定して保存。
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 9
4. LINE Developersでチャットボット設定
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 10
1. LINE Developersに移動。
2. 初回アクセス時、認証作業が入ります。
3. 「ISSUE」ボタンを押すと、ボット固有の
鍵”Access Token”が発行されます。
5. api.aiにアカウント登録
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 11
https://api.ai/
※アカウント登録時、認証作業が入ります。
api.aiでエージェントを作成
1. Googleアカウントでapi.aiアカウントを作成し、
諸々同意。
2. 「CREATE AGANT」を押す。
3. エージェント名 / DESCRIPTION は適当で
いいですが…後述
4. LANGUAGEで「日本語」を選択。
5. 「SAVE」するとエージェントが使えます。
6. ただし、既に使われているエージェント名だと
エラーが出ます。
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 12
LINE Developers と api.ai をつなぐ
1. api.aiで、左メニューから「Integration」を選
択。
2. Integrationするサービスから「LINE」を選択。
3. 開いたダイアログに、LINE Developersの
「Channel ID」と「Channel Secret」と
「Channel Access Token」を記入して、
「START」。
4. api.aiのWebhookURLを、LINE Developers
側に記入。
※VerifyでSuccessになればOK。
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 13
対話できるパターンを増やす
• api.aiの「Intents」を開く。
• 「CREATE INTENT」でIntentsの作成画面に。
• 「User says」が、ユーザーの発言内容です。
• 「Response」に、発言に応じた応答を入れま
す。
複数個入れると、どれかがランダムで返ります。
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 14
チャットボットの仕組みから
機械学習について知る。
© Pasona Tech,inc.All Rights Reserved.
SESSION 2
2017/6/17 15
今作ったLINEボットの構成
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 16
海賊王に〜?
1. ユーザーが投稿
2. webhookする
3. 投稿内容をJSON形式で
受け取る
なんて言ったら?
なんて返す?
4. 事前に用意した応答ルールから
投稿に対する返答分を探す。
5. 返答を返す
俺はなる!
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 17
なんと
言ったら
なんと
返す
→
ルールベース 機械学習ベース
今作ったapi.aiの弱点
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 18
1文字でも違うと、
ルールが適用されない。
↓
日本語版の弱点
日本語と英語の大きな違い
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 19
単語ごとにスペースが入る。
↓
日本語版を単語ごとに分ける
=分かち書き
海賊王に〜? → 海賊_王_に_〜_?
それぞれの良いところ悪いところ
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 20
ルールベースは、
ルールさえあれば即利用可。
でも表現のゆらぎに弱い。
機械学習は、
大量の学習データが必要だが、
人のゆらぎを受け入れる。
企業のFAQシステムの構図
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 21
なんと
言ったら
なんと
返す
↓
ほぼ固定
↓
この認識率
との戦い
Watson Natural Language Classifier
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 22
質問に対して、 任意の分類名を付与して学習させる
→アノテーション
アノテーション
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 23
アノテーション
あるデータに対して
関連する情報(メタ
データ)を注釈とし
て付与すること。
これを文章に当て
込んで学習させる。 今日_は_いい_天気_だ_ね_。
DATE
TODAY
Good
Nice
WEATHER
(Xa,Ya),(Xb,Yb)
[人][子ども][笑
顔]
(Xm,Ym),(Xn,Yn)
[猫][きょとん]
りんなとかに見る雑談システムの構図
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 24
なんと
言ったら
なんと
返す
↓
生成精度
との戦い
↓
この認識率
との戦い
文章生成ロジックの例:マルコフ連鎖
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 25
マルコフ連鎖
「現在の状態のみ
で未来の状態が決
定する」ようなモデ
ルのこと。
これを文章に当て
込んで学習させる。
私
これ
は
寺岡
犬
です
朝起きる
ゲームをする
寝る
お腹が空く
ご飯を食べる
りんなとかに見る雑談システムの構図
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 26
なんと
言ったら
なんと
返す
↓
生成精度
との戦い
= Outputの
機械学習
↓
この認識率
との戦い
= Input
の機械学習
「汎用人工知能」と「特化型人工知能」
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 27
• 2010年頃までは、機械自体が学習するまでに至らず。
• ニューラルネットワーク構築からのディープラーニングが成功
したことで、機械学習ブームが加速。
• でも今は、人間のようにあらゆる知識をもった「汎用人工知能
(強いAI)」までに至らず。ある分野に特化した「特化型人工知
能(弱いAI)」が主流。
• シンギュラリティが起こるのは、汎用人工知能が当たり前に
なった未来?
自分ごのみ = 単一学習特化型から
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 28
専門分野以外はツンデレ
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 29
ルールベースと機械学習のハイブリッド
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 30
ルールベースでボットを構築
↓
とりあえずルールベース推論で
テスト運用
↓
結果からトレーニング
↓
適用して再度テスト
↓
データが貯まったら
機械学習推論に切り替える
まとめ
• api.aiのようなツールで、プログラミングしなく
てもボット開発は可能な時代。
• きちんと応答をさせるなら、形態素解析などを
用いて単語自体を認識させる仕組みを入れる。
• 自然対話処理には、Inputの学習とOutputの
学習がある。
• 話しかけやすいのは単一学習特化型。
自分好みのチャットボットを作ってみてください。
2017/6/17 © Pasona Tech,inc.All Rights Reserved. 31

Weitere ähnliche Inhalte

Ähnlich wie 【博多TECH塾】自分ごのみのチャットボットをつくるハンズオン

Ähnlich wie 【博多TECH塾】自分ごのみのチャットボットをつくるハンズオン (20)

オープンソースの学会向け会員管理システムとオープンソースビジネスの実践
オープンソースの学会向け会員管理システムとオープンソースビジネスの実践オープンソースの学会向け会員管理システムとオープンソースビジネスの実践
オープンソースの学会向け会員管理システムとオープンソースビジネスの実践
 
SORACOM Canalを使った キャンペーン端末事
SORACOM Canalを使った キャンペーン端末事SORACOM Canalを使った キャンペーン端末事
SORACOM Canalを使った キャンペーン端末事
 
LINE公式アカウントで作るチャットボット&スマフォアプリとしての可能性
LINE公式アカウントで作るチャットボット&スマフォアプリとしての可能性LINE公式アカウントで作るチャットボット&スマフォアプリとしての可能性
LINE公式アカウントで作るチャットボット&スマフォアプリとしての可能性
 
今こそ聞きたい開発環境
今こそ聞きたい開発環境今こそ聞きたい開発環境
今こそ聞きたい開発環境
 
【Monaca×mobile backend】 プッシュ通知をカンタン実装! スピード感ある開発をしよう!
【Monaca×mobile backend】 プッシュ通知をカンタン実装! スピード感ある開発をしよう!【Monaca×mobile backend】 プッシュ通知をカンタン実装! スピード感ある開発をしよう!
【Monaca×mobile backend】 プッシュ通知をカンタン実装! スピード感ある開発をしよう!
 
EC業界の裾野を広げる方法 PPUG(PayPal User Group) #2 Lightning Talk by MaP design 渡部知記
EC業界の裾野を広げる方法 PPUG(PayPal User Group) #2 Lightning Talk by  MaP design 渡部知記EC業界の裾野を広げる方法 PPUG(PayPal User Group) #2 Lightning Talk by  MaP design 渡部知記
EC業界の裾野を広げる方法 PPUG(PayPal User Group) #2 Lightning Talk by MaP design 渡部知記
 
PEP x LINE WORKS Introduction
PEP x LINE WORKS IntroductionPEP x LINE WORKS Introduction
PEP x LINE WORKS Introduction
 
企業向けmBaaS「AppPot」を使ったサーバー開発なしの高速モバイルアプリ開発
企業向けmBaaS「AppPot」を使ったサーバー開発なしの高速モバイルアプリ開発企業向けmBaaS「AppPot」を使ったサーバー開発なしの高速モバイルアプリ開発
企業向けmBaaS「AppPot」を使ったサーバー開発なしの高速モバイルアプリ開発
 
sitTokyo 2021 SAPのチャットボット SAP Conversational AI を使ってみよう!
sitTokyo 2021 SAPのチャットボット SAP Conversational AI を使ってみよう!sitTokyo 2021 SAPのチャットボット SAP Conversational AI を使ってみよう!
sitTokyo 2021 SAPのチャットボット SAP Conversational AI を使ってみよう!
 
Machine Learning 15 minutes! とあるデザイン会社の中の人にとってのA.I.
Machine Learning 15 minutes! とあるデザイン会社の中の人にとってのA.I.Machine Learning 15 minutes! とあるデザイン会社の中の人にとってのA.I.
Machine Learning 15 minutes! とあるデザイン会社の中の人にとってのA.I.
 
初めてのWebプログラミング講座
初めてのWebプログラミング講座初めてのWebプログラミング講座
初めてのWebプログラミング講座
 
20190810
2019081020190810
20190810
 
20160621 KDL_monacaソリューションセミナー
20160621 KDL_monacaソリューションセミナー20160621 KDL_monacaソリューションセミナー
20160621 KDL_monacaソリューションセミナー
 
Yahoo!ブラウザーにおける市場環境の分析と戦略化
Yahoo!ブラウザーにおける市場環境の分析と戦略化Yahoo!ブラウザーにおける市場環境の分析と戦略化
Yahoo!ブラウザーにおける市場環境の分析と戦略化
 
Dangerでpull requestレビューの指摘事項を減らす
Dangerでpull requestレビューの指摘事項を減らすDangerでpull requestレビューの指摘事項を減らす
Dangerでpull requestレビューの指摘事項を減らす
 
【A-4】kintone API、JavaScript APIの実力
【A-4】kintone API、JavaScript APIの実力【A-4】kintone API、JavaScript APIの実力
【A-4】kintone API、JavaScript APIの実力
 
SHANON Marketing Conference 2017_シャノンも選んだTableauがあなたの会社のデータを語らせます
SHANON Marketing Conference 2017_シャノンも選んだTableauがあなたの会社のデータを語らせますSHANON Marketing Conference 2017_シャノンも選んだTableauがあなたの会社のデータを語らせます
SHANON Marketing Conference 2017_シャノンも選んだTableauがあなたの会社のデータを語らせます
 
AI for Media 2018 Update セミナー: 株式会社ユニゾンシステム: スピーチ AI を活用した文字起こしプラットホームの活用
AI for Media 2018 Update セミナー: 株式会社ユニゾンシステム: スピーチ AI を活用した文字起こしプラットホームの活用AI for Media 2018 Update セミナー: 株式会社ユニゾンシステム: スピーチ AI を活用した文字起こしプラットホームの活用
AI for Media 2018 Update セミナー: 株式会社ユニゾンシステム: スピーチ AI を活用した文字起こしプラットホームの活用
 
アプリエンジニアでもできる閉域網構築のススメ!
アプリエンジニアでもできる閉域網構築のススメ!アプリエンジニアでもできる閉域網構築のススメ!
アプリエンジニアでもできる閉域網構築のススメ!
 
NSA NB委員会セミナー「モバイルアプリ開発業務におけるmonacaの活用」
NSA NB委員会セミナー「モバイルアプリ開発業務におけるmonacaの活用」NSA NB委員会セミナー「モバイルアプリ開発業務におけるmonacaの活用」
NSA NB委員会セミナー「モバイルアプリ開発業務におけるmonacaの活用」
 

Kürzlich hochgeladen

Kürzlich hochgeladen (7)

LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 

【博多TECH塾】自分ごのみのチャットボットをつくるハンズオン

Hinweis der Redaktion

  1. 13:20
  2. 13:20