はじめに
ヴェネクト株式会社の小峰です。
今回は、4回にわたりGCPの「Cloud Natural Language」を利用した自然言語解析の実施方法を説明します。
「Cloud Natural Language」を利用することで、大まかに下記のような成果を得ることが出来ます。
-
文章内に含まれているKWを抽出できる
- その結果から、KWの出現数や組み合わせを取得することができます。取得結果を活用して、文章のカテゴリ分け・タグ付けを行う機械学習のシステムに結びつけることができます。
-
文章の係り受け構造を明らかにすることができる
- その結果から、「文章の主題」や「その主題がどのように評価されているか」を判断することができます。その分析結果を活用して、自然言語で命令するアプリケーション(AIアシスタントなど)に結びつけることができます。
-
文章の感情(ポジティブ/ネガティブの度合い)を判断することができる
- 文章や各KWがどのように評価されているかを点数化して判断することができます。その結果を分析することで、マーケティングやCSRの向上を目的とした分析に役立てることができます。
自然言語解析エンジンとして「Cloud Natural Language」を勧める理由
-
GCP上で動作するので、環境構築が容易である
- 「Cloud Natural Language」はGCP上で動作し、API経由で分析したい文章を送信すれば、GCP上で処理され、結果がJSONで返されます。そのため、分析実行者側で、分析のための環境構築が不要であることが利点です。
- また、GCPを利用していれば、「Cloud Natural Language」の利用開始はAPIの利用開始申請のみで開始できるため、利用開始のハードルも非常に低いです。
-
純粋に自然言語解析エンジンとしての品質に優れている
- (筆者の主観になりますが)エンティティの切り分けや、感情分析の判断、係り受け構造の分析など、どの観点でも分析結果の精度が高いと感じています。
- そのため、分析を行う者が、精度の高い分析結果にいきなりアクセスできるのは大きな利点になります。
-
自然言語解析エンジンの開発やアップデートをGoogleに委ねられる
- (個人的な経験によりますが)自然言語解析エンジンの開発は、細かいパラメータや処理の微調整を通じて、抽出結果の精度を上げる開発が必要です。この部分は開発負荷がかなり大きくなります。
- そのため、Google側で自然言語解析エンジンの開発やアップデートを実施してくれるので、自然言語解析エンジンの開発工程を飛ばして利用できることは大きな利点だと思います。
「Cloud Natural Language」の構成と得られる成果物
各種アプリケーションの説明
「Cloud Natural Langugaeですが、基本的に下記の3機能によって構成されています。
次回以降は、それぞれ1つの機能をピックアップして説明をしていきます。
-
エンティティ分析(エンティティ感情分析も併せて記載します)
-
概要
- 文章を解析し、文章内で挙げられているKW(エンティティ, Entity)を取得し、併せてKWのタイプや重要度、感情表現の強さを得る
-
成果物
-
Input
- 文章を入力する
-
Output
- 文章内で出現する主要なKW(以下、Entirty)が得られる
- Entity毎に、下記の情報を併せて取得できる
- Entityのタイプ
- Entityの文章内における重要性(Salience)
- Entityの感情表現の強さ(Sentiment)
-
Input
-
概要
-
感情分析
-
概要
- 文章を解析し、その感情表現の方向性(PositiveかNegativeか)とその感情表現がどれだけ強いかを判断する
-
成果物
-
Input
- 文章を入力する
-
Output
- 文章の感情表現のPositive/Negative(Score)
- 文章の感情表現の強さ(Magnitude)
-
Input
-
概要
-
構文解析
-
概要
- 文章を解析し、文章内に出現する品詞毎に、係り受け構造を出力する
-
成果物
-
Input
- 文章を入力する
-
Output
- 品詞毎に下記を出力する
- 係り受けしている品詞
- 係り受け構造の種別
- 品詞毎に下記を出力する
-
Input
-
概要
次回について
全4回の記事を投稿しておりますので、下記リンクから参照ください