今日のローカルTensorFlowEverywhereイベントの出欠確認!
このページは Cloud Translation API によって翻訳されました。
Switch to English

クラウドAIプラットフォームパイプライン上のTFX

前書き

このチュートリアルは、TensorFlow Extended(TFX)とCloud AI Platform Pipelinesを紹介し、GoogleCloudで独自の機械学習パイプラインを作成する方法を学ぶのに役立つように設計されています。 TFX、AIプラットフォームパイプライン、Kubeflowとの統合、およびJupyterノートブックでのTFXとの相互作用を示しています。

このチュートリアルの最後に、GoogleCloudでホストされるMLパイプラインを作成して実行します。各実行の結果を視覚化し、作成されたアーティファクトの系統を表示することができます。

データセットを調べることから始めて、完全に機能するパイプラインで終わる、典型的なML開発プロセスに従います。その過程で、パイプラインをデバッグおよび更新し、パフォーマンスを測定する方法を探ります。

シカゴのタクシーデータセット

タクシーシカゴのタクシー

シカゴ市がリリースしたタクシー旅行データセットを使用しています。

データセットの詳細については、GoogleBigQueryをご覧くださいBigQueryUIで完全なデータセットを調べます。

モデルの目標-二項分類

顧客は20%以上または20%未満のチップを払いますか?

1. GoogleCloudプロジェクトを設定します

1.a GoogleCloudで環境をセットアップします

開始するには、GoogleCloudアカウントが必要です。すでにお持ちの場合は、スキップして[新しいプロジェクトの作成]に進んでください。

  1. Google CloudConsoleに移動します

  2. GoogleCloudの利用規約に同意する

  3. あなたは無料トライアルアカウントで起動したい場合は、をクリックして無料でお試し(または無料で始めましょう)。

    1. あなたの国を選択。

    2. 利用規約に同意します。

    3. 請求の詳細を入力します。

      この時点では課金されません。他にGoogleCloudプロジェクトがない場合は、同時に実行される最大8つのコアを含むGoogle Cloud FreeTierの制限を超えることなくこのチュートリアルを完了することができます。

1.b新しいプロジェクトを作成します。

  1. メインのGoogleCloudダッシュボードから、 Google Cloud Platformヘッダーの横にあるプロジェクトドロップダウンをクリックし、[新しいプロジェクト]を選択します。
  2. プロジェクトに名前を付け、他のプロジェクトの詳細を入力します
  3. プロジェクトを作成したら、プロジェクトのドロップダウンからプロジェクトを選択します。

2.新しいKubernetesクラスターにAIプラットフォームパイプラインをセットアップしてデプロイします

  1. AIプラットフォームパイプラインクラスターページに移動します。

    メインナビゲーションメニューの下:≡> AIプラットフォーム>パイプライン

  2. [ +新しいインスタンス]をクリックして、新しいクラスターを作成します。

  3. Kubeflow Pipelinesの概要ページで、[構成]をクリックします。

    Kubernetes Engine APIが有効になっている間、先に進むまでに数分待たなければならない場合があります。

  4. [ Kubeflowパイプラインデプロイ]ページ:

    1. クラスターのゾーン(または「リージョン」)を選択します。

    2. 重要次のクラウドAPIへのアクセスを許可するというラベルの付いたチェックボックスをオンにします。 (これは、このクラスターがプロジェクトの他の部分にアクセスするために必要です。この手順を見逃した場合、後で修正するのは少し注意が必要です。)

    3. [作成]をクリックし、クラスターが作成されるまで数分待ちます

    4. 名前空間とインスタンス名を選択します(デフォルトを使用しても問題ありません)。 [管理対象ストレージを使用する]をオンにする必要はありません。

    5. [デプロイ]をクリックし、パイプラインがデプロイされるまでしばらく待ちます。 Kubeflow Pipelinesをデプロイすると、利用規約に同意したことになります。

3. Cloud AI PlatformNotebookインスタンスをセットアップします。

  1. AIプラットフォームノートブックページに移動します。

    メインナビゲーションメニューの下:≡-> AIプラットフォーム->ノートブック

  2. プロンプトが表示されたら、Compute EngineAPIを有効にします。

  3. TensorFlow 2.1(またはそれ以降)がインストールされた新しいインスタンスを作成します。

    新しいインスタンス-> TensorFlow 2.1-> GPUなし

    無料利用枠の制限内にとどまるには、ここでデフォルト設定を受け入れないでください。このインスタンスで使用可能なvCPUの数を4から2に減らす必要があります。

    1. [新しいノートブックインスタンス]フォームの下部にある[カスタマイズ]を選択します
    2. 1つまたは2つのvCPUを備えたマシン構成を選択します

