ブロックリファレンス

BLOCKS Reference

機械学習

テキスト分析(感情分析)

概要

このブロックは、Cloud Natural Language APIopen_in_newの「感情分析open_in_new」機能を使用して、テキストデータから感情を分析します。感情は、ポジティブなのか、ネガティブなのか、ニュートラルなのかの3種類で表現されます。

infoテキスト分析(感情分析)で対応している言語については、Googleの言語のサポートページopen_in_newを参照してください。

warningセルフサービスプランの場合は、このブロックを使用する前に、Cloud Natural Language APIを有効にしてください。詳しくは、「基本操作ガイド>ヒント>Google APIを有効にする」を参照してください。

プロパティ

プロパティ名 説明
ブロック名

編集パネルに配置した当該ブロックの表示名が変更できます。

ブロックリストパネル中のブロック名は変更されません。

GCPサービスアカウント このブロックで使用するGCPサービスアカウントを選択します。
テキストを参照する変数 感情分析させたいテキストデータを参照する変数を指定します。
結果を格納する変数

感情分析した結果を格納する変数を指定します。

結果について詳しくは、「Natural Language API の基本open_in_new」の「感情分析のレスポンス フィールドopen_in_new」を参照願います。

ブロックメモ

本ブロックに関するメモが記載できます。本ブロックの処理に影響しません。

使用例

ここでは、「テキスト分析(感情分析)」ブロックを使って、Googleスプレッドシート上のテキストデータを感情分析するケースを取り上げます。

おおまかな流れは、以下のとおりです。

以下、上記流れに沿ってそれぞれについて解説します。

STEP1

Googleスプレッドシート上のテキストデータを「テキスト分析(感情分析)」ブロックを使って感情分析させるためには、Googleスプレッドシート上のテキストデータを変数へ格納する必要があります。

これは、Google Driveカテゴリーの「スプレッドシートのデータ取得」ブロックを使うと簡単に実現できます。

infoサンプルデータ:hashire_merosu.csvopen_in_new(Googleスプレッドシートへ取り込んでください)

STEP2

「スプレッドシートのデータ取得」ブロックで変数_に格納されたデータは、以下のような配列の配列形式で出力されています。

外側の配列の各要素は、要素数1の配列で、内側の配列の要素がテキストになっています。

「テキスト分析(感情分析)」ブロックは、複数のテキストは扱えないので、今回のケースでは複数のテキストから1つのテキストのみを渡してあげる必要があります。

例えば、この配列の74個目のテキストを渡すには、_.73.0のように指定する必要があります。この記法については、「配列とオブジェクト」の「配列やオブジェクト内の一部データの取得書式」を参照願います。

以下は、変数_内の配列74個目に格納されているテキストを感情分析させる例です。

感情分析の結果は、オブジェクト形式で出力されます。以下は、「ログへ出力」ブロックを使って、変数に格納されたオブジェクトの内容をJSONテキストで出力したものです。

{
  "document_sentiment": {
    "magnitude": 0.7,
    "score": -0.7
  },
  "language": "ja"
}

score値は、感情を示します。0より大きい値がポジティブ、0より小さい値がネガティブ、0がニュートラルを示します。

STEP3

最後に、感情分析の結果を蓄積し、さまざまな用途に応用できるようにBigQueryテーブルに格納します。

変数内のデータをBigQueryテーブルへ格納するには、「変数からテーブルへロード」ブロックを使うと簡単に処理できます。

  • スキーマ設定は、natural-language-api-sentiment-analysis-schema.jsonをダウンロードして、「JSONで編集」でJSONデータを貼り付けてください。
  • ファイル形式は、変数内のデータ形式を指定します。「テキスト分析(感情分析)」ブロックの出力結果は、オブジェクトのためJSON形式(NEWLINE_DELIMITED_JSON)となります。
最後に

STEP1からSTEP3を順につなげるとフローの完成です。

この情報は役に立ちましたか?