GoogleCloudのVertexAIを使おうとしたけど断念した話

今回はGoogleCloudのVertexAIでtwtterから取得したツイートに感情スコアのラベルをつけようとしたけど、結果として断念した話をさせていただきます。後半ではtwtter APIを用いて取得したツイートでtfidfを実施するまでの過程をお話しさせていただきます。

※このブログの内容は個人の意見・見解となります。また、記事の内容の正確性については保証いたしません。本ブログの目的は分析結果をアウトプットしていくことによる自身のデータ分析力向上を主としています。誤りや違うアプローチの方が良いという事も多分にあると思います。後学のため、「もっとこうしたらいい」や誤りを見つけた場合はコメント欄などでお知らせいただけると有難いです。

○Google Cloudとは
Googleが提供するクラウドサービスになります。AmazonだとAWS、MicrosoftだとAzureがあり、3大クラウドサービスの一つとなります。
Google CloudではBigQuery等を用いたビックデータの解析、データを保存しておくストレージ、AutoML・tensorflowなどのAI・機械学習が使用できます。
ただし、無料で使えるわけではなく、利用料が発生するため注意が必要です。

○VertexAIとは

上記で紹介したCoodle CloudでAI・機械学習を行うためのツールになります。トレーニングデータを用意すればAutoMLの機能を用いて誰でも簡単にモデルの作成ができます。

○何故、断念したのか?
単純に料金が高かったからです。学習に使用する金額としては高いと判断し断念しました。ただ、料金は実行する手前で高いことに気付いたのでどのように実行するのか手前までをお話しさせていただきます。
ちなみにテキストのセンチメントは50単語で20,000円となります。

ラベル付けを実行した場合の料金

○Vertex AIの使い方(データセット作成まで)

まずはVertex AIのAPIを有効にします、その後、データセットを作成を選択します。
データセットのタイプに応じて「画像、表形式、テキスト、動画」の中から選択をします。また、どのようなタスクに対して学習するかを設定します。
学習データのインポート方法を選択肢、続行を押すことで自動的にtrainデータ、valデータ、testデータを分割してくれます。分割方法を指定することも可能です。

今回はテキストデータのみで正解ラベルがないためエラーとなってしまいましたが成功すればデータセットが完了します。こちらで右上に記載されている「ラベル付タスクを作成」を選択することでラベルを作成してくれます。

○twitter APIの使い方

twtiter APIは下記のURLから申請することで取得できます。
https://developer.twitter.com/en/docs/twitter-api
詳細な申請手順は下記のサイト等を参照していただければと思います。
https://di-acc2.com/system/rpa/9688/
2023.2.9から有料化も騒がれています。無料のうちに使ってみましょう。

○tweepyについて
tweepyとはpythonでtwitterAPIを使うために必要なライブラリになります。
こちら、Google Colabで使用するときは!pip install -U tweepyを実行してから使用してください。バージョンによっては様々なサイトで紹介されているコードが実行できないことがあります。こちらを用いてツイートの抽出などを実行できます。

○コードの紹介

まずは取得したAPIのKeyを用いてtweepyの設定を行います。今回はツイートの検索を行いたいと思います。具体的にはsearchで指定した「機械学習」という単語が入ったツイートをitem_numberで指定した「100」件を取得します。
こちらのコードでは取得したツイートをデータフレームに格納してreplaceでRTを消すなど少しだけ取得したツイートを整形しています。
ここではtfidfを実行するために分かち書きをしています。
tfidfを実行します。実行結果は下記のような形でtwtter_trainに格納されています。このままだと見づらいので少し整えてあげます。
np.array(twtter_train.sum(axis=0))こちらで列ごとの値を合計しています。
上記で作成した値を元に並べ替えた結果が画像の出力結果になります。
機械学習と共に使用されている単語で1番多いのはビジネス、2番目は統計見たいです。ビジネスへの活用や基礎知識となる統計が一緒にツイートされていることが分かりました。

○まとめ
今回、本当であればGoogle Cloudの中でAIモデルを作成しデプロイまでしてみたかったのですが出来ませんでした。今度はデプロイまで見据えて学習及びデータセットの準備をしていきたいです。

○最後に
このような形で分析した結果や試してみたことを週に1回(目標)ペースで掲載しています。データ分析のキャリアを歩み始めたのですが、データの解釈、分析力が低いと感じ今回、このような形でアウトプットをしていくことにしたため、ぜひ、アドバイスやご指摘をいただけると幸いです。