4.入門ノートブックを起動します

  1. AIプラットフォームパイプラインクラスターページに移動します。

    メインナビゲーションメニューの下:≡-> AIプラットフォーム->パイプライン

  2. このチュートリアルで使用しているクラスターの行で、[パイプラインダッシュボードを開く]をクリックします

    オープンダッシュボード

  3. [はじめに]ページで、[ TF2.1ノートブックを開く]をクリックします。

  4. このチュートリアルで使用しているNotebookインスタンスを選択し、続行します。

    選択ノートブック

5.ノートブックでの作業を続行します

インストール

はじめにノートブックは、 JupyterLabが実行されているVMにSkaffoldモジュールとともにTFXKubeflowPipelines(KFP)をインストールすることから始まります。

tfとkfpをインストールします

次に、ユーザーのPythonバイナリディレクトリとskaffoldを含むディレクトリを含むようにPATHを設定します。

パスを設定する

次に、インストールされているTFXのバージョンを確認し、インポートを実行して、プロジェクトIDを設定および出力します。

Pythonのバージョンを確認してインポートする

GoogleCloudサービスに接続する

パイプライン構成にはプロジェクトIDが必要です。プロジェクトIDは、ノートブックを介して取得し、環境変数として設定できます。

# Read GCP project id from env.
shell_output=!gcloud config list --format 'value(core.project)' 2>/dev/null
GCP_PROJECT_ID=shell_output[0]
print("GCP project ID:" + GCP_PROJECT_ID)

次に、KFPクラスターエンドポイントを設定します。

これは、パイプラインダッシュボードのURLから見つけることができます。 Kubeflow Pipelineダッシュボードに移動し、URLを確認します。エンドポイントは、 https://googleusercontent.comまでのURL内のすべてgoogleusercontent.com

ENDPOINT='' # Enter YOUR ENDPOINT here.

次に、ノートブックはカスタムDockerイメージに一意の名前を設定します。

# Docker image name for the pipeline image
CUSTOM_TFX_IMAGE='gcr.io/' + GCP_PROJECT_ID + '/tfx-pipeline'

6.テンプレートをプロジェクトディレクトリにコピーします

次のノートブックセルを編集して、パイプラインの名前を設定します。このチュートリアルでは、 my_pipelineを使用しmy_pipeline

PIPELINE_NAME="my_pipeline"
PROJECT_DIR=os.path.join(os.path.expanduser("~"),"imported",PIPELINE_NAME)

次に、ノートブックはtfxを使用してパイプラインテンプレートをコピーします。このチュートリアルでは、Chicago Taxiデータセットを使用してバイナリ分類を実行するため、テンプレートはモデルをtaxi設定します。

!tfx template copy \
  --pipeline-name={PIPELINE_NAME} \
  --destination-path={PROJECT_DIR} \
  --model=taxi

次に、ノートブックはCWDコンテキストをプロジェクトディレクトリに変更します。

%cd {PROJECT_DIR}

パイプラインファイルを参照する

Cloud AI Platform Notebookの左側に、ファイルブラウザが表示されます。パイプライン名( my_pipeline )のディレクトリが必要です。それを開いてファイルを表示します。 (ノートブック環境から開いて編集することもできます。)

# You can also list the files from the shell
 ls

上記のtfx template copyコマンドは、パイプラインを構築するファイルの基本的な足場を作成しました。これらには、Pythonソースコード、サンプルデータ、Jupyterノートブックが含まれます。これらは、この特定の例を対象としています。独自のパイプラインの場合、これらはパイプラインに必要なサポートファイルになります。

Pythonファイルの簡単な説明は次のとおりです。

  • pipeline -このディレクトリには、パイプラインの定義が含まれています
    • configs.py —パイプラインランナーの共通定数を定義します
    • pipe.py —TFXコンポーネントとpipeline.py定義します
  • modelsこのディレクトリにはMLモデル定義が含まれています。
    • features.py features_test.py —モデルの特徴を定義します
    • preprocessing.py / preprocessing_test.pytf::Transformを使用して前処理ジョブを定義します
    • estimatorこのディレクトリには、Estimatorベースのモデルが含まれています。
      • constants.py —モデルの定数を定義します
      • model.py / model_test.py推定器を使用してDNNモデルを定義します
    • kerasこのディレクトリには、Kerasベースのモデルが含まれています。
      • constants.py —モデルの定数を定義します
      • model.py / model_test.pyを使用してDNNモデルを定義します
  • beam_dag_runner.py / kubeflow_dag_runner.py —各オーケストレーションエンジンのランナーを定義します

