Download presentation
Presentation is loading. Please wait.
Published byきよはる にいだ Modified 約 6 年前
1
Japan IBM Middleware User Community (JIMUC) 総会 & オープン・セミナー API & Watsonナレッジベース分科会 活動報告
2017年7月5日
2
参加者一覧 API & Watsonナレッジベース分科会 参加 CITS 増田、中村、大原、佐藤、中條 RITS 給分、相川、梶田、江戸
JIEC 賀谷、秋山、田崎 YDC 高橋 MDIS 伊藤、瀬戸 NI+C 榊 日本オプロ 佐藤、田口、石川 WingArk1st 小川、吉原、佐々木 協和エクシオ 戸塚、高木 事務局 稲見 合計 25名 ※敬称略
3
開催経過と開催場所 9月 10月 11月 12月 1月 2月 3月 4月 5月 6月 全体 マイル ストン 分科会 日程 ■9/14
DoC NLC R&R NRD R&R CNV SLK 9月 10月 11月 12月 1月 2月 3月 4月 5月 6月 全体 マイル ストン 分科会 日程 ■9/14 キックオフ ■10/19 第2回 CITS 天王洲 ■11/16 第3回 CITS 三田 ■12/21 第4回 リコーITソリューションズ ■1/18 第5回 IBM ■1/27 オープンセミナー ■2/15 第6回 三菱電機インフォメーションシステムズ 田町 ■3/15 第7回 IBM Innovation Center ■4/19 第8回 ■5/17 第9回 WingArk1st ■6/21 第10回 IBM IIC
4
Agenda 活動成果 (増田) 5分 Bluemix Watson環境説明とデモ (梶田) 10分
活動成果 (増田) 5分 Bluemix Watson環境説明とデモ (梶田) 10分 Slack環境の連携構成説明とデモ (賀谷、吉原) 10分 LINE環境構成説明とデモ (相川) 10分 まとめ (増田) 5分 成果まとめ 来年度の取り組み
5
Bluemix Watson Services
分科会使用サービス
6
Natural Language Classifier
7
Retrieve & Rank
8
Natural Language ClassifierとRetrieve & Rank
NLC R&R
9
ドキュメントからKnowledge Baseへ
Watson Knowledge Base PDF、Word、HTML文書 テキスト JSON 人的な作業が必須 このための知見が集められていない。 Watson Knowledge Base
10
Bluemix Watson環境とデモ リコーITソリューションズ 梶田 裕磨
11
総務省のマイナンバーFAQ
12
Watson Conversation Watson Conversationの中でNLCが使われている。
事前にFAQの中からIntents(意図)とエンティティを抽出 する必要がある。 Dialogによって、会話を構成する。
13
Intentsの作成
14
Intentsの作成 ・「意図」(入力された質問文がどのようなことを聞きたいか)を判断・分類させる必要がある ※NLCの分類器としての役割
→FAQのQから末尾を切り出し、Intentsの候補を抽出 例: どのようなものですか? 何ですか? 本当ですか。 →抽出結果をグループ化(手作業) →計19個のIntentsグループを作成 Intentsグループ グループの一覧 グループの中の候補の数
15
Entitiesの作成 ・FAQのQとAを1組毎にテキスト解析(登場する単語を抽出)し、Entitiesの候補を抽出
※Yahoo!の「キーフレーズ抽出」を利用 →抽出結果をグループ化(手作業) →計617個のEntitiesグループを作成 Entitiesグループ グループの一覧
16
Dialogの作成 ・作成したIntentsを最初の階層にする。
17
Dialogの作成 ・Try it outにQを入れてみる ・ヒットしたEntityを次階層にして、回答を入力 Conditionを指定
19
最終正答率 Q&A数 OK ERROR 回答なしor 誤った回答 NG総数 ① OK→NG ② NG→NG ③ 未実施→NG (1)総論
11 ― (2)マイナンバー(個人番号)に関する質問 13 5 1 7 8 2 6 (3)マイナンバーカードに関する質問 20 17 3 (4)民間事業者における取扱いに関する質問 46 39 4 (5)個人情報の保護に関する質問 10 (6)マイナポータルに関する質問 (7)今後のスケジュール等 (8)法人番号に関する質問 12 合計 123 100 14 9 23
20
①前回OK→今回NG でのIntentsの変更
Watsonの学習機能により、抽出されるIntentが変わってしまった → 回答はIntentとEntityの組合せで用意しているため、Intentが変わると正しい回答を表示できない
21
CITS-Masuda-Conversation-el
①前回OK→今回NG でのIntentsの変更 Q4-1-4 マイナンバーを取り扱う業務の委託や再委託はできますか? A4-1-4 マイナンバーを取り扱う業務の全部又は一部を委託することは可能です。また、委託を受けた者は、委託を行った者の許諾を受けた場合に限り、その業務の全部又は一部を再委託することができます。 委託や再委託を行った場合は、個人情報の安全管理が図られるように、委託や再委託を受けた者に対する必要かつ適切な監督を行わなければなりません。委託や再委託を受けた者には、委託を行った者と同様にマイナンバーを適切に取り扱う義務が生じます。(2014年6月回答) CITS-Masuda-Conversation-el マイナンバー2(第2回テスト環境)での結果 Intent: 取り扱い
22
①前回OK→今回NG でのIntentsの変更
Entity: マイナンバー → 業務 and 委託 →前回は「できる」が抽出されていたが 今回から「取り扱い」が抽出されるようになったため、準備してある回答が出せずERRORになったものと思われる 回答
23
課題・対応策案 ・Watsonの学習機能によって、出力結果が意図せず変更されてしまう可能性がある
→ 人手の確認には限界があるため、テストの自動化が必要 → 正しい質問と回答の組合せ、Intent/Entity/Response(回答)の組合せに変更がないかをプログラムでチェックする
24
課題・対応策案 ・そもそも、Watsonの学習機能による変動に弱い(誤ったIntentを選択しかねない)設定になっている
(文末の抽出、抽出結果のグループ化) Intentごとの違いが明確でない例 →「できる」Intentの方が適切?
25
課題・対応策案 ・学習機能の検証が不十分 → 確信度の違いによる応答結果の変化の確認
→ 確信度の違いによる応答結果の変化の確認 ・ConversationでConversationができていない → 現在は一問一答型
26
Slack環境の連携とデモ JIEC 賀谷 幹夫 WingArk1st 吉原 江輔
27
Conversationの インターフェース
BlueMixのコンソールにて可能
28
{ api } Java HTML LAMP
29
I/Fを自分で組むのは面倒←チャットツール
最近技術者に大人気
30
・Incoming-Webhook ・Outgoing-Webhook ・Slash Command ・イベント連携 (リアルタイムAPI)
チャットツールの持つ様々な連携方法 ・Incoming-Webhook ・Outgoing-Webhook ・Slash Command ・イベント連携 (リアルタイムAPI)
31
いざ作成①Inbound バックアップの成否チェック { api }
32
いざ作成②Outbound1(# Command)
BlueMixの 課金チェック
33
いざ作成③Outbound2(# Command)
マイナンバー Conversation 呼び出し
34
Watson Developer Cloud openwhisk-slackapp
いざ作成④イベント連携 Watson Developer Cloud openwhisk-slackapp ACCESS_TOKEN 投入 botの追加 OAUTH EVENT ACCESS_TOKEN 確認
35
いざ作成④イベント連携
36
これが一番 楽なのでは
37
Conversationでエラーの場合は
R&Rにてサポートすればよいのでは
38
処理の流れ slackから投稿した質問の受け口と、処理の振り分け役としてNode-REDを利用します。
Node-REDのフローでは、はじめにWatson Conversationに質問を確認します。 有効な回答が得られない場合はRetrieve & Rankに確認して、回答をslackに返します。 Watson Conversation Watson Retrieve & Rank
39
Node-REDフロー Conversationからの応答がない場合や、confidence(確信度)が低い場合はNGとします NGの場合は
confidence = msg.payload.intents[0].confidence; res = msg.payload.output.text; if(res === null || res === "" || confidence < 0.7){ res = "NG"; }else{ res = res + "(Conversation)" + confidence; } NGの場合は Retrieve & Rankへ
40
3.Slack連携デモ
41
81% 93% 正答率の改善 Conversationのみ Conversation + R&R
FAQと同じ質問文に対する正答率が、Conversationのみの場合と比較して 12%向上しました。 Conversationのみ Conversation + R&R 81% 93%
42
今後の課題 ゆらぎのある質問のテスト 質問への回答が適切だったかのフィードバックを取得
マイナンバーとは関係ない質問にもR&Rが回答してしまう場合がある R&R側の確信度の判定などで改善可能か 質問への回答が適切だったかのフィードバックを取得 フィードバックを溜める仕組み R&Rの再学習
43
LINE連携とデモ リコーITソリューションズ 相川 公孝
44
目次 目的 Visual Recognition システム構成 デモ
45
目的 Conversation APIを使用して質問に対して 回答させる方法はある程度分かってきた。
他のWatson APIと連携することで何か出来ないか考えたい。 画像(今回) or 音声とかと連携させてみたい。
46
Visual Recognition カスタム・イメージ分類 顔検出 カスタム種別トレーニング カスタム種別の保管
ユーザーのカスタム・ビジュアル種別に 対してイメージを分類します。 顔検出 人間の顔を識別します。 性別と年齢を検出します。 カスタム種別トレーニング ユーザー独自のイメージを使ってカスタム・クラスを トレーニングすることにより、カスタム・ビジュアル種別 を作成します。 カスタム種別の保管
47
システム構成 Amazon API Gateway* Java Amazon EC2
48
4.LINEと画像認識デモ
49
まとめ
50
Watson Conversationとアプリケーションの連携
AIRLINE CARD HOTEL SaaS オンライン旅行会社 ホテル・航空券予約システム IaaS PaaS 旅行者 PaaS
51
入力において、必要となるのは構造化データ
顧客ID 行先 チェックイン チェックアウト 部屋数 大人人数 子供人数
52
アプリケーションイメージ ご旅行.com どちらにご旅行ですか。 パリ 出発日と帰国日を教えてください。 6月18日から 6泊
6月18日から24日までですね。 はい ホテルはどこにしますか。 安全なところを お願いします ルーブル美術館の近くはいかがですか。 いいですね どのランクがよいでしょうか。一つ星から 五つ星まであります。 一泊9千円ぐらい でないでしょうか ご旅行.com 出発 パリ 帰国
53
会話は、非構造化データ 重要な課題 非構造化データである会話から、IntentsとEntityを基に、構造化データを抽出することができる。
どちらにご旅行ですか。 パリ 出発日と帰国日を教えてください。 6月18日から6泊 6月18日から24日までですね。 はい ホテルはどこにしますか。 安全なところをお願いします ルーブル美術館の近くはいかがですか。 いいですね どのランクがよいでしょうか。一つ星から五つ星ま であります。 一泊9千円ぐらい でないでしょうか 重要な課題 非構造化データである会話から、IntentsとEntityを基に、構造化データを抽出することができる。 しかし、データは、リアルタイム、ダイナミックに変更されるものであり、静的なナレッジベースだけでは、解決できない。 目的地 出発日 帰国日 ホテル価格帯
54
ホテル航空券予約のデータ構造 埋まる 埋まる 不定期に変更される カード カードNo. ローマ字名前 有効期限 航空券座席情報 航空会社
便名 便No. 出発空港 出発時間 到着空港 到着時間 予約 顧客ID 顧客名 予約日時 決済 埋まる 埋まる ホテル空室情報 ホテル名 ホテル所在地 料金 部屋 ランク 航空券 往路 空港 出発時間 到着時間 航空券 往路 空港 出発時間 到着時間 ホテル ホテル名 チェックイン チェックアウト 料金 部屋 不定期に変更される 治安情報 所在地 危険度
55
Conversation Broker Sessions 4 1 3 2 I/F ODM Conversation BPM
R&R→Discovery
56
Watsonをビジネスへ
57
一年間の所感 これまで一つのシステムに専任してきたため、技術的にも他社・他者との交流という面でもかなり閉塞的な環境におりました。
これまで一つのシステムに専任してきたため、技術的にも他社・他者との交流という面でもかなり閉塞的な環境におりました。 本WGに参加させていただいたおかげで、やっとオープン化の波を体感することができました。 また、参加各社様の見識の広さ、深さに大変刺激をうけた一年でした。 構成員の自発的な技術検証の結果に大変啓発されました。 今後もこのような自発的な技術検証結果を持ち寄って 刺激を与え合える場になればと思います。 後半から参加させて頂きましたが、意見交換が活発な分科会で、スキルの高い皆様から刺激を頂き、非常に貴重な経験をさせて頂きました。 ありがとうございました。 後半になるにつれて参加できなくなりとても残念でしたが、 なんとかWatsonの概要、使い方など学ぶことができました。 いつもみなさまの新しいアイデアに刺激を受け、とても貴重な経験ができたと思います。 Watsonのような新しい技術に触れる機会はこれまでの業務上なかなかありませんでしたので、非常に良い経験になりました。 分科会がスタートしてから社外勤務が続き、なかなか参加できなかったことは非常に残念でしたが、少ない機会ながらも、多くの刺激を頂いたと思っております。 1年間ありがとうございました。 天城会議の参加から始まり非常に興味深い研究会なので参加させていただきました。 でも皆さんの技術力と工夫に感動させていただいた一年だったかと思います。 いろいろ面白いWatsonの使い方や最新技術との組合せなども試せたかと思います。 RITSの人間もなかなかやるじゃないかという気付きもありました。 業務上、他社との交流が少ない環境にいたため、本WGに参加させていただき多くの刺激を受けることができました。 ありがとうございました。
58
API & Watsonナレッジベース分科会
Similar presentations
© 2024 slidesplayer.net Inc.
All rights reserved.