Ibm watson machine learning and watson knowledge stuido 20160827

30
IBM Watsonの機械学習サービス Watson Knowledge Studio 2016 年 8月 27日 IBM アーキテクト 平山 毅

Transcript of Ibm watson machine learning and watson knowledge stuido 20160827

Page 1: Ibm watson machine learning and watson knowledge stuido 20160827

IBM Watsonの機械学習サービスと Watson Knowledge Studio

2016 年 8月 27日IBM アーキテクト 平山 毅

Page 2: Ibm watson machine learning and watson knowledge stuido 20160827

© 2016 IBM Corporation

自己紹介 名前︓平⼭ 毅(ひらやま つよし)Twitter : t3hirayamaFacebook : tsuyoshi.hirayama

2016年2月 IBM入社。アーキテクト。コグニティブコンピューティングを100%クラウドコンピューティングで提供するIBMのモデルに共感し、IBMにジョイン。大学の専攻は統計学で、過去にはデリバティブリアルオプションやデリバティブ証拠⾦計算やキャパシティシュミレーション分析でも活用。【前職】・Amazon Web Services (AWS)

Professional Services Consultant , Enterprise Solutions Architect・Tokyo Stock Exchange (TSE)

IT Service Manager , Enterprise Architect , Derivative Master・Nomura Research Institute (NRI)

Financial Systems Engineer【執筆著書】

Page 3: Ibm watson machine learning and watson knowledge stuido 20160827

© 2016 IBM Corporation

2016年時点でディープラーニングをリードしているIBMとGoogleが一緒に発表するということで

コンセプトやアプローチの違いは知りたいですよね︖

Page 4: Ibm watson machine learning and watson knowledge stuido 20160827

© 2016 IBM Corporation

ディープラーニングとは

機械学習

ニューラルネットワーク

ディープラーニング

・蓄積されたビックデータを元に反復学習することで、思考を代⾏し、結果を返す

・⼈間の脳の判断の仕組みを単純化し、入⼒層、中間層、出⼒層の関数をまとめたもの

・ニューラルネットワークの中間層を増やして機械学習すること

ビックデータ解析技術 on GPU or OpenPower (次は量⼦コンピューティングの世界)

ディープラーニング = 機械学習 + ニューラルネットワーク

Page 5: Ibm watson machine learning and watson knowledge stuido 20160827

© 2016 IBM Corporation

オープンソース提供クラウド提供

脳の構造を意識した機械学習(ディープラーニング)を基本にしている点は同じ

2015年登場囲碁王者に勝利

2011年登場チェス王者に勝利

アプローチの特徴

コンシューマエンタープライズを意識(ヘルスケア、⾦融、製造、等の業界ごとの機械学習モデルの枠組がある)

クラウドがエンタープライズ︖

Page 6: Ibm watson machine learning and watson knowledge stuido 20160827

© 2016 IBM Corporation

Watson on IBM Cloud の特徴

IBM は コグニティブ・ソリューション とクラウド・プラットフォーム の会社です。IBM is now emerging as aCognitive solutions andCloud platform company.

Software as a Service

Platform as a Service

Infrastructure as a Service

Public

Shared

2016年のIBM企業方針

コグニティブコンピューティングは100%クラウドコンピューティングから提供される。

Shared

Shared

Shared

Dedicated

Dedicated

Dedicated

Private

Dedicated

エマージング機密性の高い

エンタープライズ

Page 7: Ibm watson machine learning and watson knowledge stuido 20160827

IBMが開発した質問応答システム・意思決定支援システムである。『⼈工知能』と紹介されることもあるが、IBMは、自然⾔語を理解・学習し⼈間の意思決定を支援する『コグニティブ・コンピューティング・システム(Cognitive Computing System)』と定義している。 (Wikipedia調べ)

IBM Watson

IBM Watsonは、自然⾔語処理と機械学習を使用して、大量の非構造化データから解釈し、根拠をもとに仮説を生成し、経験から学習していく仕組みのため、処理が増えるほど知識を蓄積していく。「過去のインタラクション」「教育」「情報の取り込み」の3つの要素で、より賢くなっていく。

Page 8: Ibm watson machine learning and watson knowledge stuido 20160827
Page 9: Ibm watson machine learning and watson knowledge stuido 20160827

WEBプログラム可能なシステムの時代

メインフレームの時代

学習するシステムの時代(コグニティブ・システム)

Cognitive Computing = 次世代を担うコンピューター

・COBOL / C・ISAM・⼊出⼒装置

・Java・SQL・PCキーボード

・API・Watson・モバイル、IoT

(個⼈的な意⾒)⼈間が使いやすい体に優しい役に⽴つコンピューターになる

・言語・データストア・⼊出⼒インターフェース

Page 10: Ibm watson machine learning and watson knowledge stuido 20160827