7.Kubeflowで最初のTFXパイプラインを実行します

ノートブックは、 tfx runコマンドを使用してパイプラインをtfx runます。

ストレージに接続する

パイプラインを実行すると、 ML-Metadataに保存する必要のあるアーティファクトが作成されます。アーティファクトとは、ファイルシステムまたはブロックストレージに保存する必要のあるファイルであるペイロードを指します。このチュートリアルでは、セットアップ中に自動的に作成されたバケットを使用して、GCSを使用してメタデータペイロードを保存します。その名前は<your-project-id>-kubeflowpipelines-default

パイプラインを作成する

ノートブックはサンプルデータをGCSバケットにアップロードして、後でパイプラインで使用できるようにします。

gsutil cp data/data.csv gs://{GOOGLE_CLOUD_PROJECT}-kubeflowpipelines-default/tfx-template/data/data.csv

次に、ノートブックはtfx pipeline createコマンドを使用してパイプラインを作成します。

!tfx pipeline create  \
--pipeline-path=kubeflow_dag_runner.py \
--endpoint={ENDPOINT} \
--build-target-image={CUSTOM_TFX_IMAGE}

パイプラインの作成中に、 Dockerfilebuild.yamlが生成されてDockerイメージが構築されます。これらのファイルを他のソースファイルと一緒にソース管理システム(たとえば、git)に追加することを忘れないでください。

パイプラインを実行する

次に、ノートブックはtfx run createコマンドを使用して、パイプラインの実行実行を開始します。この実行は、Kubeflowパイプラインダッシュボードの[実験]の下に一覧表示されます。

tfx run create --pipeline-name={PIPELINE_NAME} --endpoint={ENDPOINT}

パイプラインは、Kubeflowパイプラインダッシュボードから表示できます。

8.データを検証します

データサイエンスまたはMLプロジェクトの最初のタスクは、データを理解してクリーンアップすることです。

  • 各機能のデータ型を理解する
  • 異常と欠落値を探します
  • 各機能の分布を理解する

コンポーネント

データコンポーネントデータコンポーネント

Jupyterラボファイルエディターの場合:

pipeline pipeline.py /pipeline.pyで、これらのコンポーネントをパイプラインに追加する行のコメントを解除します。

# components.append(statistics_gen)
# components.append(schema_gen)
# components.append(example_validator)

(テンプレートファイルがコピーされたとき、 ExampleGenはすでに有効になっています。)

パイプラインを更新して再実行します

# Update the pipeline
! tfx pipeline update \
  --pipeline-path=kubeflow_dag_runner.py \
  --endpoint={ENDPOINT}

! tfx run create --pipeline-name "{PIPELINE_NAME}"

パイプラインを確認してください

Kubeflow Orchestratorの場合は、KFPダッシュボードにアクセスして、パイプライン実行のページでパイプライン出力を見つけます。左側の[実験]タブをクリックし、[実験]ページの[すべての実行]をクリックします。パイプラインの名前で実行を見つけることができるはずです。

より高度な例

ここに示されている例は、実際には開始することだけを目的としています。より高度な例については、 TensorFlow Data ValidationColabを参照してください。

TFDVを使用してデータセットを探索および検証する方法の詳細については、tensorflow.orgの例を参照してください

9.機能エンジニアリング

フィーチャエンジニアリングを使用して、データの予測品質を向上させたり、次元を削減したりできます。

  • 機能の交差
  • 語彙
  • 埋め込み
  • PCA
  • カテゴリエンコーディング

TFXを使用する利点の1つは、変換コードを1回記述するだけで、結果の変換がトレーニングと提供の間で一貫していることです。

コンポーネント

変換

  • Transformは、データセットに対して機能エンジニアリングを実行します。

Jupyterラボファイルエディターの場合:

ではpipeline / pipeline.py 、検索および追加行コメントを解除変換パイプラインにします。

# components.append(transform)

パイプラインを更新して再実行します

# Update the pipeline
! tfx pipeline update \
  --pipeline-path=kubeflow_dag_runner.py \
  --endpoint={ENDPOINT}

! tfx run create --pipeline-name "{PIPELINE_NAME}"

パイプライン出力を確認する

