磚Autologging
Databricks Autologging是一個擴展的無代碼解決方案MLflow自動測井為Databricks上的機器學習培訓課程提供自動實驗跟蹤。使用Databricks Autologging,當您從各種流行的機器學習庫中訓練模型時,可以自動捕獲模型參數、指標、文件和沿襲信息。訓練課程被記錄為MLflow跟蹤.模型文件也被跟蹤,因此您可以輕鬆地將它們記錄到MLflow模型注冊表並將它們用於實時評分無服務器實時推理或經典MLflow模型服務於數據庫.
下麵的視頻展示了Databricks在交互式Python筆記本中使用scikit-learn模型培訓課程進行自動登錄。跟蹤信息被自動捕獲並顯示在experimental Runs側欄和MLflow UI中。
需求
Databricks autoologging通常可在所有地區與Databricks運行時10.3 ML或以上。
Databricks Autologging可在選定預覽區域與Databricks運行時9.0 ML或以上。
它是如何工作的
當您將交互式Python筆記本附加到Databricks集群時,Databricks自動記錄將調用mlflow.autolog ()為您的模型訓練課程設置跟蹤。當你在筆記本上訓練模型時,模型訓練信息會自動跟蹤MLflow跟蹤.有關如何保護和管理此模型訓練信息的信息,請參見安全和數據管理.
的默認配置mlflow.autolog ()電話是:
mlflow.autolog(log_input_examples=假,log_model_signatures=真正的,log_models=真正的,禁用=假,獨家=真正的,disable_for_unsupported_versions=真正的,沉默=真正的)
你可以自定義自動登錄配置.
使用
要使用Databricks Autologging,請在支持框架使用交互式的Databricks Python筆記本。Databricks自動記錄模型沿襲信息,參數,和指標MLflow跟蹤.你也可以自定義Databricks自動記錄的行為.
請注意
對象創建的運行不應用Databricks自動記錄MLflow fluent API與mlflow.start_run ()
.在這種情況下,你必須打電話mlflow.autolog ()
將自記錄的內容保存到MLflow運行中。看到跟蹤附加內容.
自定義日誌行為
要自定義日誌記錄,使用mlflow.autolog ().此函數提供配置參數以啟用模型日誌記錄(log_models
),收集輸入例子(log_input_examples
),配置警告(沉默
),以及更多。
跟蹤附加內容
要使用Databricks Autologging創建的MLflow運行跟蹤其他指標、參數、文件和元數據,請在Databricks交互式Python筆記本中執行以下步驟:
調用mlflow.autolog ()與
獨家= False
.使用啟動MLflow運行mlflow.start_run ().你可以結束這次通話
與mlflow.start_run ()
;執行此操作時,運行將在完成後自動結束。使用MLflow跟蹤方法,例如mlflow.log_param (),以追蹤培訓前的內容。
在Databricks Autologging支持的框架中訓練一個或多個機器學習模型。
使用MLflow跟蹤方法,例如mlflow.log_metric (),以追蹤培訓後的內容。
如果你沒有使用
與mlflow.start_run ()
在步驟2中,使用結束MLflow運行mlflow.end_run ().
例如:
進口mlflowmlflow.autolog(獨家=假)與mlflow.start_run():mlflow.log_param(“example_param”,“example_value”)# <你的模型訓練代碼這裏>mlflow.log_param(“example_metric”,5)
禁用Databricks自動記錄
要禁用Databricks交互式Python筆記本中的Databricks自動登錄,請調用mlflow.autolog ()與禁用= True
:
進口mlflowmlflow.autolog(禁用=真正的)
管理員還可以禁用工作區中所有集群的Databricks自動登錄先進的的標簽。管理控製台.必須重新啟動集群才能使此更改生效。
受支持的環境和框架
交互式Python筆記本支持Databricks自動記錄,並可用於以下ML框架:
scikit-learn
Apache Spark MLlib
TensorFlow
Keras
PyTorch閃電
XGBoost
LightGBM
膠子
快。Ai(版本1.x)
statsmodels。
有關每個受支持框架的更多信息,請參見MLflow自動測井.
安全和數據管理
所有與Databricks Autologging跟蹤的模型訓練信息都存儲在MLflow Tracking中,並由實驗權限.控件共享、修改或刪除模型訓練信息MLflow跟蹤API或UI。
政府
管理員可以在工作區中為所有交互式筆記本會話啟用或禁用Databricks自動記錄先進的的標簽。管理控製台.更改直到重新啟動集群才生效。
限製
Databricks自動登錄在Databricks Runtime 8.4 ML或以下版本中不支持,也在任何版本的Databricks Runtime中不支持。要在這些運行時版本中使用自動記錄,可以顯式調用mlflow.autolog ().
Databricks作業不支持Databricks自動記錄。要從作業中使用自動記錄,可以顯式調用mlflow.autolog ().
Databricks自動登錄僅在您的Databricks集群的驅動程序節點上啟用。若要從工作節點使用自動記錄,必須顯式調用mlflow.autolog ()在每個worker上執行的代碼中。
不支持XGBoost scikit-learn集成。
Apache Spark MLlib, Hyperopt和自動MLflow跟蹤
Databricks自動記錄不會改變現有自動化MLflow跟蹤集成的行為Apache Spark MLlib而且Hyperopt.
請注意
在Databricks Runtime 10.1 ML中,禁用Apache Spark MLlib的自動MLflow跟蹤集成CrossValidator
而且TrainValidationSplit
models還禁用了所有Apache Spark MLlib模型的Databricks自動記錄功能。