データ分析
2022/10/24
有路 慧斗

広報Twitterの文章をGoogleの自然言語処理API(Natural Language API)で分析して改善する①

Data analysis

この記事では「Natural Language API」を使用してツイートを数値化し分析をしてみます。

分析の目的は「Twitterをバズらせる!」

本分析の目的は 「潜在ニーズの表出」と「SNS(twitter)からのサイトへの流入」であり、


本分析の目標は「この単語を使うとエンゲージメント率(サイトURLクリック率)が上がりますよ!」と言えるようになることです。


手順は以下の通りです。




  1. GASを使用して、スプレッドシート経由でツイートを自然言語処理

  2. 数値化されたツイートをBigQueryに挿入

  3. データポータルで可視化、BQMLで分析


この記事では手順1のツイートを自然言語処理する部分の記事です。

「Natural language API」で自然言語処理ができる

Cloud Natural Language | Google Cloud


「Natural Language API」とはGoogleが提供する自然言語処理APIです。このAPIでは、「構文解析」「感情分析」「エンティティ分析」「エンティティ感情分析」「コンテンツの分類」を行うことができます。今回のTwitter分析では「エンティティ感情分析」を使用しました。

Natural language APIを使ってみる

ツイートを数値化し、分析できる形に変換します。


以下の記事を参考に行っていきます。


Natural Language API でお手軽センチメント分析(感情分析) – Qiita


NLAPIをGCPにて有効化する

Cloud Natural Language | Google Cloud


途中でクレジットカードの登録が必要です。


左上のナビゲーションメニューから、「APIとサービス」→「ライブラリ」→「Natural Language API」で検索し、有効化します。


Untitled (2).png


↑有効化された画面


その後、「APIとサービス」→「認証情報」→「認証情報を作成」からAPIキーを作成してください。APIキーはこの後スクリプトで使います。

料金について

5000ユニットまでは無料で分析を行うことができます。詳しくはドキュメントの料金の欄をご覧ください。


Pricing | Cloud Natural Language | Google Cloud


今回の筆者の分析は、今回は1800ツイートほど分析しました。1000文字=1ユニットであり、Twitterの文字制限は280文字です。つまり1800ユニットであり、無料枠の中で分析をすることができました。

NLAPIをスプシで使う

使用するのは「エンティティ感情分析」です。






スプレッドシートを新規作成し、拡張機能から「AppScript」を選択


Untitled (3).png

2.サンプルコードをペーストする


Untitled (4).png

APIキーを自分のAPIキーに変更してください。その後シートに戻ってF5で更新すると、「カスタムメニュー」が表示されるので、A列に分析したい文章を入力し範囲選択することによって分析をすることができます。


センチメント分析例.jpg

センチメント分析結果例.png


このように結果が表示されれば分析成功です。

結果の解釈

まとめ




これによって文章を数値データにすることができました。「Natural Language API」を使用することによって、Twitterの文章に限らず様々な文章の傾向を数値化することができます。


反省点としては、「エンティティ感情分析」を使用したのですが、テキストの傾向的にscoreとmagunitudeの値がうまく返ってこなかった点です。


次回はこの数値とTwitterのアナリティクスデータをBigQueryにアップし、分析ができるようにしていきます。






New call-to-action