Google Cloud Skills BoostでPerform Foundational Data, ML, and AI Tasks in Google Cloudを学んでいる。最初のステップのAI Platform: Qwik Startを3回目でやっとクリアしたのだが、もともとGoogleのAI Platformの知識がないので、課題をやっていても自分がやっていることが良く分からない。
「AI Platform Notebooks インスタンス内でサンプル リポジトリのクローンを作成する」のステップで、冒頭メッセージが出た。xai_tabular_widgetが何かは記載がないので良く分からないが、とりあえず次のステップに進むと、以下のメッセージが出る。
Terminal 1コマンドラインから、jupyter lab buildを実行すると10分程度かかって完了した。
ついで、
ノートブックのすべてのセルを消去(ノートブックのツールバーで [編集] > [出力をすべて消去] をクリック)し、セルを 1 つずつ実行します。
を実行し始める。まずStep 1。
データを落としてきて、環境変数をセット、内容確認なので特に問題なし。ついでStep 2。
trainerディレクトリを作って、ファイルの書き出しスクリプトを生成。ついで、model.pyを作成。この中身を読んでいる暇はないので、とりあえず実行するだけ。その後task.pyも指示通り作成した。
ついで、Step 2.2でPython training programでローカルで学習ジョブを走らせる。gcloud ai-platformが本質だろうが、このラボでは内容の説明はない。
Step 2.3で学習結果に基づいて予想を行うためのデータを準備して、Step 2.4で予想を実施する。gcloud ai-platform local predictが本質だろう。
Step 3では、Cloud上で学習ジョブを走らせる。ラボの進捗チェックはここから。
この2番めのステップで"YOUR_PROJECT_NAME"を与えられたプロジェクト名に変更せよという指示があるが、ここを見逃してしまって後で後悔することになった。
ここで値を与えなかったので、Step 3.1の一番最初の実行で、BUCKET_NAMEの定義不正で失敗する。%%bushの直下にBUCKET_NAME=で値をハードコードして再実行。これで成功して、ラボをクリア。
Step 3.2でも同じ問題に直面するが、とりあえずクリアし、27番ではちゃんと指示に従ってジョブIDを置き換えて実施。
もちろん、すぐには終わらない。コマンドラインから、gcloud ai-platform jobs stream-logs ジョブIDで状況確認しつつ、AI Platformコンソールからjobsを選択して状況をこちらでも確認し、緑になるのを待つ。
Step3.3では、学習結果からモデルを作成してデプロイする。AI PlatformコンソールからModel Detailsを選択して状況をこちらでも確認し、緑になるのを待つ。
最後のStep 3.4ではgcloud ai-platform predictで予測結果を出した。
残り10分ほどで無事ラボをクリア。このブログを書くことでようやく何をやっていたのかがおぼろげに理解できるようになった。Perform Foundational Data, ML, and AI Tasks in Google Cloudクエストの他のラボでもai-platformコマンドに深入りしていないようなので、中身を理解したければ、Build and Deploy Machine Learning Solutions on Vertex AIあたりに進むのが良いのだろう。深い沼に足が取られようとしている気分だ。