Visual Studio Code 用の Google Cloud Data Agent Kit 拡張機能で AI モデルと ML モデルをトレーニングする方法について説明します。
このクイックスタートでは、セッション テンプレートとサンプル Jupyter ノートブックを使用して、ニューヨーク市のタクシーのチップ額を予測します。PySpark でリモート Jupyter カーネルを使用して、線形回帰、ランダム フォレスト、XGBoost などのさまざまなモデルを試します。このプロセスでは、分散トレーニングと推論を実行できます。このチュートリアルでは、Spark ML と XGBoost ライブラリを使用して複数のマシンにわたるスケーラビリティを示します。
このクイックスタートでは説明しませんが、Visual Studio Code 用の Google Cloud Data Agent Kit 拡張機能を使用して AI モデルと ML モデルをトレーニングする方法は複数あります。
- トレーニング データセットが大きい場合や、Apache Spark が提供する分散トレーニング機能が必要な場合は、リモート カーネルで Spark ノートブックを使用できます。
- データセットが BigQuery にあり、BigQuery ML がユースケースをサポートしている場合は、BigQuery DataFrames ノートブックを使用できます。
- データセットが小さく、モデルをローカルでトレーニングする場合は、Python ノートブックを使用できます。
Spark ランタイム テンプレートを作成する
サーバーレス Spark ランタイム テンプレートを使用すると、指定された構成セットで Apache Spark セッションを開始できます。新しいサーバーレス ランタイム テンプレートを作成する手順は次のとおりです。
- IDE のアクティビティ バーで、Google Cloud Data Agent Kit アイコンをクリックします。
- Google Cloud Data Agent Kit メニューで、[Apache Spark] を開きます。
- [サーバーレス] を展開し、[+ サーバーレス ランタイムを作成] をクリックします。サーバーレス ランタイムの作成フォームが表示されます。
- [表示名] フィールドに「
ai-ml-tutorial」と入力します。 - [自動スケーリング] セクションに移動します。
- プルダウン リストで
spark.dynamicAllocation.enabledを false に設定します。この設定は、XGBoost が Apache Spark と連携するために必要です。 - 他のフィールドはすべてデフォルトのままにします。
- [送信] をクリックします。
新しいノートブックを作成する
次に、新しい Spark ノートブックを作成します。
- [Google Cloud Data Agent Kit] タブの [Apache Spark] で、[+ 新しい Spark ノートブック] をクリックします。
- カーネルタイプとして [リモート カーネル] を選択します。
- [サンプル ノートブックから始める] をクリックします。
- サンプル リストで、[Data Science with PySpark and Distributed XGBoost] を選択します。無題の Jupyter ノートブックが表示されます。
モデルのトレーニング
- ノートブックのタブで、[すべて実行] をクリックします。カーネル ピッカーで、ノートブックを実行するカーネルを選択するように求められます。
- [Select Another Kernel] をクリックします。
- [リモート Spark カーネル] をクリックします。
- 前に作成したランタイム テンプレートである [ai-ml-tutorial on Serverless Spark] を選択します。
システムがサーバーレス Spark セッションを作成している間、次の通知が表示されます。Connecting to kernel: ai-ml-tutorial on Serverless Sparkノートブックがリモート PySpark カーネルに接続すると、最初のセルから実行が開始されます。この処理には約 2 ~ 3 分かかります。
Spark セッションを検査する
- [Google Cloud Data Agent Kit] タブの [Apache Spark] で、[ai-ml-tutorial] ランタイム テンプレートを開きます。IDE に、このランタイム テンプレートで作成したインタラクティブ セッションのリストが表示されます。
- リストの上部に表示されている、ノートブックを実行してシステムが作成したセッションを見つけます。セッションをクリックすると詳細が表示されます。セッション構成と、システムがノートブックの実行に使用したリソースを確認できます。
クリーンアップ
ノートブックが正常に実行されたら、次のクリーンアップ手順を行います。
- [Google Cloud Data Agent Kit] タブの [Apache Spark] で、[Serverless] を右クリックして [List Serverless Runtimes] を選択します。サーバーレス ランタイムのリストが表示されます。
ai-ml-tutorialの [アクション] メニューをクリックして、システムがテンプレートから作成したすべてのインタラクティブ セッションを一覧表示します。- [アクション] で、[削除] をクリックします。
- [サーバーレス ランタイム] ウィンドウに戻ります。
ai-ml-tutorialの [操作] で、[削除] をクリックします。- [確認] をクリックして、このチュートリアル用に作成したテンプレートを削除します。