磚Autologging

Databricks Autologging是一個擴展的無代碼解決方案MLflow自動測井為Databricks上的機器學習培訓課程提供自動實驗跟蹤。使用Databricks Autologging,當您從各種流行的機器學習庫中訓練模型時,可以自動捕獲模型參數、指標、文件和沿襲信息。訓練課程被記錄為MLflow跟蹤.模型文件也被跟蹤,因此您可以輕鬆地將它們記錄到MLflow模型注冊表並將它們用於實時評分無服務器實時推理經典MLflow模型服務於數據庫

下麵的視頻展示了Databricks在交互式Python筆記本中使用scikit-learn模型培訓課程進行自動登錄。跟蹤信息被自動捕獲並顯示在experimental Runs側欄和MLflow UI中。

Autologging例子

需求

  • Databricks autoologging通常可在所有地區與Databricks運行時10.3 ML或以上。

  • Databricks Autologging可在選定預覽區域與Databricks運行時9.0 ML或以上。

它是如何工作的

當您將交互式Python筆記本附加到Databricks集群時,Databricks自動記錄將調用mlflow.autolog ()為您的模型訓練課程設置跟蹤。當你在筆記本上訓練模型時,模型訓練信息會自動跟蹤MLflow跟蹤.有關如何保護和管理此模型訓練信息的信息,請參見安全和數據管理

的默認配置mlflow.autolog ()電話是:

mlflowautologlog_input_examples,log_model_signatures真正的,log_models真正的,禁用,獨家真正的,disable_for_unsupported_versions真正的,沉默真正的

你可以自定義自動登錄配置

使用

要使用Databricks Autologging,請在支持框架使用交互式的Databricks Python筆記本。Databricks自動記錄模型沿襲信息,參數,和指標MLflow跟蹤.你也可以自定義Databricks自動記錄的行為

請注意

對象創建的運行不應用Databricks自動記錄MLflow fluent APImlflow.start_run ().在這種情況下,你必須打電話mlflow.autolog ()將自記錄的內容保存到MLflow運行中。看到跟蹤附加內容

自定義日誌行為

要自定義日誌記錄,使用mlflow.autolog ().此函數提供配置參數以啟用模型日誌記錄(log_models),收集輸入例子(log_input_examples),配置警告(沉默),以及更多。

跟蹤附加內容

要使用Databricks Autologging創建的MLflow運行跟蹤其他指標、參數、文件和元數據,請在Databricks交互式Python筆記本中執行以下步驟:

  1. 調用mlflow.autolog ()獨家= False

  2. 使用啟動MLflow運行mlflow.start_run ().你可以結束這次通話mlflow.start_run ();執行此操作時,運行將在完成後自動結束。

  3. 使用MLflow跟蹤方法,例如mlflow.log_param (),以追蹤培訓前的內容。

  4. 在Databricks Autologging支持的框架中訓練一個或多個機器學習模型。

  5. 使用MLflow跟蹤方法,例如mlflow.log_metric (),以追蹤培訓後的內容。

  6. 如果你沒有使用mlflow.start_run ()在步驟2中,使用結束MLflow運行mlflow.end_run ()

例如:

進口mlflowmlflowautolog獨家mlflowstart_run():mlflowlog_param“example_param”,“example_value”# <你的模型訓練代碼這裏>mlflowlog_param“example_metric”,5

禁用Databricks自動記錄

要禁用Databricks交互式Python筆記本中的Databricks自動登錄,請調用mlflow.autolog ()禁用= True

進口mlflowmlflowautolog禁用真正的

管理員還可以禁用工作區中所有集群的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而且TrainValidationSplitmodels還禁用了所有Apache Spark MLlib模型的Databricks自動記錄功能。