”Watson has now launched a third era. We call it cognitive computing.“ Ginni Rometty at World of Watson, Brooklyn, New York May 5, 2015

• コグニティブ・システムは学習する。プログラミングされるのではない。“機械学習”を超えたシステムである

• コグニティブ・システムは非構造化データと⾃然言語を理解するが、自然⾔語のプロセッサーというわけではない

• コグニティブ・システムに“⼈工知能”の側面があったとしても、“Augmented(進化する)”知能と呼ぶ方が正しいだろう。なぜなら、ワトソンは⼈間の経験を向上させ、増強し、加速させることができるからだ

• これまでのコンピュータは計算だけをしてきた。白か⿊か、正しいか否か。ワトソンは全く異なる。ワトソンは解答の根拠を示すーまるで⼈間のように。ワトソンはパターンを⾒つけ、⽩か⿊かだけでなくグレーの解答をも示すことができる– 現実世界でのように。

Cognitive System

IBMはコグニティブ技術をシステムに組み込む段階に来ている。従来の⼊出⼒型のWEBシステムを根本から変える。

Page 11: Ibm watson machine learning and watson knowledge stuido 20160827

© 2016 IBM Corporation

IBM Watson の カテゴリーと目的

言語・文字・感情 音声 画像 データ

2015年3月にAlchemy社を買収し統合。ディープラーニングを活用し、企業向けのリアルタイムデータ分析や非構造化データ処理を目的とした⾼性能アプリケーションを開発する企業

計算図会話(話す・聴く)文章(読む・書き)

コミュニケーションを担う(WEBの世界では十分)代替インターフェースとして、⼈間の五感のうち視覚、聴覚を担う

Page 12: Ibm watson machine learning and watson knowledge stuido 20160827

© 2016 IBM Corporation

IBM Watson の 基本的な使い方

Watson Developer Cloud

API呼び出し Watsonに要求

Bluemix上でアプリが稼働

他サービスと組み合わせ利⽤

IBM Bluemix

�サービス自体はWatson Developer Cloud上で稼動�接続のためのURIやID/PasswordはVCAP_SERVICES(環境変数)から取得�Request / Response の形式はサービスにより異なる

IBM Cloud の PaaS であるBluemix 上のアプリからREST APIで呼び出す

コグニティブアプリケーション

Page 13: Ibm watson machine learning and watson knowledge stuido 20160827

© 2016 IBM Corporation

IBM Watson on Blumex カタログ

Page 14: Ibm watson machine learning and watson knowledge stuido 20160827

© 2016 IBM Corporation

日本語されたWatson API 機能

API名称 API略称 概要Natural Language Classifier(自然言語分類) NLC ⾃然⾔語を理解し、学習に基づき

適切な「意図」を返答Retrieve & Rank(検索&ランクつけ) R&R 機械学習アルゴリズムを利⽤した

検索エンジンDocument Conversion(文書変換) DoC テキスト文書へのフォーマット変

Dialog(対話) DLG

ルールベースでアプリケーションとエンドユーザが対話 する会話応答 システム

Text To Speech(音声合成) TTS テキストの音声変換

Speech To Text(音声認識) STT 音声のテキスト変換

言語

音声

ソフトバンク様提供のメニュー、APIを使う形が前提(現時点)

Page 15: Ibm watson machine learning and watson knowledge stuido 20160827

© 2016 IBM Corporation

Watson IoT での活用例

⾳声を認識しテキストに変換する

自然⾔語分類で「Rain」を抽出

関連拡張で「Rain」の関連項目を抽出(機械学習)

テキストを⾳声に変換する

天候情報を取得

Page 16: Ibm watson machine learning and watson knowledge stuido 20160827

© 2016 IBM Corporation

Retrieve and Rank

回答#2回答#1

回答#3回答候補2回答候補1

回答候補3

質問”トランクはどうやって開けるの︖”回答ユニットID “1-1”関連度=1

質問”トランクはどうやって開けるの︖”回答ユニットID “1-1”関連度=2

質問=”トランクはどうやって開けの︖”回答ユニットID=1-1関連度=3

関連度例︓0 : 関連なし1 : やや関連する2 : 関連する3 : 非常に関連する4 : 完全な回答

トレーニング・データ(Ground Truth)

・・・

・・・

“Ranker”

IBM Watson Retrieve and Rank サービスは、検索と機械学習アルゴリズムの組み合わせを使用してデータの「サイン」を検出することで、照会に対して最も関連性がある情報を⾒つけ出します。開発者は、Apache Solr 上にビルドされたサービスにデータをロードし、既存の関連結果に基づいて訓練した機械学習モデルを活用して、質問や照会に対応するより有用な検索結果をエンドユーザーに提供します。

