python でのmlflowの使い方

目次

python でmlflow使うメモ

実験結果を比較するために便利っぽいのでmlflow を使ってみた。

パラメータと実験結果の記録をある程度自動化できる。

機械学習の実践はある種の黒魔術となることが多いので再現性を担保するための努力は後々に影響する。

使う際の手順をメモしておく。

mlflow のインストール

pip でインストールできる。

pip install mlflow

クイックスタート

pythonで以下のような記述を用いる。

with mlflow.start_run():  
   mlflow.log_param("a", 1)  
   mlflow.log_metric("b", 2)  
   mlflow.log_artifact("output.txt")

log_paramにはパラメータを入れる。

log_metricには損失関数や評価指標を入れる。valueには数値しか受け付けない。

log_params({“example”:hoge,“example2”:True})の方が便利。 同様にlog_metricsもある。

log_artifact でファイルを保存できる(csvやjsonなど)。metricの書式に当てはまらないものをこちらで保存する。

実験の種類ごとに枠を作る

CLI で以下を実行してexperimentを作成する。

mlflow experiments create --experiment-name fraud-detection

CLI でexperimentが作成されたことを確認。

experiment _idをメモしておく。

mlflow experiments list  

以下のようにpythonで記述して、experimentを指定する。

mlflow.set_experiment('experiment_name')  
  
with mlflow.start_run():  
   mlflow.log_param("a", 1)  
   mlflow.log_metric("b", 2)  
   mlflow.log_artifact("output.txt")  

実験結果の比較

CLIでサーバーを立ち上げる。

mlflow ui

表示されたアドレスをブラウザで開く。

サーバーを落とす時はctrl+c。

BTOパソコンならパソコンショップSEVEN


See also