記事の対象者と解消できるお悩み
【対象者】
初中級データアナリスト
【興味関心】
- 顧客の声分析
- アンケート分析
- ソーシャルメディア分析
- テキストデータからの情報抽出
- SQLスキルアップ
- BigQueryの活用
【解消できるお悩み】
- 顧客アンケートの自由記述欄を分析したいけど、どうすればいいか分からない…
- ソーシャルメディアの投稿から、自社製品に関する評判を分析したい
- 大量のテキストデータから、重要なキーワードを抽出したい
- BigQueryでテキストデータを分析する方法が知りたい
- SQLを使って、テキストデータからビジネス insights を得たい
記事作成者
【人物】株式会社志庵 代表取締役 佐藤 光 起業6年目
【経歴】株式会社光通信➜光通信同期と起業➜データアナリスト転職➜SaaSで2度目起業
【会社実績】
SaaS 資金調達無しARR2億円
SaaS GMV200億円
【内容】自社AaaSであるStruccle、webスクレイピング、BigQueryに関する記事を作成
各種用語
- ARR(Annual Recurring Revenue)
- サブスクリプションサービスの年間売上※当社はSaaS売上
- Struccle(ストラクル)
- 株式会社志庵が独自開発しているAaaS
- AaaS(アース)
- Data Analytics as a Serviceの意
- SaaS(サース)
- Software as a Serviceの意
- GoogleCloudPlatform
- Googleが提供するクラウドプラットフォーム。この中に様々なサービスが存在する。
- GCP(ジーシーピー)
- GoogleCloudPlatformの略
- BigQuery(ビッグクエリ)
- 上記GCPの中に含まれるデータ分析基盤サービス
- SQL(エスキューエル)
- データベースを操作するプログラミング言語
- クエリ
- SQLで記述した命令文
- クエリ例)
- SQL構文のクエリ⬇
SELECT item_name, price FROM sales_table where price >= 1000;
- 上記クエリ(命令文)の意味としては「売上テーブル(sales_table)から価格(price)が1000円以上の商品名(item_name)と価格(price)を抽出する」
- SQL構文のクエリ⬇
- ペタバイト
- データの単位 ペタバイト=1000テラバイト=約100兆行のデータ
概要
大量のテキストデータから有益な情報を引き出すことは、現代のビジネスにおいて非常に重要です。顧客レビュー、ソーシャルメディア投稿、ニュース記事など、テキストデータは様々な形で存在し、ビジネスの意思決定に役立つ貴重な洞察を提供します。Google CloudのBigQueryは、テキストデータを分析するための強力なテキスト分析関数を備えています。これらの関数を使いこなすことで、テキストデータからキーワードを抽出したり、感情分析を行ったり、関連性の高い情報を検索したりすることができます。
この記事では、BigQueryで利用できる基本的なテキスト分析関数を、分かりやすい例とともに紹介します。BigQueryの無料公開データセットを使って、実際に手を動かしながらテキスト分析関数をマスターしましょう!
目次
- BigQueryのテキスト分析関数とは?
- BigQueryの基本テキスト分析関数一覧
- BigQuery公開データで実践!テキスト分析関数を使った分析例
- FAQ:BigQueryに関するよくある質問
- まとめ:BigQueryのテキスト分析関数をマスターして、テキストデータから価値を引き出そう!
1. BigQueryのテキスト分析関数とは?
BigQueryのテキスト分析関数は、テキストデータを分析し、有益な情報を抽出するための関数です。これらの関数は、自然言語処理(NLP)の技術に基づいており、テキストデータの構造や意味を理解することができます。BigQueryのテキスト分析関数は、以下のようなタスクに役立ちます。
- キーワード抽出
- 感情分析
- テキスト分類
- 類似文書検索
2. BigQueryの基本テキスト分析関数一覧
BigQueryで利用できる基本的なテキスト分析関数を、例とともに紹介します。
2.1 TEXT_ANALYZE
テキストから用語(トークン)を抽出し、トークン化されたドキュメントに変換します。トークン化されたドキュメントは、各用語とその出現回数を表す配列です。
構文:
TEXT_ANALYZE(text[, language])
例: 文字列 “BigQuery is a powerful data warehouse.” をトークン化し、各用語の出現回数を取得する
SELECT TEXT_ANALYZE('BigQuery is a powerful data warehouse.') AS tokens;
2.2 BAG_OF_WORDS
トークン化されたドキュメントの各用語(トークン)の頻度を取得します。頻度は、各用語がドキュメントに何回出現するかを表す数値です。
構文:
BAG_OF_WORDS(tokens_array)
例: トークン化されたドキュメント [‘BigQuery’, ‘is’, ‘a’, ‘powerful’, ‘data’, ‘warehouse’] から、各用語の頻度を取得する
SELECT BAG_OF_WORDS(['BigQuery', 'is', 'a', 'powerful', 'data', 'warehouse']) AS term_frequencies;
2.3 TF_IDF
一連のトークン化されたドキュメントにおける、ある用語(トークン)とトークン化されたドキュメントの関連性を評価します。TF-IDF値が高いほど、その用語は特定のドキュメントに強く関連していることを示します。
構文:
TF_IDF(term, document, documents) over()
例:一連のトークン化されたドキュメントに少なくとも 1 回出現する、最大 3 個の用語の関連性を計算する。
WITH table1 AS (
SELECT 1 AS id, ['I', 'like', 'BigQuery', 'BigQuery', 'BigQuery', NULL] AS f UNION ALL
SELECT 2 AS id, ['yum', 'yum', 'BigQuery', NULL] AS f UNION ALL
SELECT 3 AS id, ['I', 'yum', 'BigQuery', NULL] AS f UNION ALL
SELECT 4 AS id, ['you', 'like', 'BigQuery', 'too', NULL] AS f
)
SELECT id, TF_IDF(f, 3, 2) OVER() AS results
FROM table1
ORDER BY id
3. BigQuery公開データで実践!テキスト分析関数を使った分析例
ここでは、BigQueryの公開データセット「stackoverflow」を使って、テキスト分析関数を使った簡単なSQL分析例を紹介します。このデータセットには、stackoverflowのコメントに関する情報が格納されています。
例:コメント(text) のテキストデータから、出現頻度の高い単語を抽出する
SELECT word, frequency
FROM (
SELECT
word,
COUNT(*) AS frequency
FROM
bigquery-public-data.stackoverflow.comments
,UNNEST(BAG_OF_WORDS(TEXT_ANALYZE(text))) AS word
GROUP BY
word
)
ORDER BY
frequency DESC
LIMIT 10;
このクエリでは、`TEXT_ANALYZE`関数で`text`カラムのテキストデータをトークン化し、`BAG_OF_WORDS`関数で各単語の出現頻度を計算しています。そして、出現頻度が高い上位10件の単語を表示しています。
4. FAQ:BigQueryに関するよくある質問
Q1. BigQueryの無料枠を超えて利用すると、どのくらい費用がかかりますか?
A1. 無料枠を超えた場合、従量課金制で料金が発生します。料金は、処理したデータ量やストレージ容量などによって異なります。詳しくは、BigQueryの料金ページをご確認ください。
Q2. BigQueryで使えるSQLは、他のデータベースと同じですか?
A2. BigQueryは標準SQLをサポートしており、他のデータベースで学んだSQLの知識を活かすことができます。ただし、BigQuery独自の関数や構文も存在するため、BigQueryのドキュメントで詳細を確認することをおすすめします。
Q3. SQLの学習には、どのような教材がありますか?
A3. SQLの学習には、オンライン学習サイト、書籍、動画教材など、様々な教材があります。初心者向けの教材から、上級者向けの教材まで、レベルに合わせて選ぶことができます。Googleが提供するBigQueryのチュートリアルもSQLの学習に役立ちます。
5. まとめ:BigQueryのテキスト分析関数をマスターして、テキストデータから価値を引き出そう!
BigQueryのテキスト分析関数は、大量のテキストデータから有益な情報を引き出すために非常に役立ちます。この記事で紹介した関数以外にも、様々なテキスト分析関数が用意されています。BigQueryの公式リファレンスなどを参考に、テキスト分析関数をマスターし、テキストデータからビジネス価値を引き出しましょう!
BigQuery導入サポート、転職検討中の方はお問い合わせフォームからご相談くださいませ。
誠心誠意精一杯対応いたします。
【参考URL】
GoogleCloudPlatform:https://console.cloud.google.com/welcome/new
BigQuery:https://cloud.google.com/bigquery?hl=ja
BigQueryリリース情報:https://cloud.google.com/bigquery/docs/release-notes
BigQuery料金:https://cloud.google.com/bigquery/pricing
BigQuery料金無料枠:https://cloud.google.com/bigquery/pricing?hl=ja#free-tier
Google Cloud活用事例:https://cloud.google.com/customers/index.html?hl=ja#
Looker Studio:https://cloud.google.com/looker-studio?hl=ja
Looker Studioサンプル:https://cloud.google.com/bigquery/docs/visualize-looker-studio?hl=ja