params.yamlで実行をパラメーター化する
コードを編集せずにハイパーパラメーターを探索します。
「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.pyPythonでパラメータを読み込む
スクリプトで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=50Experimentでスイープする
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フィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- ステージ:取り込み、準備、学習、評価
- DVCのステージでパイプラインを定義する
- 変更のないステップをキャッシュしてスキップする
- params.yamlで実行をパラメーター化する