BigQuery で Colab Enterprise データ サイエンス エージェントを使用する
Colab Enterprise と BigQuery のデータ サイエンス エージェント(DSA)を使用すると、探索的データ分析の自動化、ML タスクの実行、分析情報の提供をすべて Colab Enterprise ノートブック内で行うことができます。
始める前に
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the BigQuery, Vertex AI, Dataform, and Compute Engine APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles.新しいプロジェクトでは、BigQuery API が自動的に有効になります。
- データ サイエンス エージェントは、次のデータソースをサポートしています。
- CSV ファイル
- BigQuery テーブル
- データ サイエンス エージェントによって生成されたコードは、ノートブックのランタイムでのみ実行されます。
- データ サイエンス エージェントは、VPC Service Controls が有効になっているプロジェクトではサポートされていません。
@mention
関数を使用した BigQuery テーブルの検索は、現在のプロジェクトに限定されます。テーブル セレクタを使用して、プロジェクト全体を検索します。@mention
関数は BigQuery テーブルのみを検索します。アップロード可能なデータファイルを検索するには、+
記号を使用します。- データ サイエンス エージェントの PySpark は、Serverless for Apache Spark 4.0 コードのみを生成します。DSA は Serverless for Apache Spark 4.0 へのアップグレードに役立ちますが、以前のバージョンが必要なユーザーは Data Science Agent を使用しないでください。
- 大規模なデータ処理: BigQuery ML、BigQuery DataFrames、または Serverless for Apache Spark を使用して、大規模なデータセットで分散データ処理を実行します。これにより、単一のマシンのメモリに収まらないほど大きなデータを効率的にクリーンアップ、変換、分析できます。
- プランの生成: Python、SQL、Serverless for Apache Spark、BigQuery DataFrames などの一般的なツールを使用して、特定のタスクを完了するためのプランを生成して変更します。
- データ探索: データセットを探索して、その構造を理解し、欠損値や外れ値などの潜在的な問題を特定して、Python または SQL を使用して主要な変数の分布を調べることができます。
- データ クリーニング: データをクリーニングします。たとえば、外れ値のデータポイントを削除できます。
- データ ラングリング: ワンホット エンコードやラベル エンコードなどの手法を使用するか、BigQuery ML の特徴変換ツールを使用して、カテゴリ特徴を数値表現に変換します。分析用の新しい特徴を作成できます。
- データ分析: さまざまな変数間の関係を分析します。数値特徴間の相関を計算し、カテゴリ特徴の分布を調べることができます。データのパターンと傾向を探すことができます。
- データの可視化: 個々の変数の分布とそれらの関係を表すヒストグラム、箱ひげ図、散布図、棒グラフなどの可視化を行います。BigQuery に保存されているテーブルの可視化を Python で作成することもできます。
- 特徴量エンジニアリング: クリーンアップされたデータセットから新しい特徴量をエンジニアリングします。
- データ分割: エンジニアリングされたデータセットをトレーニング データセット、検証データセット、テスト データセットに分割します。
- モデルのトレーニング: pandas DataFrame(
X_train
、y_train
)、BigQuery DataFrames、PySpark DataFrame のトレーニング データを使用するか、BigQuery テーブルで BigQuery MLCREATE MODEL
ステートメントを使用してモデルをトレーニングします。 - モデルの最適化: 検証セットを使用してモデルを最適化します。
DecisionTreeRegressor
やRandomForestRegressor
などの代替モデルを調べて、パフォーマンスを比較できます。 - モデル評価: pandas DataFrame、BigQuery DataFrames、PySpark DataFrame を使用して、テストデータセットでモデルのパフォーマンスを評価します。BigQuery ML を使用してトレーニングされたモデルに対して、BigQuery ML のモデル評価関数を使用してモデルの品質を評価し、モデルを比較することもできます。
- モデル推論: BigQuery ML の推論関数を使用して、BigQuery ML でトレーニングしたモデル、インポートしたモデル、リモートモデルで推論を実行します。BigFrames の
model.predict()
メソッドまたは PySpark の変換ツールを使用して予測を行うこともできます。 Colab Enterprise ノートブックを作成または開きます。
次のいずれかの方法でデータを参照します。
- CSV ファイルをアップロードするか、プロンプトで
+
記号を使用して利用可能なファイルを検索します - 現在のプロジェクトまたはアクセス権のある他のプロジェクトから、テーブル セレクタで 1 つ以上の BigQuery テーブルを選択します。
- プロンプトで BigQuery テーブル名を参照する場合は、
project_id:dataset.table
の形式で指定します。 @mention
関数を使用して BigQuery テーブル名を検索するには、@
記号を入力します。
- CSV ファイルをアップロードするか、プロンプトで
実行するデータ分析や作成するプロトタイプに関する説明をプロンプトに入力します。Data Science Agent のデフォルトの動作は、sklearn などのオープンソース ライブラリを使用して Python コードを生成し、複雑な ML タスクを実行することです。特定のツールを使用するには、プロンプトに次のキーワードを含めます。
- BigQuery ML を使用する場合は、「SQL」キーワードを含めます。
- 「BigQuery DataFrames」を使用する場合は、「BigFrames」または「BigQuery DataFrames」キーワードを指定します。
- PySpark を使用する場合は、「Apache Spark」または「PySpark」というキーワードを含めます。
詳しくは、サンプル プロンプトをご覧ください。
結果を確認します。
[BigQuery] ページに移動します。
BigQuery Studio のウェルカム ページの [新規作成] で、[ノートブック] をクリックします。
または、タブバーで + アイコンの横にある > [空のノートブック] をクリックします。
プルダウン矢印をクリックし、[ノートブッ]ツールバーで、spark(Gemini の切り替え)ボタンをクリックして、チャット ダイアログを開きます。
CSV ファイルをアップロードします。
チャット ダイアログで、> アップロード)をクリックします。
(Gemini に追加必要に応じて Google アカウントを認可します。
CSV ファイルの場所を参照し、[開く] をクリックします。
または、プロンプトに
+
記号を入力して、アップロード可能なファイルを検索します。チャット ウィンドウにプロンプトを入力します。例:
Identify trends and anomalies in this file.
(送信)をクリックします。結果はチャット ウィンドウに表示されます。
エージェントにプランの変更を依頼することも、[承認して実行] をクリックして実行することもできます。プランが実行されると、生成されたコードとテキストがノートブックに表示されます。停止するには、[キャンセル] をクリックします
[BigQuery] ページに移動します。
BigQuery Studio のウェルカム ページの [新規作成] で、[ノートブック] をクリックします。
または、タブバーで + アイコンの横にある > [空のノートブック] をクリックします。
プルダウン矢印をクリックし、[ノートブッ]ツールバーで、spark(Gemini の切り替え)ボタンをクリックして、チャット ダイアログを開きます。
チャット ウィンドウにプロンプトを入力します。
次のいずれかの方法でデータを参照します。
テーブル セレクタを使用して 1 つ以上のテーブルを選択します。
> [BigQuery テーブル] をクリックします。
(Gemini に追加)[BigQuery テーブル] ウィンドウで、プロジェクト内の 1 つ以上のテーブルを選択します。検索バーを使用すると、複数プロジェクトにわたってテーブルを検索し、テーブルをフィルタできます。
プロンプトに BigQuery テーブル名を直接含めます。たとえば、「探索的データ分析を行い、次のテーブルのデータに関する分析情報を取得してください:
project_id:dataset.table
」と入力します。次のように置き換えます。
project_id
: プロジェクト IDdataset
: 分析するテーブルを含むデータセットの名前table
: 分析するテーブルの名前
@
と入力して、現在のプロジェクトで BigQuery テーブルを検索します。
(送信)をクリックします。
結果はチャット ウィンドウに表示されます。
エージェントにプランの変更を依頼することも、[承認して実行] をクリックして実行することもできます。プランが実行されると、生成されたコードとテキストがノートブックに表示されます。プランの追加の手順では、[承認して実行] をもう一度クリックする必要がある場合があります。停止するには、[キャンセル] をクリックします。
- k 近傍法(KNN)ML 機アルゴリズムを使用して、欠損値を調査して入力します。
- 経験レベル別の給与のプロットを作成します。
experience_level
列を使用して給与をグループ化し、salary_in_usd
列の値を示すグループごとに箱ひげ図を作成します。 - XGBoost アルゴリズムを使用して、特定の果物の
class
変数を決定するモデルを作成します。データをトレーニング データセットとテスト データセットに分割して、モデルを生成し、モデルの精度を判断します。混同行列を作成して、各クラスの予測を表示します。これには、正しい予測と正しくない予測の両方が含まれます。 - 今後 6 か月間の
filename.csv
からのtarget_variable
を予測します。 - BigQuery SQL を使用して
bigquery-public-data.ml_datasets.census_adult_income
で分類モデルを作成して評価する。 - SQL を使用して、
bigquery-public-data.google_analytics_sample.ga_sessions_*
に基づいてウェブサイトの来月のトラフィックを予測してください。次に、過去の値と予測値をプロットします。 - KMeans モデルと BigQuery ML SQL 関数を使用して、類似した顧客をグループ化し、ターゲティング マーケティング キャンペーンを作成します。クラスタリングに 3 つの特徴量を使用します。次に、一連の 2D 散布図を作成して結果を可視化します。表
bigquery-public-data.ml_datasets.census_adult_income
を使用します。 bigquery-public-data.imdb.reviews
のレビュー コンテンツを使用して、BigQuery ML でテキスト エンベディングを生成します。project_id:dataset.table
のデータに対して pandas DataFrame を作成します。データの null 値を分析し、グラフタイプを使用して各列の分布をグラフ化します。測定値にはバイオリン プロット、カテゴリには棒グラフを使用します。filename.csv
を読み取り、DataFrame を構築します。DataFrame で分析を実行して、値の処理を決定します。たとえば、置換または削除する必要がある欠損値があるか、対処する必要がある重複行があるかなどです。データファイルを使用して、都市の場所ごとに米ドルで投資された金額の分布を特定します。上位 20 件の結果をグラフ化し、棒グラフに「地域」と「平均投資額(米ドル)」を降順で表示します。- BigQuery DataFrames を使用して、
project_id:dataset.table
で分類モデルを作成して評価します。 - BigQuery DataFrames を使用して
project_id:dataset.table
に時系列予測モデルを作成し、モデル評価を可視化します。 - BigQuery DataFrames を使用して、BigQuery テーブル
project_id:dataset.table
の過去 1 年間の売上高を可視化します。 - BigQuery DataFrames を使用して、テーブル
bigquery-public_data.ml_datasets.penguins
からペンギンの種を最もよく予測できる特徴を見つけます。 - Serverless for Apache Spark を使用して、
project_id:dataset.table
で分類モデルを作成して評価します。 - 類似した顧客をグループ化して、ターゲティング マーケティング キャンペーンを作成します。ただし、最初に PCA モデルを使用して次元削減を行います。PySpark を使用して、テーブル
project_id:dataset.table
でこれを行います。
BigQuery の Colab Enterprise を初めて使用する場合は、ノートブックを作成するページのセットアップ手順をご覧ください。
制限事項
データ サイエンス エージェントを使用する場合
データ サイエンス エージェントは、探索的データ分析から ML 予測、予測の生成まで、さまざまなタスクを支援します。DSA は次の目的で使用できます。
BigQuery でデータ サイエンス エージェントを使用する
次の手順は、BigQuery でデータ サイエンス エージェントを使用する方法を示しています。
CSV ファイルを分析する
BigQuery のデータ サイエンス エージェントを使用して CSV を分析する手順は次のとおりです。
BigQuery テーブルを分析する
BigQuery テーブルを分析するには、テーブル セレクタで 1 つ以上のテーブルを選択するか、プロンプトでテーブルへの参照を指定するか、@
記号を使用してテーブルを検索します。
サンプル プロンプト
使用するプロンプトの複雑さに関係なく、データ サイエンス エージェントは、ニーズに合わせて調整できるプランを生成します。
次の例は、DSA で使用できるプロンプトのタイプを示しています。
Python プロンプト
プロンプトで「BigQuery ML」や「SQL」などの特定のキーワードを使用しない限り、Python コードがデフォルトで生成されます。
SQL と BigQuery ML のプロンプト
サポートされているモデルと ML タスクの一覧については、BigQuery ML のドキュメントをご覧ください。
DataFrame プロンプト
PySpark プロンプト
Gemini in BigQuery をオフにする
Google Cloud プロジェクトで Gemini in BigQuery をオフにするには、管理者が Gemini for Google Cloud API を無効にする必要があります。サービスの無効化をご覧ください。
特定のユーザーに対して Gemini in BigQuery をオフにするには、管理者がそのユーザーの Gemini for Google Cloud ユーザー(roles/cloudaicompanion.user
)ロールを取り消す必要があります。単一の IAM ロールを取り消すをご覧ください。
料金
プレビュー期間中は、ノートブックのランタイムで実行されたコードと、使用した BigQuery スロットに対して課金されます。詳細については、Colab Enterprise の料金をご覧ください。
サポートされるリージョン
Colab Enterprise の Data Science Agent でサポートされているリージョンについては、ロケーションをご覧ください。