Kubeflow Orchestratorの場合は、KFPダッシュボードにアクセスして、パイプライン実行のページでパイプライン出力を見つけます。左側の[実験]タブをクリックし、[実験]ページの[すべての実行]をクリックします。パイプラインの名前で実行を見つけることができるはずです。

より高度な例

ここに示されている例は、実際には開始することだけを目的としています。より高度な例については、 TensorFlow TransformColabを参照してください。

10.トレーニング

きれいで変換されたデータを使用してTensorFlowモデルをトレーニングします。

  • 前のステップからの変換を含めて、それらが一貫して適用されるようにします
  • 結果を本番用にSavedModelとして保存します
  • TensorBoardを使用してトレーニングプロセスを視覚化して調査する
  • また、モデルのパフォーマンスを分析するためにEvalSavedModelを保存します

コンポーネント

Jupyterラボファイルエディターの場合:

ではpipeline / pipeline.pyパイプラインにトレーナーを追加し、検索してコメントを解除:

# components.append(trainer)

パイプラインを更新して再実行します

# Update the pipeline
! tfx pipeline update \
  --pipeline-path=kubeflow_dag_runner.py \
  --endpoint={ENDPOINT}

! tfx run create --pipeline-name "{PIPELINE_NAME}"

パイプライン出力を確認する

Kubeflow Orchestratorの場合は、KFPダッシュボードにアクセスして、パイプライン実行のページでパイプライン出力を見つけます。左側の[実験]タブをクリックし、[実験]ページの[すべての実行]をクリックします。パイプラインの名前で実行を見つけることができるはずです。

より高度な例

ここに示されている例は、実際には開始することだけを目的としています。より高度な例については、 TensorBoardチュートリアルを参照してください。

11.モデルのパフォーマンスの分析

トップレベルの指標以上のものを理解する。

  • ユーザーは、クエリに対してのみモデルのパフォーマンスを体験します
  • データスライスのパフォーマンスの低下は、トップレベルの指標によって隠すことができます
  • モデルの公平性は重要です
  • 多くの場合、ユーザーまたはデータの主要なサブセットは非常に重要であり、小さい場合があります
    • クリティカルだが異常な状態でのパフォーマンス
    • インフルエンサーなどの主要なオーディエンスのパフォーマンス
  • 現在生産中のモデルを交換する場合は、最初に新しいモデルの方が優れていることを確認してください

コンポーネント

  • 評価者は、トレーニング結果の詳細な分析を実行します。

Jupyterラボファイルエディターの場合:

ではpipeline / pipeline.py 、見つけて、パイプラインへの評価者を追加する行のコメントを解除します。

components.append(evaluator)

パイプラインを更新して再実行します

# Update the pipeline
! tfx pipeline update \
  --pipeline-path=kubeflow_dag_runner.py \
  --endpoint={ENDPOINT}

! tfx run create --pipeline-name "{PIPELINE_NAME}"

パイプライン出力を確認する

Kubeflow Orchestratorの場合は、KFPダッシュボードにアクセスして、パイプライン実行のページでパイプライン出力を見つけます。左側の[実験]タブをクリックし、[実験]ページの[すべての実行]をクリックします。パイプラインの名前で実行を見つけることができるはずです。

12.モデルの提供

新しいモデルの準備ができたら、準備をします。

  • プッシャーはSavedModelsをよく知られた場所にデプロイします

展開ターゲットは、よく知られた場所から新しいモデルを受け取ります

  • TensorFlowサービング
  • TensorFlow Lite
  • TensorFlow JS
  • TensorFlowハブ

コンポーネント

  • プッシャーは、モデルをサービングインフラストラクチャにデプロイします。

Jupyterラボファイルエディターの場合:

ではpipeline / pipeline.py 、見つけて、パイプラインにプッシャーを追加する行のコメントを解除します。

# components.append(pusher)

パイプライン出力を確認する

Kubeflow Orchestratorの場合は、KFPダッシュボードにアクセスして、パイプライン実行のページでパイプライン出力を見つけます。左側の[実験]タブをクリックし、[実験]ページの[すべての実行]をクリックします。パイプラインの名前で実行を見つけることができるはずです。

利用可能な展開ターゲット

これでモデルのトレーニングと検証が完了し、モデルの生産準備が整いました。これで、次のようなTensorFlowデプロイターゲットのいずれかにモデルをデプロイできます。

  • TensorFlow Serving 、サーバーまたはサーバーファームでモデルを提供し、RESTやgRPC推論リクエストを処理します。
  • TensorFlow Lite 、AndroidまたはiOSのネイティブモバイルアプリケーション、またはRaspberry Pi、IoT、またはマイクロコントローラーアプリケーションにモデルを含めるため。
  • TensorFlow.js 、WebブラウザまたはNode.JSアプリケーションでモデルを実行するため。

