Azure text analytics apiつかってみる

20
Azure Text Analytics API 2017/04/03

Transcript of Azure text analytics apiつかってみる

Page 1: Azure text analytics apiつかってみる

Azure Text Analytics API

2017/04/03

Page 2: Azure text analytics apiつかってみる

テキストの内容からタグを自

動で生成したいんだー!!!

Page 3: Azure text analytics apiつかってみる

Azure Analytics

API

センチメントとトピックを簡単に評価して、ユーザーが求めるものを理解するサービス。

送信したテキストからセンチメント、キー フレーズ、トピック、および言語を検出することができる。

https://docs.microsoft.com/ja-jp/azure/machine-

learning/machine-learning-apps-text-analytics

Page 4: Azure text analytics apiつかってみる

検出できる内容

センチメント

キーフレーズ

トピック

ドキュメントがどの言語かを知りたい

内容が肯定的か否定的かを知りたい

ドキュメントの話題を抽出

複数のドキュメントから話題を抽出

言語

Page 5: Azure text analytics apiつかってみる

センチメント

Page 6: Azure text analytics apiつかってみる

2017年03月時点では以下の言語のみ。

en (英語)

es (スペイン語)

fr (フランス語)

pt (ポルトガル語)

センチメント:サポート言語

Page 7: Azure text analytics apiつかってみる

Japanese

がねーじゃん(´・∀・`)♡ウキャ

Page 8: Azure text analytics apiつかってみる

センチメントは日本語に対応していないけど、Translator Text APIと組

み合わせればできるかも。

アプリケーション

Translator Text API

Text Analytics API

Translator Text API

①日本語から英語に変換

②英語で解析

③日本語に変換

お金か掛かりそう&レスポンスおそそそう。

Page 9: Azure text analytics apiつかってみる

キーフレーズ

Page 10: Azure text analytics apiつかってみる

2017年03月時点では以下の言語のみ。

en (英語)

es (スペイン語)

de (ドイツ語)

ja (日本語)

キーフレーズ:サポート言語

Page 11: Azure text analytics apiつかってみる

Japaneseが

あるじゃん!アッヒャッヒャ!ヽ(゚∀゚)ノアッヒャッヒャ!

Page 12: Azure text analytics apiつかってみる

トピック

Page 13: Azure text analytics apiつかってみる

特にサポート言語については明言されていない。

これは新しくリリースされた API であり、送信されたテキスト レコードの一覧に基づき検出されたトピ

ックの上位を返します。トピックはキー フレーズ、つまり、1 つまたは複数の関連単語で特定されます。

この API は、レビューやユーザー フィードバックなど、人間が書いた短いテキストで効果的に機能する

ように設計されています。

とのこと。

複数の異なるドキュメントからトピックを生成したい時に使うってこと

だから、今回の目的とは違うかな。

トピック:サポート言語

Page 14: Azure text analytics apiつかってみる

キーフレーズを

ゲットしてみる。

Page 15: Azure text analytics apiつかってみる

APIのパラメータについて

Ocp-Apim-Subscription-Key <your API key>

Content-Type application/json

Accept application/json

ヘッダー

ボディ

language 解析対象のテキストの言語

id 一意に識別するID

text 解析の内容

この内容を配列で設定

Page 16: Azure text analytics apiつかってみる

FiddlerからAPIを呼び出す

なんかきた!

https://westus.api.cognitive.microsoft.com/text/analytics/v2.0/keyPhrases

エンドポイント

Page 17: Azure text analytics apiつかってみる

取得されたキーフレーズをみてみる(上位10件)

『ウォーキング・デッド』は、ゾンビによる世界の終末を迎えた後の物語であり、荒廃したアメリカ合衆国で安住の地を

求めてウォーカーの集団から逃れつつ旅をする少人数のグループを描く。ウォーカーとはあらゆる生き物をむさぼり食う

動く死人で、人間は脳が無事なまま死亡するとほぼ確実にウォーカーになってしまう。ウォーカーの群れ、事故、そして

生存者による略奪など、敵意に満ちた世界で日々直面する試練にもめげず、グループが人間性を保とうと奮闘するジレン

マが主に描かれる。シーズン1は主にアトランタ都市圏を舞台とするが、シーズン2からシーズン4は、ウォーカーから逃

れてジョージア州北部地方に舞台を移す。シーズン5中盤からバージニア州リッチモンド、そしてワシントンD.C.へと舞

台が変わる。

グループは、ゾンビが大発生する前はジョージア州の小さな町の保安官代理をしていたリック・グライムズが率いる。グ

ループは、社会が崩壊した世界で、ウォーカーの恐怖、グループ内の力関係の変化、そして自らの生存だけを考える数少

ない生き残りの人間たちに直面する。

1 2 3 4 5

ウォーカー(6) シーズン(4) 世界(3) グループ内(1) 舞台(3)

6 7 8 9 10

ゾンビ(2) ジョージア州北部地方(1)

バージニア州リッチモンド(1)

生存者(1) 生存だけ(1)

Page 18: Azure text analytics apiつかってみる

取得されたキーフレーズをみてみる(全部)

ウォーカー

シーズン 世界 グループ内

舞台 ゾンビ ジョージア州北部地方

バージニア州リッチモンド

生存者 生存だけ

人間たち 日々直面 変化 力関係 安住 恐怖 ワシントンD.C.へ

荒廃 自ら 集団

求め 終末 終末 生き残り 発生 アメリカ合衆国

つつ旅 保安官代理

物語 敵意

迎え 群れ 事故 中盤 試練 崩壊 アトランタ都市圏

死人 略奪 まま死亡

人間性 奮闘 リック 人数 社会 ジレンマ ウォーキング

デッド グライムズ

生き物

Page 19: Azure text analytics apiつかってみる

取得結果の順番について

「グループ内」ってのが1回なのに4番目に出てきている。文章に「グループ」って単語も同一に扱っているからなのか、日本語の解析が完全ではないのか。。。ちなみに「グループ」は5回出てきている。

APIの戻り値の順序については、ドキュメント記載がないけど、「The API returns a list of strings denoting the key talking points in the input text」って書いてあるから、テキスト内容のうち、ポイントとなっていると判断されているものが返却されてきていると考えれば上位5件とかを候補として表示させれば大丈夫なのかな。

Page 20: Azure text analytics apiつかってみる

APIの制限等

ドキュメントからの抜粋

この API では、送信されるドキュメントあたり 1 トランザクションが請求されることに注意してくださ

い。 たとえば、1 回の呼び出しで 1000 個のドキュメントのセンチメントを要求する場合、1000 のト

ランザクションが推論されます。

送信可能な 1 つのドキュメントの最大サイズは 10 KB であり、送信された入力の最大サイズの合計は 1

MB です。 1 回の呼び出しで 1,000 を超えるドキュメントを送信することはできません。 1 分あたり

の呼び出しは 100 回に制限されています。そのため、1 回の呼び出しで大量のドキュメントを送信する

ことをお勧めします。