Text Speech APIを試す1

Posted on

JMT西森です。

 

今回は Microsoft Cognitive Service の1つである

・Text Analytics API

を試してみたいと思います。

 

Text Analytics APIですが、大きく以下4つの機能を提供しています。

Sentiment Analysis(感情分析:Positive or Negative) 日本語不可(英語/スペイン語/フランス語/ポルトガル語)
Key Phrase Extraction(キーフレーズ抽出) 日本語可(英語/スペイン語/ドイツ語/日本語)
Topic Detection(トピック検出) 日本語不可(英語のみ)
Language Detection(言語検出) 日本語検出可(120言語をサポート)

今回は、「Sentiment Analysis」の機能を試してみたいと思います。

 

1. 準備
まず最初にMicrosoft Accountの取得と、Cognitive Service Accountの登録が必要です。
こちらについては以下サイトで登録可能ですので、実施します。# 手順割愛

・Microsoft Account
https://www.microsoft.com/ja-jp/msaccount/?lc=1033

・Cognitive Service Account
https://www.microsoft.com/cognitive-services/en-us/

 

次に、Free Subscription Keyの取得を行います。
Cognitive Service Accountにログイン後、画面上の「Get started for free」を選択します。

k.nishimori_20170308_001

 

 

 

 

 

 

 

 

 

リストから「Text Analytics」を探してチェックを入れ、さらに画面下の
「I agree to the Microsoft Cognitive Service ~~~」にチェックを入れ、
最後に「Subscribe」を選択します。

k.nishimori_20170308_002

 

 

 

 

 

 

 

 

 

【My free Subscriptions】の画面で、「Text Analytics」の行があればOKです。
【Key 1】もしくは【Key 2】の値を取得しておいてください。

 

2. Sentiment Analysis を試す
REST APIに分析したいテキストを送信すると、0~1の間のスコアが返ってきます。
スコアが1に近ければ近い程ポジティブ、スコアが0に近ければ近い程ネガティブな感情を持っていることを表します。

 

コード書くのもいいんですが、今回は手抜きしてAPI ReferenceのWebページから動作検証してみます。
Text Analytics APIのホームページから、画面右の「API Reference」を選択します。
k.nishimori_20170308_003

 

 

 

 

 

 

 

 

 

画面左のメニューから「Sentiment」を選択し、続けて「Open API Testing Console」からページ遷移します。

k.nishimori_20170308_004
ちなみに、本ページ下部に各言語でのサンプルコードがあります。

 

ここでは、以下3つの情報を入力します。

Ocm-Apim-Subscription-Key 【1.準備】で取得した free subscription key を入力してください

k.nishimori_20170308_005

 

Request Body – language 今回は英語で試すので、「en」としてください
Request Body – text 解析したい文章を入力してください。

k.nishimori_20170308_006

 

今回使用する文章として、以下2つを試してみました。

<オバマ大統領の真珠湾での演説の1節>
“Here in this quiet harbor, we honor those we lost, and we give thanks for all that our two nations have won — together, as friends.May God hold the fallen in His everlasting arms. May He watch over our veterans and all who stand guard on our behalf. May God bless us all.Thank you.”
出典:http://www.nikkei.com/article/DGXLASGM28H37_Y6A221C1000001/

 

<メリル・ストリープ氏のスピーチの1節>
“There was one performance this year that stunned me. It sank its hooks in my heart. Not because it was good. There was nothing good about it. But it was effective and it did its job. It made its intended audience laugh and show their teeth. It was that moment when the person asking to sit in the most respected seat in our country imitated a disabled reporter, someone he outranked in privilege, power, and the capacity to fight back. It kind of broke my heart when I saw it. I still can’t get it out of my head because it wasn’t in a movie. It was real life.”
出典:http://d.hatena.ne.jp/tuber/20170110/1484023906

 

まずはオバマ大統領の真珠湾演説のほうで試します。
TextSpeechAPI1_007

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

結果はこうなりました。

TextSpeechAPI1_008

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

見て分かる通り非常に1に近いスコアとなっており、非常にPositiveであると認識されています。

 

次に、メリル氏のスピーチのほうで試します。
TextSpeechAPI1_009

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

結果はこうなりました。
TextSpeechAPI1_010

 

 

 

 

 

 

 

 

 

 

 

 

 

こちらも見て分かる通り非常に0に近いスコアとなっており、非常にNegativeであると認識されています。

 

ちなみにトランプ次期大統領がツイッターで”CNNはうそのニュース”と呟いた内容を使って本機能を試したところ、非常にNegativeな内容と認識されました。この機能はあくまでも「テキストの内容が Positive or Negative であるかどうかを判別している」のであって、「発言者の感情を表しているわけではない」ことに注意が必要です。

 

また日本語が使えないのが非常に残念です…が、これは今後に期待したいと思います。
今回はここまで。

LINEで送る