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
390
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
RDS for Db2 はじめの一歩・バックアップ編 / 20240725 First RDS for Db2 backup
kyokonishito
0
180
RDS for Db2 はじめの一歩・HA(高可用性)編 #2/ 20240712 First RDS for Db2 HA
kyokonishito
0
240
RDS for Db2 はじめの一歩・作り方編 #2/ 20240628 First RDS for Db2 creation
kyokonishito
0
370
watsonx.dataとも連携・オブジェクトストレージの大量データをデータウエアハウス(Db2 Warehouse)でらくらく分析 / IBMTechXchangeJP-2023-DM02
kyokonishito
0
99
Db2 REST APIを使ってみよう! 〜Db2 on Cloud編〜 / 20230727 Db2 REST API
kyokonishito
0
440
1時間でわかる&魅せる! Db2 LUW 11.5.8の最新情報: デモ資料 / 20230627 Db2 Demo
kyokonishito
0
360
Db2でシェアサイクルポートの地理情報分析をやってみよう! / 20220928-Db2-Spatial
kyokonishito
0
210
Jupyter NotebookからDb2へらくらくアクセス - Db2 Magic コマンドを使おう! - / 20220421 Jupyter Notebooks with Db2
kyokonishito
0
380
IBMの考えるデータ戦略を徹底解説&デモ / 20220405-Db2-Demo
kyokonishito
0
480
Other Decks in Technology
See All in Technology
DynamoDB でスロットリングが発生したとき_大盛りver/when_throttling_occurs_in_dynamodb_long
emiki
1
410
CysharpのOSS群から見るModern C#の現在地
neuecc
2
3.4k
100 名超が参加した日経グループ横断の競技型 AWS 学習イベント「Nikkei Group AWS GameDay」の紹介/mediajaws202411
nikkei_engineer_recruiting
1
170
ノーコードデータ分析ツールで体験する時系列データ分析超入門
negi111111
0
410
Incident Response Practices: Waroom's Features and Future Challenges
rrreeeyyy
0
160
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
28
13k
RubyのWebアプリケーションを50倍速くする方法 / How to Make a Ruby Web Application 50 Times Faster
hogelog
3
940
IBC 2024 動画技術関連レポート / IBC 2024 Report
cyberagentdevelopers
PRO
1
110
第1回 国土交通省 データコンペ参加者向け勉強会③- Snowflake x estie編 -
estie
0
130
Why App Signing Matters for Your Android Apps - Android Bangkok Conference 2024
akexorcist
0
130
Python(PYNQ)がテーマのAMD主催のFPGAコンテストに参加してきた
iotengineer22
0
490
エンジニア人生の拡張性を高める 「探索型キャリア設計」の提案
tenshoku_draft
1
130
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
94
13k
What's new in Ruby 2.0
geeforr
343
31k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
0
96
Ruby is Unlike a Banana
tanoku
97
11k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
Code Review Best Practice
trishagee
64
17k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
GraphQLとの向き合い方2022年版
quramy
43
13k
10 Git Anti Patterns You Should be Aware of
lemiorhan
655
59k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.5k
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メソッドの使い⽅を確認