BigQuery で Colab Enterprise データ サイエンス エージェントを使用する
Colab Enterprise と BigQuery のデータ サイエンス エージェント(DSA)を使用すると、探索的データ分析の自動化、ML タスクの実行、分析情報の提供をすべて Colab Enterprise ノートブック内で行うことができます。
始める前に
- アカウントにログインします。 Google Cloud を初めて使用する場合は、 アカウントを作成して、実際のシナリオで Google プロダクトのパフォーマンスを評価してください。 Google Cloud新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
-
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 role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. 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 role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
BigQuery API、Vertex AI API、Dataform API、Compute Engine API を有効にします。
API を有効にするために必要なロール
API を有効にするには、
serviceusage.services.enable権限を含む Service Usage 管理者 IAM ロール(roles/serviceusage.serviceUsageAdmin)が必要です。詳しくは、ロールを付与する方法をご覧ください。新しいプロジェクトでは、BigQuery API が 自動的に有効になります。
BigQuery の Colab Enterprise を初めて使用する場合は、ノートブックを作成するページのセットアップ手順をご覧ください。
制限事項
- データ サイエンス エージェントは、Colab Enterprise 環境でのみ使用できます。
- データ サイエンス エージェントは、次のデータソースをサポートしています。
- CSV ファイル
- BigQuery テーブル
- データ サイエンス エージェントによって生成されたコードは、ノートブックのランタイムでのみ実行されます。
- データ サイエンス エージェントは、VPC Service Controls が有効になっているプロジェクトではサポートされていません。
@mention関数を使用した BigQuery テーブルの検索は、現在のプロジェクトに限定されます。テーブル セレクタを使用して、プロジェクト全体を検索します。@mention関数は BigQuery テーブルのみを検索します。アップロード可能なデータファイルを検索するには、+記号を使用します。- データ サイエンス エージェントの PySpark は、Apache Spark 4.0 用 Serverless コードのみを生成します。DSA は Apache Spark 用サーバーレス 4.0 へのアップグレードに役立ちますが、以前のバージョンが必要なユーザーはデータ サイエンス エージェントを使用しないでください。
データ サイエンス エージェントを使用する場合
データ サイエンス エージェントは、探索的データ分析から ML 予測、予測の生成まで、さまざまなタスクを支援します。DSA は次の目的で使用できます。
- 大規模なデータ処理: BigQuery ML、BigQuery DataFrames、または Apache Spark 用サーバーレスを使用して、大規模なデータセットで分散データ処理を実行します。これにより、単一のマシンのメモリに収まらないほど大きなデータを効率的にクリーンアップ、変換、分析できます。
- プランの生成: Python、SQL、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 のトランスフォーマーを使用して予測を行うこともできます。
BigQuery でデータ サイエンス エージェントを使用する
次の手順は、BigQuery でデータ サイエンス エージェントを使用する方法を示しています。
Colab Enterprise ノートブックを作成または開きます。
省略可: 次のいずれかの方法でデータを参照します。
- CSV ファイルをアップロードするか、プロンプトで
+記号を使用して、利用可能なファイルを検索します。 - 現在のプロジェクトまたはアクセス権のある他のプロジェクトから、テーブル セレクタで 1 つ以上の BigQuery テーブルを選択します。
- プロンプトで BigQuery テーブル名を参照する場合は、この
形式で指定します:
project_id:dataset.table. @記号を入力して、BigQuery テーブル名を検索します@mention関数を使用して。
- CSV ファイルをアップロードするか、プロンプトで
実行するデータ分析や作成するプロトタイプに関する説明をプロンプトに入力します。データ サイエンス エージェントのデフォルトの動作は、sklearn などのオープンソース ライブラリを使用して Python コードを生成し、複雑な ML タスクを実行することです。特定のツールを使用するには、プロンプトに次のキーワードを含めます。
- BigQuery ML を使用する場合は、「SQL」キーワードを含めます。
- 「BigQuery DataFrames」を使用する場合は、キーワード「BigFrames」または「BigQuery DataFrames」を指定します。
- PySpark を使用する場合は、キーワード「Apache Spark」または「PySpark」を含めます。
詳しくは、サンプル プロンプトをご覧ください。
結果を確認します。
CSV ファイルを分析する
BigQuery のデータ サイエンス エージェントを使用して CSV を分析する手順は次のとおりです。
[BigQuery] ページに移動します。
BigQuery Studio のウェルカム ページの [新規作成] で、[ノートブック] をクリックします。
または、タブバーで + アイコンの横にある プルダウン矢印をクリックし、[ノートブック] > [空のノートブック] をクリックします。
(Gemini in Colab を切り替える)ボタンをクリックして、チャット ダイアログを開きます。
CSV ファイルをアップロードします。
チャット ダイアログで、 [Gemini に追加] > [アップロード] をクリックします。
必要に応じて Google アカウントを認可します。
CSV ファイルの場所を参照し、[開く] をクリックします。
または、プロンプトに
+記号を入力して、アップロード可能なファイルを検索します。チャット ウィンドウにプロンプトを入力します。例:
Identify trends and anomalies in this file.(送信)をクリックします。結果はチャット ウィンドウに表示されます。
エージェントにプランの変更を依頼することも、[承認して実行] をクリックして実行することもできます。プランが実行されると、生成されたコードとテキストがノートブックに表示されます。停止するには、[キャンセル] をクリックします
BigQuery テーブルを分析する
BigQuery テーブルを分析するには、テーブル セレクタで 1 つ以上のテーブルを選択するか、プロンプトでテーブルへの参照を指定するか、@ 記号を使用してテーブルを検索します。
[BigQuery] ページに移動します。
BigQuery Studio のウェルカム ページの [新規作成] で、[ノートブック] をクリックします。
または、タブバーで + アイコンの横にある プルダウン矢印をクリックし、[ノートブック] > [空のノートブック] をクリックします。
(Gemini in Colab を切り替える)ボタンをクリックして、チャット ダイアログを開きます。
チャット ウィンドウにプロンプトを入力します。
次のいずれかの方法でデータを参照します。
テーブル セレクタを使用して 1 つ以上のテーブルを選択します。
[Gemini に追加] > [BigQuery テーブル] をクリックします。
[BigQuery テーブル] ウィンドウで、プロジェクト内の 1 つ以上のテーブルを選択します。検索バーを使用すると、複数プロジェクトにわたってテーブルを検索し、テーブルをフィルタできます。
プロンプトに BigQuery テーブル名を直接含めます。たとえば、「探索的データ分析を行い、次のテーブルのデータに関する分析情報を取得してください:
project_id:dataset.table」と入力します。次のように置き換えます。
project_id: プロジェクト IDdataset: 分析するテーブルを含むデータセットの名前table: 分析するテーブルの名前
「
@」と入力して、現在のプロジェクトの BigQuery テーブルを検索します。
(送信)をクリックします。
結果はチャット ウィンドウに表示されます。
エージェントにプランの変更を依頼することも、[承認して実行] をクリックして実行することもできます。プランが実行されると、生成されたコードとテキストがノートブックに表示されます。プランの追加の手順では、[承認して実行] をもう一度クリックする必要がある場合があります。停止するには、[キャンセル] をクリックします
サンプル プロンプト
使用するプロンプトの複雑さに関係なく、データ サイエンス エージェントは、ニーズに合わせて調整できるプランを生成します。
次の例は、DSA で使用できるプロンプトのタイプを示しています。
Python プロンプト
プロンプトで「BigQuery ML」や「SQL」などの特定のキーワードを使用しない限り、Python コードがデフォルトで生成されます。
- k 近傍法(KNN)ML 機アルゴリズムを使用して、欠損値を調査して入力します。
- 経験レベル別の給与のプロットを作成します。
experience_level列を使用して給与をグループ化し、salary_in_usd列の値を示すグループごとに箱ひげ図を作成します。 - XGBoost アルゴリズムを使用して、特定の果物の
class変数を決定するモデルを作成します。データをトレーニング データセットとテスト データセットに分割して、モデルを生成し、モデルの精度を判断します。混同行列を作成して、各クラスの予測を表示します。これには、正しい予測と正しくない予測の両方が含まれます。 - 今後 6 か月間の
filename.csvからのtarget_variableを予測します。
SQL と BigQuery ML のプロンプト
- 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 でテキスト エンベディングを生成します。
サポートされているモデルと ML タスクの一覧については、BigQuery ML のドキュメントをご覧ください。
DataFrame プロンプト
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からペンギン種を最適に予測できる特徴を見つけます。
PySpark プロンプト
- Apache Spark 用サーバーレスを使用して、
project_id:dataset.tableで分類モデルを作成して評価します。 - 類似した顧客をグループ化して、ターゲティング マーケティング キャンペーンを作成しますが、最初に PCA モデルを使用して次元数の削減を行う必要があります。PySpark を使用して、テーブル
project_id:dataset.tableでこれを行います。
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 でサポートされているリージョンについては、ロケーションをご覧ください。