より高度な例

上記の例は、実際には開始することのみを目的としています。以下は、他のクラウドサービスとの統合の例です。

Kubeflowパイプラインのリソースに関する考慮事項

ワークロードの要件に応じて、KubeflowPipelinesデプロイメントのデフォルト構成がニーズを満たす場合と満たさない場合があります。 KubeflowDagRunnerConfig呼び出しでpipeline_operator_funcsを使用して、リソース構成をカスタマイズできます。

pipeline_operator_funcsのリストであるOpFunc生成されたすべての変換アイテム、 ContainerOpからコンパイルされたKFPパイプライン仕様にインスタンスをKubeflowDagRunner

たとえば、メモリを構成するには、 set_memory_requestを使用して必要なメモリの量を宣言できます。これを行う一般的な方法は、 set_memory_requestラッパーを作成し、それを使用してパイプラインOpFuncのリストに追加することです。

def request_more_memory():
  def _set_memory_spec(container_op):
    container_op.set_memory_request('32G')
  return _set_memory_spec

# Then use this opfunc in KubeflowDagRunner
pipeline_op_funcs = kubeflow_dag_runner.get_default_pipeline_operator_funcs()
pipeline_op_funcs.append(request_more_memory())
config = KubeflowDagRunnerConfig(
    pipeline_operator_funcs=pipeline_op_funcs,
    ...
)
kubeflow_dag_runner.KubeflowDagRunner(config=config).run(pipeline)

同様のリソース構成機能は次のとおりです。

  • set_memory_limit
  • set_cpu_request
  • set_cpu_limit
  • set_gpu_limit

BigQueryExampleGen試しください

BigQueryは、サーバーレスで、拡張性が高く、費用効果の高いクラウドデータウェアハウスです。 BigQueryは、TFXのトレーニング例のソースとして使用できます。このステップでは、 BigQueryExampleGenをパイプラインに追加します。

Jupyterラボファイルエディターの場合:

ダブルクリックしてpipeline.pyを開きますCsvExampleGenBigQueryExampleGenインスタンスを作成する行のコメントを解除します。また、 create_pipeline関数のquery引数のコメントを解除する必要がありcreate_pipeline

BigQueryに使用するGCPプロジェクトを指定する必要があります。これは、パイプラインを作成するときにbeam_pipeline_args --projectを設定することで行われます。

ダブルクリックしてconfigs.pyを開きconfigs.pyBIG_QUERY_WITH_DIRECT_RUNNER_BEAM_PIPELINE_ARGSおよびBIG_QUERY_QUERY定義のコメントを解除します。このファイルのプロジェクトIDとリージョンの値をGCPプロジェクトの正しい値に置き換える必要があります。

ディレクトリを1レベル上に変更します。ファイルリストの上にあるディレクトリの名前をクリックします。ディレクトリの名前はパイプラインの名前であり、パイプライン名を変更しなかった場合はmy_pipelineます。

ダブルクリックしてkubeflow_dag_runner.pyを開きkubeflow_dag_runner.pycreate_pipeline関数の2つの引数querybeam_pipeline_argsコメントを解除しcreate_pipeline

これで、パイプラインはサンプルソースとしてBigQueryを使用する準備が整いました。以前と同じようにパイプラインを更新し、手順5と6で行ったように新しい実行実行を作成します。

パイプラインを更新して再実行します

# Update the pipeline
!tfx pipeline update \
--pipeline-path=kubeflow_dag_runner.py \
--endpoint={ENDPOINT}

!tfx run create --pipeline-name {PIPELINE_NAME} --endpoint={ENDPOINT}

Dataflowをお試しください

いくつかのTFXコンポーネントは、Apache Beam使用してデータ並列パイプラインを実装します。これは、 Google CloudDataflowを使用してデータ処理ワークロードを分散できることを意味します。このステップでは、ApacheBeamのデータ処理バックエンドとしてDataflowを使用するようにKubeflowオーケストレーターを設定します。

# Select your project:
gcloud config set project YOUR_PROJECT_ID

# Get a list of services that you can enable in your project:
gcloud services list --available | grep Dataflow

# If you don't see dataflow.googleapis.com listed, that means you haven't been
# granted access to enable the Dataflow API.  See your account adminstrator.

# Enable the Dataflow service:

