Hiperparaméterek finomhangolása

A gépi tanuláshoz készült Databricks Runtime részét képezi a Hyperopt, egy nyílt forráskódú eszköz, amely automatizálja a modell kiválasztásának és a hiperparaméterek finomhangolásának folyamatát.

Hiperparaméter finomhangolása Ray használatával

A Databricks Runtime ML tartalmazza a Rayt, egy nyílt forráskódú keretrendszert, amely az ML-munkafolyamatok és AI-alkalmazások skálázására szolgáló párhuzamos számítási feldolgozásra specializálódott. Lásd: A Ray használata az Azure Databricksben.

Hiperparaméterek hangolása a Hyperopttal

A Databricks Runtime ML részét képezi a Hyperopt Python-kódtár, amely megkönnyíti az elosztott hiperparaméter-finomhangolást és a modellkiválasztást. A Hyperopt segítségével átvizsgálhatja a Python-modelleket, miközben módosításokat hajt végre az algoritmusokon és a hiperparamétereken az Ön által meghatározott munkaterületeken. A Hyperopt egyaránt használható elosztott gépi tanulási algoritmusokkal, mint az Apache Spark MLlib és a Horovod, és olyan egygépes gépi tanulási modellekkel, mint a scikit-learn és a TensorFlow.

A Hyperopt használatának alapvető lépései a következők:

  1. A minimalizálni kívánt célfüggvény meghatározása. Ez általában a betanítási vagy az ellenőrzési veszteség.
  2. A hiperparaméter keresési területének meghatározása. A Hyperopt olyan feltételes keresési területet biztosít, amely lehetővé teszi a különböző gépi tanulási algoritmusok egyidejű összehasonlítását.
  3. A keresési algoritmus megadása. A Hyperopt olyan sztochasztikus finomhangolási algoritmusokat használ, amelyek jóval hatékonyabb keresést tesznek lehetővé a hiperparaméterek területén, mint a determinisztikus rácskeresés.
  4. A következő Hyperopt-függvény futtatása: fmin(). Az fmin() megvizsgálja az előző lépésekben megadott elemeket, majd azonosítja azokat a hiperparamétereket, amelyek minimalizálják a célfüggvényt.

A Hyperopt scikit-learn-algoritmusokkal való használatának gyors megkezdéséhez lásd:

A Hyperopt működésével kapcsolatos részletekért és további példákért lásd:

Automatizált MLflow-követés

Feljegyzés

Az MLlib automatizált MLflow-nyomkövetése alapértelmezés szerint elavult és le van tiltva a Databricks Runtime 10.4 LTS ML-t és újabb verziót futtató fürtökön. Ehelyett az MLflow PySpark ML automatikus aktiválását használja a hívássalmlflow.pyspark.ml.autolog(), amely alapértelmezés szerint engedélyezve van a Databricks autologging funkcióval.

A databricks runtime 10.4 LTS ML és újabb verziókban a régi MLlib automatizált MLflow-nyomkövetés használatához engedélyezze a Spark-konfigurációkspark.databricks.mlflow.trackMLlib.enabled true és spark.databricks.mlflow.autologging.enabled falsea .