宣布MLflow 1.1版本
2019年7月23日 在公司博客上
我們興奮地宣布今天MLflow 1.1的發布。在這個版本中,我們專注於充實MLflow和改善的跟蹤組件可視化組件在UI中。
一些主要的功能包括:
- 自動記錄從TensorFlow和Keras
- 平行坐標圖跟蹤的UI
- 熊貓DataFrame基於搜索API
- Java API流利
- Kubernetes MLflow項目執行後端
- 搜索分頁
的所有功能的完整列表可以在更改日誌。你可以找到MLflow PyPI上1.1,Maven和凹口。檢查文檔並提供反饋GitHub。
有什麼新的MLflow 1.1
Autologging TensorFlow和Keras
MLflow 1.1提供了輕量級的autologging指標、參數和模型從你TensorFlow Keras模型培訓運行——叫mlflow.tensorflow.autolog()或
你使用mlflow.keras.autolog()的框架。Autologging不需要手動指標和參數日誌語句和提供了開箱即用的模型跟蹤培訓的代碼沒有任何修改。
這裏有一個例子使用Keras IMDB情緒分類的例子:
從keras.preprocessing進口序列從keras.models進口順序從keras.layers進口密度、嵌入LSTM從keras.datasets進口imdb進口mlflow.kerasmlflow.keras.autolog ()#這是你所需要的!max_features =20000年maxlen =80年batch_size =32(x_train y_train) (x_test y_test) = imdb.load_data (num_words = max_features)
…
模型。fit (x_train y_train,batch_size = batch_size,時代=15,validation_data = (x_test y_test))
我們可以查看自動對數量度的MLflow界麵:
您還可以查看示例用法Keras和TensorFlow在MLflow GitHub庫。
平行坐標圖
在n維空間可視化關係在機器學習應用程序尤為重要。當比較MLflow運行時,你想了解一組不同的hyperparameters將影響模型評價指標如驗證損失。為了達到這個目標,我們添加了支持顯示一個平行坐標圖當比較不同MLflow運行。
這是一個例子的數據autologged TensorFlow虹膜的例子:
https://www.youtube.com/watch?v=pBr7jlXjqHs
對於這個例子,我們可以看到,使用隻有2層給出了精度高。3或4層,精度降低,因為我們可能會過度擬合訓練數據的模型。
熊貓DataFrame搜索API
比較和搜索通過運行在一個實驗是非常重要的在決定哪些模型應該前進的測試和部署。雖然您可以使用MLflow UI搜索和比較,這變得困難的數量變大。這就是為什麼我們已經實現了一個新的search_runs API MLflow Python客戶機返回實驗運行在一個熊貓DataFrame。通過這種方式,您可以使用熊貓和其他策劃圖書館以編程方式分析跑步。
DataFrame包含run_id, experiment_id、狀態和artifact_uri。它還將包含的指標、參數和標簽每次運行。例如:
進口mlflow打印(mlflow.search_runs (filter_string =”指標。foo >0.5"))
run_id | experiment_id | metrics.foo | params.param1 | … | tags.mlflow.source.git.commit | tags.mlflow.user |
a3edc64fd9a042f2a8d4816be92555d5 | 0 | 2.84 | 39 | 2 ef523a6f5b60f971df261274fe2bc1cc809ca0f | 約翰 |
Java API流利
Java流利的API提供了一個更高級別的接口創建和MLflow運行日誌。這個API與低級MlflowClient API,本質上是一個REST API包裝器。下麵的例子顯示了一個簡單的使用新的API來創建和運行到一個新的日誌。
進口org.mlflow.tracking.ActiveRun;進口org.mlflow.tracking.MlflowContext;MlflowContext mlflow =新MlflowContext ();ActiveRun運行= mlflow.startRun (“運行”);run.logParam (“阿爾法”,“0.0”);run.logMetric (“MSE”,0.0);run.endRun ();
Kubernetes執行後端項目
MLflow 1.1,你現在可以運行MLflow項目Kubernetes集群。任何MLflow項目碼頭工人的環境是支持的。作為一個MLflow執行您的項目代碼Kubernetes工作並定期監控其狀態,直到完成。你可以選擇一個目標Kubernetes集群和碼頭工人注冊為您的項目使用一個簡單的後台運行配置文件。有關更多信息,請查看新功能文檔和GitHub上更新的例子。我們要感謝@marcusrehm的貢獻這個激動人心的新功能!
搜索分頁
為了使MLflow規模與成千上萬的運行實驗,我們已經改變了搜索API使用分頁界麵和用戶界麵。
https://www.youtube.com/watch?v=5J5Q7xEsG-g
其他功能和更新
我們已經強調了一小部分的功能在MLflow發布1.1以上。我們歡迎更多的輸入(電子郵件保護)或提出問題或提交補丁在GitHub上。關於MLflow的使用問題,我們有一個MLflow標簽堆棧溢出。您可以遵循@MLflow在Twitter上。
1.1之後的下一個什麼
超越1.1版本,我們正在致力於下一個主要特性是MLflow模型注冊表,這將允許您管理您的模型的生命周期從實驗到部署和監控。我們宣布這在其他MLflow路線圖更新火花AI MLflow峰會主題去年4月。
到來,我們也很興奮火花AI歐洲峰會10月15日至17日。在峰會上我們會有一個訓練專用的MLflow和模型部署。早起的人登記2019年8月16日結束。
最後,我們還將有一個研討會在8月1日Productionizing機器學習產品經理與克萊門斯Mewald MLflow和喬爾·托馬斯,高級解決方案架構師。
閱讀更多
開始MLflow在你的筆記本電腦或磚,您可以:
學分
我們想要感謝下列貢獻者更新,doc變化,和貢獻在MLflow 1.1: Avinash Raghuthu, Aaron戴維森Akshaya Annavajhala,安穆立特Baveja,安德魯·陳安德魯•牧杖Ankit Mathur韓寧,哈維爾·Luraschi麗莎Shakury,馬庫斯雷姆曾為此寫過馬泰Zaharia馬克斯•艾倫尼古拉•Laille理查德•藏Sid默奇,哈斯默奇,斯蒂芬妮Bodoff,安蘇,Taur1ne,烏維l . Korn ahutterTA,之一Apurva科技,科裏Zumar, kafendt, lennon310, nathansuh,托馬斯Nykodym