gcloud services enable dataflow.googleapis.com

pipelineをダブルクリックしてディレクトリを変更し、ダブルクリックしてconfigs.pyを開きconfigs.pyGOOGLE_CLOUD_REGIONDATAFLOW_BEAM_PIPELINE_ARGS定義のコメントを解除します。

ディレクトリを1レベル上に変更します。ファイルリストの上にあるディレクトリの名前をクリックします。ディレクトリの名前はパイプラインの名前であり、変更しなかった場合はmy_pipelineます。

ダブルクリックしてkubeflow_dag_runner.pyを開きkubeflow_dag_runner.pybeam_pipeline_argsコメントを解除しbeam_pipeline_args 。 (また、ステップ7で追加した現在のbeam_pipeline_argsbeam_pipeline_argsてください。)

パイプラインを更新して再実行します

# Update the pipeline
!tfx pipeline update \
--pipeline-path=kubeflow_dag_runner.py \
--endpoint={ENDPOINT}

!tfx run create --pipeline-name {PIPELINE_NAME} --endpoint={ENDPOINT}

Dataflowジョブは、 CloudConsoleのDataflowにあります。

KFPでクラウドAIプラットフォームのトレーニングと予測を試す

TFXは、トレーニングと予測のためのCloud AI Platformなど、いくつかのマネージドGCPサービスと相互運用します。 MLモデルをトレーニングするためのマネージドサービスであるCloudAI PlatformTrainingを使用するようにTrainerコンポーネントを設定できます。さらに、モデルが構築されて提供される準備ができたら、モデルをCloud AI PlatformPredictionにプッシュして提供できます。このステップでは、Cloud AIPlatformサービスを使用するようにTrainerおよびPusherコンポーネントを設定します。

ファイルを編集する前に、まずAI Platform Training&PredictionAPIを有効にする必要がある場合があります

pipelineをダブルクリックしてディレクトリを変更し、ダブルクリックしてconfigs.pyを開きconfigs.pyGOOGLE_CLOUD_REGIONGCP_AI_PLATFORM_TRAINING_ARGS 、およびGCP_AI_PLATFORM_SERVING_ARGSの定義のコメントを解除します。我々が設定する必要がありますように、我々は、クラウドAIプラットフォームのトレーニングでモデルを訓練するために私たちのカスタム構築されたコンテナの画像を使用しますmasterConfig.imageUriGCP_AI_PLATFORM_TRAINING_ARGS同じ値にCUSTOM_TFX_IMAGE以上。

ディレクトリを1レベル上に変更し、ダブルクリックしてkubeflow_dag_runner.pyを開きkubeflow_dag_runner.pyai_platform_training_argsai_platform_serving_argsコメントを解除しai_platform_serving_args

パイプラインを更新して再実行します

# Update the pipeline
!tfx pipeline update \
--pipeline-path=kubeflow_dag_runner.py \
--endpoint={ENDPOINT}

!tfx run create --pipeline-name {PIPELINE_NAME} --endpoint={ENDPOINT}

トレーニングジョブはCloudAI PlatformJobsにあります。パイプラインが正常に完了した場合は、 CloudAIプラットフォームモデルでモデルを見つけることができます。

14.独自のデータを使用する

このチュートリアルでは、ChicagoTaxiデータセットを使用してモデルのパイプラインを作成しました。次に、独自のデータをパイプラインに入れてみてください。データは、Google Cloud Storage、BigQuery、CSVファイルなど、パイプラインがアクセスできる場所であればどこにでも保存できます。

データに対応するためにパイプライン定義を変更する必要があります。

データがファイルに保存されている場合

  1. 変更DATA_PATHkubeflow_dag_runner.py位置を示します。

データがBigQueryに保存されている場合

  1. BIG_QUERY_QUERY BIG_QUERY_QUERYをクエリステートメントに変更します。
  2. 機能の追加models / features.py
  3. models preprocessing.pyを変更して、トレーニング用の入力データ変換します
  4. models / keras model.pyおよびmodels / keras / constants.pyを変更して、MLモデル記述します

トレーナーの詳細

トレーニングパイプラインの詳細については、トレーナーコンポーネントガイドを参照してください。

清掃

このプロジェクトで使用されているすべてのGoogleCloudリソースをクリーンアップするには、チュートリアルで使用したGoogleCloud プロジェクト削除します

または、各コンソールにアクセスして、個々のリソースをクリーンアップすることもできます。- GoogleCloud Storage - Google Container Registry - Google Kubernetes Engine