Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Pythonから使おうWatson! / Let's try Watson with python
Search
Kyoko Nishito
August 24, 2019
Technology
0
370
Pythonから使おうWatson! / Let's try Watson with python
2019-08-24 (土) 13:15-14:00 「Pythonから使おうWatson!」
@オープンデベロッパーズカンファレンス(ODC)2019 Tokyo
での使用資料です。
Kyoko Nishito
August 24, 2019
Tweet
Share
More Decks by Kyoko Nishito
See All by Kyoko Nishito
watsonx.dataとも連携・オブジェクトストレージの大量データをデータウエアハウス(Db2 Warehouse)でらくらく分析 / IBMTechXchangeJP-2023-DM02
kyokonishito
0
59
Db2 REST APIを使ってみよう! 〜Db2 on Cloud編〜 / 20230727 Db2 REST API
kyokonishito
0
180
1時間でわかる&魅せる! Db2 LUW 11.5.8の最新情報: デモ資料 / 20230627 Db2 Demo
kyokonishito
0
280
Db2でシェアサイクルポートの地理情報分析をやってみよう! / 20220928-Db2-Spatial
kyokonishito
0
160
Jupyter NotebookからDb2へらくらくアクセス - Db2 Magic コマンドを使おう! - / 20220421 Jupyter Notebooks with Db2
kyokonishito
0
320
IBMの考えるデータ戦略を徹底解説&デモ / 20220405-Db2-Demo
kyokonishito
0
420
Db2 and Jupyter Notebooks
kyokonishito
0
250
Jupyter NotebookからDb2へらくらくアクセス - Db2 Magic コマンドを使おう! - / Jupyter Notebooks with Db2
kyokonishito
0
430
Auto AI 機械学習 時系列予測作成 / Auto AI Time Series
kyokonishito
0
120
Other Decks in Technology
See All in Technology
やっていきテスト
k6s4i53rx
0
160
ビジネスロジックを「型」で表現するOOPのための関数型DDD / Functional And Type-Safe DDD for OOP
yuitosato
29
11k
実務への応用例から考える 変更に強いオブジェクト指向設計 / 20240324-ooc2024
bengo4com
7
5k
ハイパフォーマンスな組織をつくるための開発生産性の考え方 / developer-productivity-high-performer-link-and-motivation
lmi
3
240
HoneycombとOpenTelemetryでオブザーバビリティに入門してみる
sumiren
2
150
GitHub最新情報キャッチアップ 2024年3月
dzeyelid
16
3.2k
技術広報経験0のEMがエンジニアブランディングをはじめてみた
coconala_engineer
1
130
エンジニア候補者向け資料2024.03.28.pdf
macloud
0
2.9k
初心者が行く!サーバレスWebアプリ開発の道
nagaharutogawa
0
440
チーム単位で保守性を高める:独自指標と向上にむけた実践
tarappo
0
300
.NETの非同期戦略とUnityとの相互運用
neuecc
2
2.4k
OpenTelemetry実践 はじめの一歩
taxin
0
300
Featured
See All Featured
The Mythical Team-Month
searls
214
42k
Pencils Down: Stop Designing & Start Developing
hursman
115
11k
It's Worth the Effort
3n
180
27k
Web development in the modern age
philhawksworth
201
10k
Agile that works and the tools we love
rasmusluckow
323
20k
Music & Morning Musume
bryan
39
5.5k
VelocityConf: Rendering Performance Case Studies
addyosmani
319
23k
Designing Experiences People Love
moore
135
23k
In The Pink: A Labor of Love
frogandcode
137
21k
Facilitating Awesome Meetings
lara
39
5.5k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
657
120k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
501
140k
Transcript
Pythonから 使おうWatson! Kyoko Nishito Developer Advocate ⽇本アイ・ビー・エム(株) 13:15 〜 14:00
SNS・写真撮影OK! ハッシュタグ #opendevcon #TryIBMDev
Speaker ⻄⼾ 京⼦ Kyoko Nishito IBM Developer Advocate KyokoNishito
このセッションについて ⽬的 Watsonの紹介とPythonからAPIを使⽤する ⽅法をデモで紹介 ゴール Pythonから Watson APIを使えるように なる
本⽇の資料 http://ibm.biz/odc2019watson KyokoNishito でもお知らせ予定
ちょっと宣伝... セッションで学んだことをOutputしよう︕ -Watson開発⼊⾨ 書籍プレゼントキャンペーン- 参加したセッションやセミナーをベースに技術ブログに書いたら、 市販書籍「Watson開発⼊⾨」をプレゼント!! 応募条件 •誰でもアクセス可能なサイトに公開していること •IBM Cloudの技術やサービスを利⽤・解説していること
•応募時点で動作可能なコンテンツであること 応募⽅法: 以下を記載してメールにてご連絡ください。
[email protected]
1. 掲載先URL 2. 記事概要 3. 書籍送付先(郵便番号/住所/⽒名) 4. IBM CloudのアカウントID(登録メールアドレス) Subjectに“Watson本希望“と記載してください OK": 〇〇を△△してみた、CODE Patterns 翻訳、◦◦トラブルシューティングなどのブログ NG#: セッション楽しかったなど感想のみのブログ、記事転載、まとめ記事のみのブログ
6 Watson って 聞いたことありますか︖
Watson って 使ったことありますか︖ 7
IBM Cloudの アカウントがあれば、 誰でもWatsonが使えます! 8
IBM Cloud ライト・アカウント クレジットカード不要で、期間無制限で Watson含めた多数のAPIとサービが 無料で使えるアカウントです。 9 ・必要なのはメールアドレス ・クレジットカード不要 ・無償で期限なし
・今⽇から使える IBM Cloudへ登録 https://ibm.biz/BdzMft
10 Watson って 何ができるの︖
None
Cloud上で使えるAIサービス ・・・ Internet PC Azure AWS GCP IBM Cloud Smart
Phone Server 各社クラウド Direct Link
13 Watsonの製品・サービス⼀覧 ⼼理系 ⾔語系 Watsonの製品・サービスは⽇々進化しています。 2019年2⽉12⽇現在のPublic Cloud上のサービス⼀覧は以下の通りとなります。 https://www.ibm.com/watson/jp-ja/developercloud/services-catalog.html Watson Assistant
アプリケーションに⾃然⾔語インターフェースを追加 してエンドユーザとのやり取りを⾃動化 照会応答系 Text to Speech テキスト⽂章を⾳声に変換する Speech to Text ⾳声をテキスト⽂章に変換する Visual Recognition 画像コンテンツに含まれる意味を検出する 知識探索系 ⾳声系 Discovery 先進的な洞察エンジンを利⽤して、データの隠れた価 値を解明し、回答やトレンドを発⾒する Discovery News Discovery上に実装され、エンリッチ情報も付加された ニュースに関する公開データセット Personality Insights テキストから筆者の性格を推定する Language Translator ※2 ⾃然⾔語テキストについて他⾔語へ翻訳を⾏う Natural Language Understanding ※1 ⾃然⾔語処理を通じてキーワード抽出、エンティティ ー抽出、概念タグ付け、関係抽出などを⾏う Natural Language Classifier テキスト⽂章の分類を⾏う(質問の意図推定など) Tone Analyzer(⽇本語未対応) テキストから筆者の感情、社交性、⽂体を解析する Knowledge Studio コーディングなしに、業務知識から⽣成した機械学習 モデルで、⾮構造テキストデータから洞察を取得 画像系 データ分析系 Watson Studio 機械学習モデル向けの作成と学習、データの準備と分 析のための統合環境 Machine Learning 機械学習モデル・深層学習モデルの作成、学習、実⾏ 環境 Knowledge Catalog 分析に必要なデータを加⼯・カタログ化できる分析デ ータ準備環境 ※1 感情分析は⽇本語未対応です。 ※2 ⽇本語翻訳は英⽇・⽇英のみ対応しています。 Watson OpenScale AIに信頼性と透明性をもたらし、判定結果を説明し、 バイアスを⾃動的に排除する Compare and Comply(⽇本語未対応) 契約書や調達仕様書を分析し、⽂書間の⽐較や重要要 素の抽出を⾏う 本⽇ご紹介するAPI
14 Watson APIの特徴 • ネットワーク経由でアクセス • REST形式のインターフェイス • Java, Python,
Node.jsなどに対応した APIライブラリ • https://github.com/watson-developer-cloud
15 Watson API REST形式のインターフェース ・・・ HTTP Request GET POST PC
HTTP Response JSON JSON Azure AWS GCP IBM Cloud Smart Phone Server 各社クラウド
16 Watson API ざっくりご紹介
Watson Assistant 17 ü チャットボットのような対 話アプリケーションの開発 に最適 ü 会話フローをグラフィカル に開発できるツールを提供
ü 作成した会話フローをAPIで 呼び出し Watson: こんにち はシステムサポー トです。何かお困 りですか︖ User: 交通費精算シ ステムだよ。 エンティティー: システム Value: 交通費精算システム Watson: 何のシス テムにログインで きないのですか︖ User: ログインでき ないよ 意図: ログイン不可 Watson:交通費精 算システムにログ インできない場合 のチェック項⽬の URLを送ります http://xxx 交通費精算システムのログイ ン不可にに関する情報を検索 色々な言い回し “ログインエラーになる” “ログインが失敗するけど” 色々な言い回し “交通費のやつ” “精算システム” Webツールで インテント、 エンティ ティー、 会話フロー を作成可能 https://www.ibm.com/watson/jp- ja/developercloud/conversation.html
DEMO 19 DOC ID / Month XX, 2018 / ©
2018 IBM Corporation Watsonを使⽤したLINE chat bot
参考情報 20 LINEチャットボットとWatsonを連携する https://medium.com/@taiponrock/line%E3%83 %81%E3%83%A3%E3%83%83%E3%83%88% E3%83%9C%E3%83%83%E3%83%88%E3%81 %A8watson%E3%82%92%E9%80%A3%E6%90 %BA%E3%81%99%E3%82%8B-8a7d89a49e57 10分で解説︕ Watson
Assistantでチャットボットを開発する https://www.youtube.com/watch?v=ZRwsu4OXLeE
Natural Language Understanding (NLU) üテキストを分析し、概念、エンティ ティー、キーワード、カテゴリー、 感情、関係、意味役割などのメタ データを抽出※ ü事前学習済みであり、学習なしで解 析結果を取得
抽出できるもの • エンティティ(Entities) • 関係(Relations) • 概念(Concepts) • キーワード(Keywords) • 評判 (Sentiment) • 感情 (Emotion) ※ • カテゴリー(Categories) • 構⽂解析(Semantic Roles) ※ 感情分析(Emotion)は⽇本語には対応していません https://www.ibm.com/watson/services/natural-language- understanding/
DEMO 22 https://natural-language-understanding-demo.ng.bluemix.net/ 今⽇のニュースからメタデータを抽出してみます
üWatsonを利⽤した⽂書検索 エンジン ü膨⼤なテキストデータを取 り込み、NLUで解析、検索に 利⽤ ü⾃然⾔語でも検索できる (またはDiscovery Query Language(DQL)) Discovery
https://www.ibm.com/watson/jp-ja/developercloud/discovery.html
Discovery News üDiscoveryのインスタンスを作成すると、世界各地のニュー ス記事を保持している、事前作成済み読み取り専⽤コレク ション Discovery News がすぐに使える状態になります。 ・データ登録の必要なしにすぐに使える ・IBM選定の10万のニュースソース
・1⽇当たり30万件以上の記事(⽇本語記事は1⽇あたり17,000件)
DEMO 25 気になるニュースを検索してみましょう︕ https://discovery-news-demo.ng.bluemix.net/
26 Visual Recognition • 顔検出(Facial Detection): • イメージ内の⼈物の顔を検出し、顔の⼀般的な年齢層と 性別も⽰します。 •
画像認識「⼀般種別」(General Tagging): • 事前学習済みの分類器の出⼒を返します • 画像認識「カスタム」: • 識別を⾏いたいクラスのイメージを事前学習させ、その 分類器の出⼒を返します。 事前学習 不要 事前学習 必要 https://www.ibm.com/watson/jp-ja/developercloud/visual-recognition.html
DEMO 27 後ほどPythonで実施︕
Speech to Text Text to Speech ⾳声をテキストに テキストを⾳声に https://www.ibm.com/watson/jp-ja/developercloud/text-to-speech.html https://www.ibm.com/watson/jp-ja/developercloud/text-to-speech.html
Language Translator 翻訳︕ https://www.ibm.com/watson/jp-ja/developercloud/language-translator.html Natural Language Classifier ⾃然⾔語分類 https://www.ibm.com/watson/jp-ja/developercloud/nl-classifier.html
Personality Insights テキストから筆者の性格を推定 Tone Analyzer(⽇本語未対応) テキストから筆者の感情、社交 性、⽂体を解析 https://www.ibm.com/watson/jp-ja/developercloud/personality-insights.html https://www.ibm.com/watson/jp-ja/developercloud/tone-analyzer.html
31 © 2018 IBM Corporation Personality Insights テキストから筆者の性格を推定する DEMO https://personality-insights-demo.ng.bluemix.net/
32 Watson APIって 具体的にどう使うの︖
Watson APIの使い⽅の基本 33 1. IBM Cloudにログインして必要なサービスを作成い ます 2. 作成したサービスの資格情報である API
KEY(API鍵)、URLを取得 3. 取得したAPI KEY、URLを指定してAPIを呼び出す APIの詳細はこちらから確認 https://cloud.ibm.com/apidocs 本⽇はpythonのSDKを Watson Studioのnotebookから使⽤します。
34 実際にやってみましょう!
35 DEMO https://github.com/kyokonishito/python_watson Lab3をやります Watson StudioのJupyter Notebookを使います PythonからVisual Recognition(画像認識)使います
IBM Developer https://developer.ibm.com/jp/ AIやクラウドなどのアプリ開発に役⽴つ記事、のポータルサイト
IBM Code Patterns ⽇本語版: https://ibm.biz/ibmcodejp 英語版: https://developer.ibm.com/patterns/ ソースコードはGitHubで公開 ソースコードはApache2.0ライセンスで改変・商⽤利⽤がOKです ⽇本語版へのリン
まとめ • PythonからSDKを使ってWatson APIは簡単に呼び出 せます。 • PythonでWatsonを試してみましょう! ぜひお試しください︕ ライトアカウントでお試しできます。 アカウント作成はこちら
https://ibm.biz/BdzMft
39 twitter.com/KyokoNishito developer.ibm.com/jp/patterns/ IBM Watson Thank you
40 1. APIの詳細はこちらから確認 https://cloud.ibm.com/apidocs 参考: APIの使い⽅を確認する⽅法 クリック
41 2. 今回はPythonを使うのでPythonのタブを確認 他の⾔語の SDKから使 う場合は対 応する⾔語 をクリック します
42 3. 例えばTranslateメソッドの使い⽅を確認