MLflow公式ドキュメントの4種類のシナリオを再現するサンプルコードです
詳細はこちらのQiita記事を参照ください
シナリオ | 英名 | トラッキングサーバ | バックエンド | アーティファクトストレージ |
---|---|---|---|---|
1 | MLflow on localhost | ローカルに自動生成 | ローカルストレージ | ローカルストレージ |
2 | MLFlow on localhost with SQLite | ローカルに自動生成 | ローカルDB | ローカルストレージ |
3 | MLflow on localhost with Tracking Server | ローカルに手動ホスティング | ローカルDB or ストレージ | ローカルストレージ |
4 | MLflow with remote Tracking Server, backend and artifact stores | リモートサーバ | リモートDB | リモートストレージ |
・シナリオ3構成図
・シナリオ4構成図
サンプルコードは以下のような構成となっています。
シナリオ1 (デフォルト設定) |
シナリオ1 (別フォルダ指定) |
シナリオ2 | シナリオ3 | シナリオ4 | |
---|---|---|---|---|---|
サーバ側のフォルダ | /scenario1_default | /scenario1_local | /scenario2_sqlite | /scenario3_trackingserver /server | /scenario4_remote /server |
クライアント側のフォルダ | サーバ側と同じ | サーバ側と同じ | サーバ側と同じ | /scenario3_trackingserver /client | /scenario4_remote /client |
コード実行例 (ロギングのみ) |
a_log_simple_default.py | a_log_simple_local.py | a_log_simple_sqlite.py | a_log_simple_trackingserver.py | a_log_simple_remote.py |
コード実行例 (多項式回帰の次数) |
b_log_anscombe_default.py | b_log_anscombe_local.py | b_log_anscombe_sqlite.py | b_log_anscombe_trackingserver.py | b_log_anscombe_remote.py |
コード実行例 (パラメータチューニング) |
c_log_tuning_default.py | c_log_tuning_local.py | c_log_tuning_sqlite.py | c_log_tuning_trackingserver.py | c_log_tuning_remote.py |
シナリオ3、シナリオ4では、サーバ側のDocker Composeをdocker-compose run
で立ち上げた状態で、クライアント側のコードを実行してください