IBM Bluemixwww.bluemix.net
Bluemix テクニカル・セミナー 2017
Watson API
日本アイ・ビー・エム株式会社
クラウド事業本部
クラウド・テクニカルセールス
岸田 吉弘
© 2017 IBM Corporation2
IBM Bluemixwww.bluemix.net
ご注意
この資料は日本アイ・ビー・エム株式会社および日本アイ・ビー・エム システムズ・エンジニアリング株式会社の正式なレビューを受けておりません。
資料の内容には正確を期するよう注意しておりますが、この資料の内容は2017年8月現在の情報であり、製品の新しいリリース、修正などによって動作/仕様が変わる可能性があります。
当資料は、資料内で説明されている製品の仕様を保証するものではありません。従って、この情報の利⽤またはこれらの技法の実施はひとえに使⽤者の責任において為されるものであり、資料の内容によって受けたいかなる被害に関しても⼀切の補償をするものではありません。
また、IBM、IBMロゴおよびibm.comは、世界の多くの国で登録されたInternational Business Machines Corporationの商標です。他の製品名およびサービス名等は、それぞれIBMまたは各社の商標である場合があります。現時点でのIBMの商標リストについてはhttp://www.ibm.com/legal/copytrade.shtmlをご覧ください。
© 2017 IBM Corporation3
IBM Bluemixwww.bluemix.net
アジェンダ
Watsonとは
Watson APIの紹介 Conversation
Natural Language Classifier
Speech to Text
Text to Speech
Discovery
Natural Language Understanding
Visual Recognition
Personality Insights
Language Translator
Tone Analyzer
Watson APIの利⽤
運⽤
可⽤性
監視・バックアップ
セキュリティ
適⽤事例
© 2017 IBM Corporation4
IBM Bluemixwww.bluemix.net
Watson とは
© 2017 IBM Corporation5
IBM Bluemixwww.bluemix.net
Watsonとは
IBM Watson は、自然言語処理と機械学習を使用して、大量の非構造化データから洞察を明らかにするテクノロジー・プラットフォームです。
照会応答Engagement
探索・発見Discovery
意思決定支援Decision
Watsonが洞察を明らかにする方法非構造化データの分析自然言語処理を使⽤して文法やコンテキストを理解します
複雑な質問の理解解釈可能な全ての意味を評価し、質問の内容を判断します
答と解決法の提示裏付けとなる証拠と検出した質の高い情報をベースにします
Watsonが質問に答える方法
Watsonはまず新たな主題について学習します✓ ワード文書、PDF、Web ページなど、すべての関連資料が Watson にロードされます✓ 質問と答のペアが追加され、主題について Watson をトレーニングします✓ Watson は新しい情報が公開されると自動的に更新されます
そしてWatsonが質問に答えます✓ Watson は何百万もの資料を検索して、何千もの回答の可能性を見つけ出します✓ 根拠を収集し、スコアリング・アルゴリズムを使⽤して、この根拠の質を評価します✓ 裏付けとなる根拠のスコアに基づき、すべての回答の可能性をランク付けします
https://www.ibm.com/watson/jp-ja/what-is-watson.html
© 2017 IBM Corporation6
IBM Bluemixwww.bluemix.net
Watson Developer Cloud(WDC)
WDCは、WatsonサービスをAPIとして提供するクラウド環境
細かい機能単位に細かく分かれており、APIを組み合わせてアプリを作成
HP上では各Watson APIサービスの詳細が確認可能
デモアプリや、API Reference、SDKなどが紹介されている
https://www.ibm.com/watson/developer/分析
言語
画像
音声
© 2017 IBM Corporation7
IBM Bluemixwww.bluemix.net
BluemixとWatson Developer Cloudの関係
アプリケーション
WatsonDeveloper
Cloud
バインド
RESThttps://gateway.watsonplatform.net/***/api/
サービスへのアクセス情報(ユーザーID、パスワード、URL)
© 2017 IBM Corporation8
IBM Bluemixwww.bluemix.net
IBM Watsonの特長
カスタマイズ可能なAPIが豊富
ベースのモデルに追加して企業ごとの専門知識を覚え込ませることができる
オプトアウトが可能
学習させたデータを、IBMがモデル改善のために再利⽤できないように設定することができる
始めやすく、利⽤しやすい
学習済みのモデルを提供するため、すぐに使い始めることができる
REST APIで提供しているため、複雑なコーディングは不要
© 2017 IBM Corporation9
IBM Bluemixwww.bluemix.net
Watson APIの紹介
© 2017 IBM Corporation10
IBM Bluemixwww.bluemix.net
Bluemixで利⽤可能なWatson API
分析
音声処理
画像分類
言語処理
Speech to Text音声をテキスト文章に変換する
Text to Speechテキスト文章を音声に変換する
Visual Recognition画像コンテンツに含まれる意味を検出する
Discovery(日本語未対応)
認知検索およびコンテンツ分析エンジンをアプリケーションに追加して、優れた意思決定を行うのに役立つパターン、傾向、およびアクション可能な洞察を識別する
Conversationアプリケーションに自然言語インターフェースを追加してエンドユーザとのやり取りを自動化
Document Conversion文書を新しい形式に変換する
Language Translator(一部日本語未対応) ※1
自然言語テキストについて他言語へ翻訳を行う
Natural Language Understanding(日本語未対応)
自然言語からキーワード抽出、エンティティー抽出、感情分析、概念タグ付け、分類法種別などを行う
Personality Insightsテキストから筆者の性格を推定する
Retrieve and Rank自然言語の質問に対して回答の候補を返す
Natural Language Classifierテキスト文章の分類を行う(質問の意図推定など)
Tone Analyzer(日本語未対応)
テキストの感情、社交性、文体を解析する
© 2017 IBM Corporation11
IBM Bluemixwww.bluemix.net
必ず学習が必要 そのままでも利⽤できるが
カスタマイズも可能
カスタマイズ不可
Watson APIのカスタマイズについて
Conversation
Document Conversion
LanguageTranslator
Natural LanguageUnderstanding
Personality Insights
Natural LanguageClassifier
Tone Analyzer
Speech to Text
Text to Speech
Visual Recognition
Discovery
Retrieve and Rank
*
*
* Watson Knowledge Studioが必要
© 2017 IBM Corporation12
IBM Bluemixwww.bluemix.net
Conversation
チャットボットを実装するためのAPI
ユーザの発言の意図を理解し、その意図に応じて応答メッセージを返す
会話に必要な情報をやりとりをしながら抜き出し、適切な応答を選択
チャットアプリ
こんにちは、ご⽤件をどうぞ
今日は10時から、お客様とのミーティングの予定が入っています
今日の予定を教えて
今日の予定を教えて
10時からお客様ミーティング
対話フローに沿って、意図と目的語に対する応答メッセージを返す
意図:「知りたい」目的語:「今日」「予定」
アプリ
入力メッセージConversation 呼び出す
回答メッセージを受け取る出力メッセージ
© 2017 IBM Corporation13
IBM Bluemixwww.bluemix.net
Conversationの構成要素
3つの要素を組み合わせて会話を構築していく
Intents(インテント / 意図)
対話相手の要求・意図を認識する
例:食べたい、おなかすいた、腹減った → 食事をしたい、という意図
Entities(エンティティ / 目的語)
要求の対象を明確にする
例:食べる対象は? → そば?パスタ?ラーメン?
Dialogs(ダイアログ / 対話フロー)
対話の流れを設計する
例:「お腹がすいた」→「何が食べたい?」→「ラーメンがいい」・・
© 2017 IBM Corporation14
IBM Bluemixwww.bluemix.net
インテントとエンティティの登録
インテント
意図が識別できるように文章例を登録していく
異なる表現や言葉のゆらぎを吸収し、「意図」が正しく認識されるようにする
1つのインテントに対しては5つ以上の例文が必要
エンティティ
インテントの目的語になる対象を登録していく
ユーザーが入力したテキストに含まれる「キーワード」が認識されるようになる
同じ意味でも様々な言い方があるものは、シノニム(類義語)を登録
例:ラーメン、中華そば、支那そば
© 2017 IBM Corporation15
IBM Bluemixwww.bluemix.net
(参考)エンティティの種類
My Entities:
ユーザーが自由に定義することができる
System Entities:
Conversation APIが提供するエンティティー
Sys-time :時間を認識 例:13時20分、20:43
Sys-date :曜日と日付を認識 例:金曜日、今日、11月1日
Sys-currency :通貨を認識 例:20 cents、$20
Sys-percentage :割合を認識 例:15%、10パーセント
Sys-number :数値を認識 例:百七十、3.1415
Sys-location (Beta) :場所(国や都市)を認識 例:USA、Boston
Sys-person(Beta) :人名を認識 例:Will、Jane Doe
© 2017 IBM Corporation16
IBM Bluemixwww.bluemix.net
then 近くのイタリアンを検索します
ダイアログの作成
対話の流れに合わせてノードを追加し、処理を記述してフローを構成していく
ノードごとにユーザーに対しヒアリングや提案のための処理を記述する
各ノードはコンディション、レスポンスで構成される
コンディション:自分のノードに処理を遷移させるための条件(インテントやエンティティを指定)
レスポンス :ユーザーに返す応答文
ユーザーとの対話で得た情報はcontextに保管して後から参照できる
then 何が食べたいですか
お腹が空いた
ラーメンがいい
if : #食事 (インテント)
then 何ラーメンがいいですか?
if : @パスタ (エンティティ)
if : @ラーメン (エンティティ)・・・
© 2017 IBM Corporation17
IBM Bluemixwww.bluemix.net
対話で出てきた情報を保存しておくContext変数
対話時にユーザー情報やセッションを保存しておくための機能を提供する
ユーザーからの入力や、対話がどこまで進んだかをコンテキストに持たせることができる
conversation_idとSystemで構成される
conversation_id: どの対話かを⼀意に示すID
System: 対話がどこまで進んだかを示すdialog_stackと、任意のContext変数
Context:{conversation_id:’*****’,System:{
dialog_stack:[object],Date:’2017-09-26’,
…}}
2017年9月26日のご予約ですね
何名様でのご利⽤ですか?
Dateに保存 コンテキスト
コンテキストを保存し、対話を継続
「9月26日にお店を予約したい」
Context:{conversation_id:ʼ*****ʼ,System:{dialog_stack:[object],Date: ʼ2017- 09- 26 ʼ,
…}}
© 2017 IBM Corporation18
IBM Bluemixwww.bluemix.net
スロット機能
スロット プロンプト
人数 何人でのご利⽤ですか?
日付 日付を教えてください
時間 時間は何時がいいですか?
if : #予約19時から3名で予約をしたい
日付を教えてください
✓
✓
複数の入力項目に対しては、スロットを定義することで⼀つのノード内にすべてロジックを記述して処理をさせることができる
入力引数の順番や、引数の個数を意識することなく必要項目の入力が可能
© 2017 IBM Corporation19
IBM Bluemixwww.bluemix.net
対話履歴の確認と追加学習
インテント、エンティティの呼ばれた回数や対話の内容が保存され、意図していたものと違うインテント・エンティティが選択されていた場合、修正して再学習させることが可能
ログの保存期間はプランによって異なる(Standardプランの場合、30日)
© 2017 IBM Corporation20
IBM Bluemixwww.bluemix.net
Conversationサービスでの開発
Intent, Entity, Dialog
ごとに設定画面を提供
対話のフローを
わかりやすく表示・作成
作成したフローの
テストを容易に行える
Bluemixコンソール内で提供される専⽤のUIで容易に開発できる
© 2017 IBM Corporation21
IBM Bluemixwww.bluemix.net
価格体系
課金単位:APIの呼び出し数
料金
0.2625円 / API呼び出し
© 2017 IBM Corporation22
IBM Bluemixwww.bluemix.net
営業時間を教えて
Natural Language Classifier (NLC)
文章の意図を解釈し、分類するAPI意図:言語に含まれるノイズを取り除き、それが何を言おうとしているかということ
Conversationのインテントの機能と同等のもの
入力:自然言語の文章
出力:文章のクラス(分類)とその確信度
ユースケース:FAQ等の⼀問⼀答形式のチャットボット
すべて「営業時間」に関する質問と認識
何時までやってますか
いつからオープンしてるの
本日の営業時間は
9:00〜18:00です
© 2017 IBM Corporation23
IBM Bluemixwww.bluemix.net
NLC利⽤の流れ
1. 学習データの用意(CSV形式)
2. 分類器の作成とトレーニング
3. 分類器の利用(API呼び出し)
4. 分類器の評価と改善
© 2017 IBM Corporation24
IBM Bluemixwww.bluemix.net
分類器の作成
テキスト クラス
営業時間を教えて business_hours
何時までやってますか business_hours
いつからオープンしてるの business_hours
どうやって行けばいいですか Access
最寄り駅はどこ? Access
分類したい文章の例と、対応するクラスを定義したデータ(csv形式)を⽤意する
データを元に機械学習が行われ、分類器が作成される
何時から営業していますか
クラス: business_hours確信度: 0.88
クラス: Access確信度: 0.12
学習後、テキストを渡すと対応するクラスとその確信度が返ってくる
© 2017 IBM Corporation25
IBM Bluemixwww.bluemix.net
複数の分類器の使⽤
複数の分類器を⽤意し、同時にあるいは順番に呼ぶこともできる
同じテキストから異なる種類の意図を判別するために、複数の分類器を使⽤する
「要望の種類」の分類器
「水漏れがして服が汚れたよ」
メンテナンス要員の派遣
支配人よるフォローアップ対応
ホテルのゲストからのメッセージの例:
設備サービス時間
ルームサービス
ランドリー
「感情」の分類器
怒り
喜び
感謝
苦情
© 2017 IBM Corporation26
IBM Bluemixwww.bluemix.net
価格体系
課金単位:インスタンス数(分類器の数)、API呼び出し、トレーニング
サービス・インスタンスの数ではないことに注意が必要
1つのサービス・インスタンスで8つの分類器が作成できる
料金:
2100円 / インスタンス
0.3675円 / API呼び出し
315円 / トレーニング
© 2017 IBM Corporation27
IBM Bluemixwww.bluemix.net
Speech to Text (STT)
音声情報をテキスト情報に変換するAPI
対応言語
英語(米国、英国)、日本語、スペイン語、ポルトガル語、アラビア語、中国語
モデル
ブロードバンド(16khz)、ナローバンド(8khz)
入力フォーマット
FLAC、MP3 、PCM、WAV、WebM、μ-law など
通信インターフェース
Web Socket、REST HTTP、非同期 HTTP
キーワード検出、話者特定、正確な変換を行うための文法/文脈解釈などの機能
© 2017 IBM Corporation28
IBM Bluemixwww.bluemix.net
STT カスタム・モデルの作成
辞書登録
⽤語の文字表記、読み(カタカナで指定、複数可)を登録
文書登録
業務固有の⽤語の入った文書を登録
読みや単語の区切りなどの付加情報は不要
辞書登録の流れ
© 2017 IBM Corporation29
IBM Bluemixwww.bluemix.net
価格体系
課金単位:APIの利⽤分数
料金
2.04円 / 分(1 – 250,000分)
1.53円 / 分(250,001 - 500,000分)
1.27円 / 分(500,001 – 1,000,000分)
1.02円 / 分(1,000,000+分)
カスタムモデルを利⽤する場合、3.06円/分の追加料金が発生します
© 2017 IBM Corporation30
IBM Bluemixwww.bluemix.net
Text to Speech(TTS)
テキストを音声に変換するAPI
対応言語
英語(英国、米国)、ポルトガル語、フランス語、ドイツ語、イタリア語、日本語、スペイン語
出力インターフェース
HTTP、Web Socket
オーディオフォーマット
FLAC、MP3 、WAV、WebM、μ-law など
SSML(Speech Synthesis Markup Language)によるカスタマイズ
⼀定時間のポーズの挿入や、ボリュームコントロールなど
© 2017 IBM Corporation31
IBM Bluemixwww.bluemix.net
TTS カスタム・モデルの作成
単語と、その読み方を指定するカスタム・モデルは現在β版での提供
発音定義は3種類から選択
アルファベット、カタカナ(日本語のみ)
国際発音記号(IPA)
IBM記号音声表記(SPR)
日本語のカスタム時のみ、品詞の指定が可能
品詞を指定することで、正しいイントネーションでの発音ができるようになる
名詞や動詞、助詞など
© 2017 IBM Corporation32
IBM Bluemixwww.bluemix.net
価格体系
課金単位:読み上げる文字数
料金
2.10円 × 文字数
© 2017 IBM Corporation33
IBM Bluemixwww.bluemix.net
Discovery
大量のデータから洞察を引き出すためのAPI
文書を分析して情報を抽出し、検索できるようインデックスする
日本語未対応
Ingest Enrich Query
文書の取り込み 情報の抽出と意味付けを行いインデックスに保存
検索と分析を行い洞察を得る
キーワード
カテゴリー
エンティティ
評判
感情
query, filter,
aggregation 概念
© 2017 IBM Corporation34
IBM Bluemixwww.bluemix.net
エンリッチ機能
Discoveryが裏側でNLUを呼び出し、その結果をメタ情報の⼀つとして本文テキストと同時にDiscoveryのインデックス上に保存する
Queryにより本文だけでなく、エンリッチされたメタ情報を検索条件として使えるため、通常の検索エンジンと比較して高度な検索が可能
インデックス(Elastic Search)
クローラエン
リッチ保存
NLU
入力文書
NLU解析結果Entity, Relation,
Sentiment, Concept等
解析対象テキスト(自然文)
Discovery
© 2017 IBM Corporation35
IBM Bluemixwww.bluemix.net
クエリーの例
2017年6月30日から2か月間のIBMに関する記事のうち、関連度の高い順に5件取得し、そのタイトルを表示し、URLリンクも取得する。
2017年6月30日から2か月のIBMに関する記事の評判分析を行う。更に、サイト別の評判分析も行う。
2017年6月30日から2か月のIBMに関する記事を対象に⼀日毎の時系列で評判分析を行い、更に異常値の検出を行う。
「IBMがXXX社を買収する」という記事をrelation分析により収集する
© 2017 IBM Corporation36
IBM Bluemixwww.bluemix.net
Discovery News
Discoveryのインスタンスを作成すると、世界各地のニュース記事を保持している、事前作成済み読み取り専⽤コレクションDiscovery News がすぐに使える状態になる
Publicな参照専⽤のコレクションでデータ登録の必要なしにすぐに活⽤可能
Discoveryの使い方を習熟することができる
IBMが選定した20万のニュースソース
1日当たり30万件の記事
© 2017 IBM Corporation37
IBM Bluemixwww.bluemix.net
Discoveryのユースケース
ユースケース 内容 コーパス 目的の仮説想定
ユーザー価値
顧客の声分析
商品・サービスへの顧客コメント・調査結果を分析し、顧客の意見のパターンとトレンドを特定する。
•顧客のコメント•顧客へのアンケート結果•ニュース情報•SNSデータ
製品・サービスを改善するにはどうしたらいいのか?
•製品販売責任者•製品分析者•UXデザイナー
•商品への継続的な改善•市場での評判への対応
資料探索
特定の専門分野に関する、論文・資料・特許情報など膨大な資料に帯する検索
•研究資料
異なるデータ構造を持つ膨大な文書から望む文書を取り出すにはどうしたらいいか?
•研究者
•研究の迅速化•研究への時間・コストの削減
© 2017 IBM Corporation38
IBM Bluemixwww.bluemix.net
価格体系
課金単位:取り込む文書の数(またはサイズ)
拡張プランのみ、インスタンスの数も課金対象
料金(Standard Plan)
1.147円 / 時間 / 1000文書
10.50円 / ニュース照会
© 2017 IBM Corporation39
IBM Bluemixwww.bluemix.net
Natural Language Understanding(NLU)
テキストを分析し、コンテンツから様々なメタデータを抽出するAPI
DiscoveryのEnrichの部分
日本語未対応
特徴
事前学習済みのため、学習なしで解析結果が取得可能
Watson Knowledge Studioと連携することで、ドメイン固有のEntity/Relationの認識を行うことも可能
入力:テキスト、HTML、パブリックなURL
出力:抽出されたメタデータ
概念(Concepts)、エンティティ(Entities)、キーワード(Keywords)、
カテゴリー(Categories)、評判 (Sentiment)、感情 (Emotion)、
関係 (Relations)、意味役割(Semantic Roles)、メタデータ (Metadata)
© 2017 IBM Corporation40
IBM Bluemixwww.bluemix.net
NLUにより抽出可能なメタデータ
カテゴリー(Categories)
対象文書を分類基準に従って最大5階層に分類する
例:
概念(Concepts)
テキストに関連付けられている概念を、そのテキストに存在する他の概念とエンティティに基づいて識別する
例:
入力
URL : www.cnn.com
出力
/news/art and entertainment/movies and tv/television
入力
"Natural Language Understanding uses natural language processing to analyze text."
出力
LinguisticsNatural language processingNatural language understanding
© 2017 IBM Corporation41
IBM Bluemixwww.bluemix.net
NLUにより抽出可能なメタデータ
感情 (Emotion)
文章全体および特定のフレーズに対して、その感情をjoy, anger, disgust, sadness, fearの5つの観点で分析する
例:
エンティティ(Entities)
文中に記載されている人物、場所、イベントなどを検索する
例:
入力
テキスト : “I love apples,but I hate oranges.”
ターゲット: “apples” と "oranges"
出力
"apples" : joy "oranges” : anger
入力
“IBM is in New York.”
出力
IBM : CompanyNew York : Location
© 2017 IBM Corporation42
IBM Bluemixwww.bluemix.net
NLUにより抽出可能なメタデータ
評判 (Sentiment)
文章全体および特定のフレーズに対して、その評判をpositive, negative, nutral の3値で分析する
例:
意味役割(Semantic Roles)
構文解析により入力文を「主語(Subject)」、「動詞(Action)」、「目的語(Object)」に分解する
例:
入力
"Thank you and have a nice day!"
出力
Positive sentiment(score: 0.91)
入力
"In 2011, Watson competed on Jeopardy!"
出力
Subject: WatsonAction: competedObject: on Jeopardy
© 2017 IBM Corporation43
IBM Bluemixwww.bluemix.net
NLUにより抽出可能なメタデータ
関係 (Relations)
2つのエンティティ間の関係を見つけ、その関係性を判別する
例:
キーワード(Keywords)
文中に繰り返し出てくる重要なキーワードを抽出する
メタデータ (Metadata)
HTMLまたはURLを入力すると、著者、タイトル、発行日を抽出する
入力
"The Nobel Prize in Physics 1921 was awarded to Albert Einstein."
出力
• “Noble Prize in Physics” と“Albert Einstein” の間に“awardedTo” の関係
• “1921” と “awarded”の間に“timeOf” の関係
© 2017 IBM Corporation44
IBM Bluemixwww.bluemix.net
課金体系
課金単位:NLUアイテム数
NLUアイテム数 = 文字数(10000文字単位)× 抽出するメタデータの種類
料金
0.3058円 / NLU アイテム数( 1 – 250,000)
0.1019円 / NLU アイテム数( 250,001 – 5,000,000)
0.0204円 / NLU アイテム数( 5,000,000+)
© 2017 IBM Corporation45
IBM Bluemixwww.bluemix.net
Visual Recognition(VR)
画像に含まれているモノや人の顔などを分析する画像認識API
⼀般タグ付け:画像が予め学習しているクラスのどれに属するかタグを返す
顔認識 :画像内の人物の顔を発見し、位置や年齢、性別を返す
⼀部の有名人の場合は名前も返ってくる
類似イメージ検索:事前準備としてイメージのコレクションをアップロードした後、検索をかけると視覚的に類似したイメージを検出する
現在はGAに向けてclose状態
入力:画像または画像のURL
画像は.jpgまたは.pngの形式
出力:認識結果とスコア
© 2017 IBM Corporation46
IBM Bluemixwww.bluemix.net
カスタム分類器の作成
ポジティブな画像と、ネガティブな画像が含まれているzipファイルをそれぞれ⽤意する
ポジティブ:分類したいクラスごとに最低10枚の画像
適切な分類品質を得るには50枚以上、理想的には200枚あるとよい
ネガティブ:どのクラスにも該当しない画像
例:果物を分類する分類器を作成
ポジティブりんご、バナナ、梨
ネガティブ野菜
© 2017 IBM Corporation47
IBM Bluemixwww.bluemix.net
価格体系
課金単位:API呼び出し数
料金
イメージタグ付け: 0.21円 / API呼び出し
顔認識:0.42円 / API呼び出し
カスタム分類器の作成:10.51円 / API呼び出し
カスタム分類器による分類:0.42円 / API呼び出し
© 2017 IBM Corporation48
IBM Bluemixwww.bluemix.net
Personality Insights
テキストから筆者のパーソナリティの特徴を推測するAPI
入力:テキスト、HTML、JSON
TwitterなどのSNSのつぶやきでもOK
出力:
パーソナリティ
ビッグファイブ、価値、ニーズ
消費傾向
買い物、音楽、映画、読書 など
ユースケース
ブランド分析
個客対応型マーケティング
© 2017 IBM Corporation49
IBM Bluemixwww.bluemix.net
分析結果の例
個性(Big 5)
ニーズ
価値
Openness to experience独創的・好奇心が強い vs. 着実・警戒心が強い
Conscientiousness手際が良い・まめな人 vs. 楽天的・不注意
Extraversion社交的・エネルギッシュ vs. 孤独を好む・控えめ
Agreeableness人当たり良い・温情のある vs. 冷たい・不親切
Neuroticism繊細・神経質 vs. 情緒安定・自信家
Kevin FordのUniversal Needs Map (欲求と社会的価値の関係)ブランドの選択/ 商品の選択/ 職業の選択/・・・
Schwartzの価値概説• Self-transcendence (自己超越)
• Conservation (保存)
• Self-enhancement(自己高揚)
• Open to change (変化に対する需要性)
© 2017 IBM Corporation50
IBM Bluemixwww.bluemix.net
価格体系
課金単位:API呼び出し数
料金
2.10円 / API呼び出し (1-100,000回)
1.05円 / API呼び出し (100,001-250,000回)
0.53円 / API呼び出し (250,000回以上)
© 2017 IBM Corporation51
IBM Bluemixwww.bluemix.net
Language Translator
文書を、ある言語から別の言語に翻訳するAPI
対応ドメイン
News
ニュース記事のような日常使⽤される文章に特化したモデル
ニュースドメインのみ、日本語対応している(英→日、日→英)
Conversational
SNSのような話し言葉に近い文章に特化したモデル
Patents
技術論文や法律文書のような専門⽤語が使われる文章に特化したモデル
文章が何の言語か判定する機能もある
60以上の言語に対応
© 2017 IBM Corporation52
IBM Bluemixwww.bluemix.net
カスタムモデルの作成
カスタマイズをする場合、3種類の方法がある
forced_glossary
強制モデルで、絶対にこう訳してほしい、という場合に使⽤する
翻訳したい単語/フレーズのペアを学習データとして⽤意する
parallel_corpus
並行モデルで、訳すときの候補に入れてほしいという場合に使⽤する
翻訳したい単語/フレーズのペアを学習データとして⽤意する
monolingual_corpus
全体の翻訳品質を向上させるために使⽤する
翻訳後の言語で書かれた文章を学習データとして⽤意する
© 2017 IBM Corporation53
IBM Bluemixwww.bluemix.net
価格体系
課金単位:翻訳する文字数
料金
2.10円 / 1000文字
10.50円 / 1000文字(カスタムモデル利⽤時に追加課金)
1575円 / カスタムモデル
© 2017 IBM Corporation54
IBM Bluemixwww.bluemix.net
Tone Analyzer
テキストに表れるトーンや感情を分析するAPI
感情分析はNLUに含まれるものと同じ
日本語未対応
エンドポイントは2種類
⼀般⽤ (General purpose)
感情・性格的傾向・文体の分析が可能
カスタマー・エンゲージメント⽤(Customer Engagement)
ヘルプデスクの会話など顧客接点系に特化した分析が可能
入力:JSON、プレーンテキスト、HTML
出力:検出されたトーン
ユースケースコールセンター、チャットボットなどで顧客の反応の分析
© 2017 IBM Corporation55
IBM Bluemixwww.bluemix.net
検出可能なトーン
⼀般⽤(General purpose)
感情
喜び(joy)、不安(fear)、悲しみ(sad)、怒り(anger)、嫌悪(disguest)
性格的傾向
開放性(openness)、誠実性(conscientiousness)、外向性(extraversion)、協調性(agreeableness)、情緒安定性(emotional)
文体
分析的(analytical)、確信的(confident)、あいまい(tentative)
カスタマー・エンゲージメント⽤(Customer Engagement)
興奮(excited)、いら立ち(frustrated)、無礼(impolite)、丁寧(polite)、悲しみ(sad)、満足(satisfied)、共感(sympathetic)
© 2017 IBM Corporation56
IBM Bluemixwww.bluemix.net
価格体系
課金単位:API呼び出し数
料金
0.924円 / API呼び出し(1-250,000回)
0.1365円 / API呼び出し(250,001 - 5,000,000回)
0.084円 / API呼び出し(5,000,001回以上)
© 2017 IBM Corporation57
IBM Bluemixwww.bluemix.net
Watson APIの利⽤
© 2017 IBM Corporation58
IBM Bluemixwww.bluemix.net
WatsonAPIを利⽤したBluemixでのアプリ開発
サービスごとに提供されるREST APIを呼び出す
サービス自体はWatson Developer Cloud上で稼動している
接続のためのURIやID/PasswordはVCAP_SERVICESから取得
リクエスト/レスポンスの形式はサービスにより異なる
Watson Developer CloudWatsonのAPIを利用 Watson
に要求
Bluemix上でアプリが稼働
他サービスと組み合わせて利用
IBM Bluemix
© 2017 IBM Corporation59
IBM Bluemixwww.bluemix.net
Watson SDK
GitHub上から入手可能
https://github.com/watson-developer-cloud
© 2017 IBM Corporation60
IBM Bluemixwww.bluemix.net
API Explorer
ブラウザ上でAPIの動作確認が可能
https://watson-api-explorer.mybluemix.net/
© 2017 IBM Corporation61
IBM Bluemixwww.bluemix.net
サンプルアプリ
Watson Developer Cloudの各APIの詳細ページには、サンプルアプリのリンクがある
https://www.ibm.com/watson/services/(API名)/
© 2017 IBM Corporation62
IBM Bluemixwww.bluemix.net
IBM Code
サンプルアプリのコードが多数あり、手軽にアプリが作れる
https://developer.ibm.com/code/
© 2017 IBM Corporation63
IBM Bluemixwww.bluemix.net
デプロイメント・モデル
Watson APIは以下の3つのモデルを提供中
テナント (貴社)テナント
(他のお客様)
ツール
マルチ-テナント コグニティブ サービス
マルチ-テナント データベース
クラウド管理 & 共有 パブリック Bluemix
ハードウェア
Bluemixインフラストラクチャーデータセンター
Public
マルチテナント/共有インフラ
Premium
シングルテナント/共有インフラ
Dedicated
シングルテナント/占有インフラ
テナント (貴社)テナント
(他のお客様)
コグニティブサービス
データベース
クラウド管理 & 共有 パブリック Bluemix
ハードウェア
Bluemixインフラストラクチャーデータセンター
コグニティブサービス
データベース
テナント (貴社)
Bluemixインフラストラクチャーデータセンター
ツール
コグニティブ サービス
データベース
クラウド管理 & Bluemix
ハードウェア
マルチテナント(共有)
シングル テナント(占有)
ツール
© 2017 IBM Corporation64
IBM Bluemixwww.bluemix.net
運⽤
© 2017 IBM Corporation65
IBM Bluemixwww.bluemix.net
Watson Developer Cloud(ドイツ)
可⽤性
Watson APIの可⽤性を担保するために地域間で冗長化したい場合は、米国南部とドイツのサービスで構成する必要がある
Bluemix (米国南部)
Watson Developer Cloud(米国南部)Bluemix (英国)
Bluemix (シドニー)
Bluemix (ドイツ)
© 2017 IBM Corporation66
IBM Bluemixwww.bluemix.net
監視・バックアップ
監視
障害通知やメンテナンス情報は、能動的に取りに行く仕組みを検討した方がよい
Status ページ(https://console.bluemix.net/status)で確認
Bluemixサービスの利⽤(Monitoring and Analytics)
簡易的なアプリを実装し、定期的にAPIを呼び出す
バックアップ
レプリケーションやスナップショットを取得し、暗号化されたストレージを使って複数のインスタンスやロケーションにセキュアに保管されている
ただし、学習に使⽤したデータは利⽤者が管理する必要がある
© 2017 IBM Corporation67
IBM Bluemixwww.bluemix.net
セキュリティ
アクセス経路
インターネット経由のみ
HTTPSが利⽤可能で、TLS1.2をサポート
認証・認可
Bluemixコンソール内で資格情報(ID/Credential key)を発行
認証後には⼀時トークンが生成される(有効期間は60分)
データ保管
API呼び出しした際、データは処理されるだけで保管はされない
オプトアウト
API呼出し時に“X-Watson-Learning-Opt-Out=true”のパラメータをヘッダに追加すると、API呼出し時のパラメータをシステムが「API改善のため」にログ取得を行わないようにできる
© 2017 IBM Corporation68
IBM Bluemixwww.bluemix.net
適⽤事例
© 2017 IBM Corporation69
IBM Bluemixwww.bluemix.net
コグニティブ・ドレス
特定のハッシュタグが付いたツイッターの投稿から、喜び・興奮・好奇心などの感情を認識して色が変わるドレス
© 2017 IBM Corporation70
IBM Bluemixwww.bluemix.net
70
第一弾赤ちゃん連れの親向け旅行時の疑問に答えてくれるバーチャルアシスタント
第二弾ハワイ島の旅行者向けパーソナライズされたアドバイス外部APIとの連携
JAL様:マカナちゃん 第二弾
© 2017 IBM Corporation71
IBM Bluemixwww.bluemix.net
Watson Media:全米オープンテニス
試合のデータや音、表情や行動から重要ポイントを特定し、自動的にハイライトシーンを抽出
© 2017 IBM Corporation72
IBM Bluemixwww.bluemix.net