Page 17: Ibm watson machine learning and watson knowledge stuido 20160827

© 2016 IBM Corporation

Retrieve and Rank のサンプル

質問項目を⽂章で入⼒⼊⼒層

中間層︓ニューラルネットワーク

出⼒層(ディープラーニング経由)

出⼒層(通常のSolr検索)

http://retrieve-and-rank-demo.mybluemix.net/rnr-demo/dist/#/

フラットに検索結果が出⼒。

学習済の検索結果が順位付けされ出⼒。

Page 18: Ibm watson machine learning and watson knowledge stuido 20160827

© 2016 IBM Corporation

Retrieve and Rank の API

POST /v1/rankers/{ranker_id}/rank

https://gateway.watsonplatform.net/retrieve-and-rank/api

curl -X POST -u "{username}":"{password}" -F [email protected] "https://gateway.watsonplatform.net/retrieve-and-rank/api/v1/rankers/B2E325-rank-67/rank"

{"ranker_id": "B2E325-rank-67","name": "My ranker","url": "https://gateway.watsonplatform.net/retrieve-and

rank/api/v1/rankers/B2E325-rank-67","top_answer": "Answer1","answers": [

{"answer_id": "Answer1","score": 10,"confidence": 0.726231142375928

},{

"answer_id": "Answer23","score": 9,"confidence": 0.6511395912945229

{... <-- additional answers}

■Retrieve and rankのエンドポイント

最も⾼い確率の回答は経験上、「Answer 1」だろう

Page 19: Ibm watson machine learning and watson knowledge stuido 20160827

© 2016 IBM Corporation

Natural Language Classifier (NLC)

“Classifier”

Natural Language Classifier

意図

トレーニングデータ

サンプル質問 サンプル

質問

サンプル質問 サンプル

質問

新しい質問

トレーニングモデル

Natural Language Classifier サービスは、機械学習とコンピューター認識技法を使って、⽂または句に最も一致したクラスを戻します。例えば、質問を送信すると、このサービスは最も適した回答かまたは質問者のアプリケーションが次に取るべき操作を示すキーを戻します。 管理者は学習させるための典型的なストリングのセットとそれぞれのセットに対する 1 つ以上の正しいクラスのセットを供給して、分類サービスのインスタンスを作成します。学習を終えると、その新しい分類サービスが、新しい質問または句を受け取り、それに最も一致するものを確度を示す値と共に戻すことができるようになります。

Page 20: Ibm watson machine learning and watson knowledge stuido 20160827

© 2016 IBM Corporation

Natural Language Classifier (NLC) のサンプル

質問項目を⽂章で入⼒⼊⼒層

中間層︓ニューラルネットワーク

出⼒層(ディープラーニング経由)

分類とその信頼性が表示

Page 21: Ibm watson machine learning and watson knowledge stuido 20160827

© 2016 IBM Corporation

Natural Language Classifier (NLC) のAPIhttps://gateway.watsonplatform.net/natural-language-classifier/api■Natural Language Classifierのエンドポイント

GET /v1/classifiers/{classifier_id}/classifyPOST /v1/classifiers/{classifier_id}/classify

curl -G -u "{username}":"{password}" "https://gateway.watsonplatform.net/natural-language-classifier/api/v1/classifiers/10D41B-nlc-1/classify?text=How%20hot%20will%20it%20be%20today%3F"

{"classifier_id": "10D41B-nlc-1","url":

"https://gateway.watsonplatform.net/natural-language-classifier/api/v1/classifiers/10D41B-nlc-1/classify?text=How%20hot%20wil/10D41B-nlc-1",

"text": "How hot will it be today?","top_class": "temperature","classes": [

{"class_name": "temperature","confidence": 0.9998201258549781

},{

"class_name": "conditions","confidence": 0.00017987414502176904

}

最も⾼い確率の分類は経験上、「temperture」だろう

Page 22: Ibm watson machine learning and watson knowledge stuido 20160827

© 2016 IBM Corporation

統計解析は、⺟集団・サンプリングが重要︕機械学習も基本は同様で、これが精度に依存します

Page 23: Ibm watson machine learning and watson knowledge stuido 20160827

© 2016 IBM Corporation

Watson Knowledge Studio

Watson Knowledge Studioの学習モデル

業界に固有の⾔語的なニュアンス、意味、関係を理解する機械学習モデルを作成するためにドメインを作成して業界最適化するもの。その指定された業界ドメインを専門家にするため、非構造化ドメインの⽂献に注釈を付けるための使いやすいツールを提供。ドメインの⾔語を理解し、固有の機械学習モデルを作成するために、アノテーションの仕組みを採用。アノテーター・コンポーネントの精度は、最終的にはそれが⾒ているパターンから学び、新しい⽂書の大規模な収集にこれらのパターンを認識できるアルゴリズムで、反復テストを通じて改善されていく。

アノテーターが反復テストを⾏う精度を上げる

Page 24: Ibm watson machine learning and watson knowledge stuido 20160827

© 2016 IBM Corporation

機械学習のためのアノテーターのコンポーネントと役割

アノテーターが反復テストを繰り返して・・・・精度があがったところで機械学習モデルを反映する

アノテータープロセスマネージャー(APM)

⼈間アノテーター(HA)

Watson Knowledge Studio の全体のプロセス管理責任者

提供されたガイドラインに従って提供されるツールを使用して⽂書に“注釈“を付けるための責任者

※機械学習はこのプロセスを繰り返し精度を⾼めたものが優位

Page 25: Ibm watson machine learning and watson knowledge stuido 20160827

© 2016 IBM Corporation

Watson 機械学習のためのデータモデル

⽂章の集合体 注釈された⽂書

注釈する⼈間

Page 26: Ibm watson machine learning and watson knowledge stuido 20160827

© 2016 IBM Corporation

Corpus(⽂書の集合体)の反映

Page 27: Ibm watson machine learning and watson knowledge stuido 20160827

© 2016 IBM Corporation

Ground Truth(注釈された⽂書)への反映

Page 28: Ibm watson machine learning and watson knowledge stuido 20160827

© 2016 IBM Corporation

Watson on Bluemix を始めてみよう

IBM Bluemixフリートライアルアカウント作成手順http://qiita.com/KenichiSekine/items/6ad49b25167b3f4cdb63

30日間のフリートライアル

継続使⽤の手続き

Bluemixご紹介

IBM IDを登録しトライアル開始

従量課⾦(PAYG)

サブスクリプション

保留※フリートライアル終了から 60日で、アプリケーション、サービス構成を削除

or

Page 29: Ibm watson machine learning and watson knowledge stuido 20160827

© 2016 IBM Corporation

Page 30: Ibm watson machine learning and watson knowledge stuido 20160827

© 2016 IBM Corporation

この資料に含まれる情報は可能な限り正確を期しておりますが、日本アイ・ビー・エム株式会社の正式なレビューを受けておらず、当資料に記載された内容に関して日本アイ・ビー・エムは何ら保証するものではありません。ワークショップ、セッション、および資料は、IBMまたはセッション発表者によって準備され、それぞれ独自の見解を反映したものです。それらは情報提供の目的のみで提供されており、いかなる参加者に対しても法律的またはその他の指導や助言を意図したものではなく、またそのような結果を生むものでもありません。本講演資料に含まれている情報については、完全性と正確性を期するよう努力しましたが、「現状のまま」提供され、明示または暗示にかかわらずいかなる保証も伴わないものとします。本講演資料またはその他の資料の使用によって、あるいはその他の関連によって、いかなる損害が生じた場合も、IBMは責任を負わないものとします。本講演資料に含まれている内容は、IBMまたはそのサプライヤーやライセンス交付者からいかなる保証または表明を引きだすことを意図したものでも、IBM ソフトウェアの使用を規定する適用ライセンス契約の条項を変更することを意図したものでもなく、またそのような結果を生むものでもありません。本講演資料でIBM製品、プログラム、またはサービスに言及していても、IBMが営業活動を行っているすべての国でそれらが使用可能であることを暗示するものではありません。本講演資料で言及している製品リリース日付や製品機能は、市場機会またはその他の要因に基づいてIBM独自の決定権をもっていつでも変更できるものとし、いかなる方法においても将来の製品または機能が使用可能になると確約することを意図したものではありません。本講演資料に含まれている内容は、参加者が開始する活動によって特定の販売、売上高の向上、またはその他の結果が生じると述べる、または暗示することを意図したものでも、またそのような結果を生むものでもありません。パフォーマンスは、管理された環境において標準的なIBMベンチマークを使用した測定と予測に基づいています。ユーザーが経験する実際のスループットやパフォーマンスは、ユーザーのジョブ・ストリームにおけるマルチプログラミングの量、入出力構成、ストレージ構成、および処理されるワークロードなどの考慮事項を含

む、数多くの要因に応じて変化します。したがって、個々のユーザーがここで述べられているものと同様の結果を得られると確約するものではありません。記述されているすべてのお客様事例は、それらのお客様がどのようにIBM製品を使用したか、またそれらのお客様が達成した結果の実例として示されたものです。実際の環境コストおよびパフォーマンス特性は、お客様ごとに異なる場合があります。IBM, IBM ロゴ、ibm.com, は、世界の多くの国で登録されたInternational Business Machines Corporationの商標です。他の製品名およびサービス名等は、それぞれIBMまたは各社の商標である場合があります。現時点での IBM の商標リストについては、www.ibm.com/legal/copytrade.shtmlをご覧ください。