MLOps Academy · レッスン

params.yamlで実行をパラメーター化する

コードを編集せずにハイパーパラメーターを探索します。

レッスン 4/413 ステップ

「params.yamlで実行をパラメーター化する」はCoddyKit上の無料MLOps Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはMLOps Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 MLOps Academyコースには全4レッスンが含まれています。

調整のためにコードを編集するのをやめる

train.pyを編集して学習率を変更する方法は、扱いにくく追跡も困難です。代わりにDVCは、params.yamlというファイルから設定を読み込みます。🎛️

params.yamlに保存する内容

params.yamlファイルは、ステージごとにまとめたハイパーパラメータを保存するプレーンなYAMLファイルです。実行設定を変更する場所を1つにまとめられます。

train:
  learning_rate: 0.01
  epochs: 20
prep:
  test_size: 0.2

ステージでパラメータを宣言する

-pフラグを使って、ステージが使用するパラメータを指定します。DVCはファイルの依存関係と同じように、これらの値の変更を監視します。

dvc stage add -n train \
  -p train.learning_rate,train.epochs \
  -d data/prepared python train.py

Pythonでパラメータを読み込む

スクリプトでYAMLを読み込み、必要な値を取り出します。数値はparams.yamlに置いたまま、コードを汎用的に保てます。

import yaml
p = yaml.safe_load(open("params.yaml"))
lr = p["train"]["learning_rate"]

値を変更して再実行する

パラメータを編集してdvc reproを実行します。DVCは値の変更を検出し、そのパラメータを宣言したstagesだけを再実行します。

CLIからパラメータを上書きする

dvc exp run --set-paramを使うと、ファイルを編集せずに1回の実行だけ値を上書きできます。簡単な what-if の確認に便利です。

dvc exp run --set-param train.epochs=50

Experimentでスイープする

DVCのexperimentsを使うと、多数のパラメータの組み合わせを一度にキューに追加できます。コードに触れずに値のグリッドをスイープできます。

dvc exp run --set-param train.learning_rate=0.001
dvc exp run --set-param train.learning_rate=0.1

実行結果を表で比較する

dvc exp showを実行すると、すべてのExperimentのパラメータとメトリクスを並べて確認できます。最適な組み合わせを一目で見つけられます。

dvc exp show

パラメータとメトリクスを組み合わせる

出力スコアをmetricsとして宣言すると、DVCが各パラメータセットと結果を関連付けます。これにより、チューニングの因果関係が明確になります。

パラメータもGitで管理される

params.yamlはテキストファイルなので、チューニングの変更はすべてGit historyに記録されます。どの設定でどのモデルが生成されたかを常に確認できます。

再現可能なスイープ

パラメータをファイルに保存し、出力をメトリクスにすると、誰でも同じsweepを再実行して同じ数値を得られます。これが本当の再現性です。

クイックチェック

パラメータが再実行を引き起こす仕組みを思い出しましょう。

まとめ: パラメータ化された実行

設定をparams.yamlに移し、ステージごとに宣言し、experimentsで値をスイープしました。これで、コードを変更せずに再現可能なチューニングができます。🧪

無料で開始

AI チューターと学ぶ Python — 無料

ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。

コース
30
レッスン
120

よくある質問

「params.yamlで実行をパラメーター化する」レッスンは無料ですか?

はい。「params.yamlで実行をパラメーター化する」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、MLOps Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 MLOps Academyコースには全4レッスンが含まれています。

「params.yamlで実行をパラメーター化する」で何を学びますか?

コードを編集せずにハイパーパラメーターを探索します。 ブラウザで直接実行するハンズオンコードでMLOps Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

MLOps Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのMLOps Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。

「params.yamlで実行をパラメーター化する」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このMLOps Academyレッスンでコードを書いて実行できますか?

はい。すべてのMLOps Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. ステージ:取り込み、準備、学習、評価
  2. DVCのステージでパイプラインを定義する
  3. 変更のないステップをキャッシュしてスキップする
  4. params.yamlで実行をパラメーター化する
← MLOps Academyに戻る