Databricks oto ml

Önemli

Bu özellik Genel Önizlemededir.

Databricks otomatik ml, makine öğrenimini otomatik olarak bir veri kümesine uygulamanıza yardımcı olur. Veri kümesini model eğitimi için hazırlar ve sonra bir deneme kümesi, oluşturma, ayarlama ve değerlendirme kümesini kaydeder. Sonuçları görüntüler ve kodu gözden geçirebilir, yeniden üretebilir ve değiştirebilmeniz için her deneme çalıştırması için kaynak kodu içeren bir Python Not defteri sağlar. Ayrıca, oto veri kümenizdeki Özet istatistikleri hesaplar ve bu bilgileri daha sonra gözden geçirebilmeniz için bir not defterine kaydeder.

Her model, scikit-öğren ve XGBoost gibi açık kaynak bileşenlerinden oluşturulur ve makine öğrenimi işlem hatlarınız ile kolayca düzenlenebilir ve tümleştirilebilir.

Kullanıcı arabirimini veya Python API'Sini kullanarak, oto ml 'yi çalıştırabilirsiniz.

Gereksinimler

  • Databricks Runtime 8,3 ML veya üzeri.
  • Kümeye Databricks Runtime ML çalışma zamanı ile sağlananlardan başka başka kitaplık de yüklenemez.

Oto ml Kullanıcı arabirimi

Oto Kullanıcı arabirimi, bir veri kümesindeki modeli eğitim sürecinde size kılavuzluk eden bir işlemdir. Kullanıcı arabirimine erişmek için:

  1. Sol kenar çubuğunun üstündeki kişi değiştiricisinden Machine Learning seçin.

  2. Kenar çubuğunda, > oto ml oluştur ' a tıklayın.

    Denemeleri sayfasındanyeni bir oto ml denemesi de oluşturabilirsiniz.

    Configure The oto ml deneme sayfası görüntülenir. Bu sayfada, tahmin edilecek veri kümesini, sorun türünü, hedefi veya etiket sütununu, deneme çalıştırmalarını değerlendirmek ve değerlendirmek ve koşulları durdurmak için kullanılacak ölçümü belirterek, oto ml işlemini yapılandırırsınız.

  3. Küme alanında DATABRICKS RUNTIME 8,3 ml veya üzeri çalıştıran bir küme seçin.

  4. Ml sorun türü açılan menüsünde regresyon veya Sınıflandırma' yı seçin. Yıllık gelir gibi her gözlemde sürekli bir sayısal değer tahmin etmeye çalışıyorsanız gerileme ' yı seçin. Her bir gözlemyi, iyi kredi riski veya hatalı kredi riski gibi ayrı bir sınıf kümesinden birine atamaya çalışıyorsanız sınıflandırma ' yı seçin.

  5. Veri kümesi altında tablolara gözatamıyorum' ı tıklatın. Kullanılabilir veritabanları ve tabloları listelemek için bir iletişim kutusu görüntülenir. Kullanmak istediğiniz tabloya gidin ve Seç' e tıklayın. Tablo şeması görüntülenir.

  6. Tahmin hedefi alanına tıklayın. Şemada gösterilen sütunları listelerken açılan bir açılır liste görüntülenir. Modelin tahmin etmek istediğiniz sütunu seçin.

  7. Deneme adı alanı varsayılan adı gösterir. Bunu değiştirmek için alana yeni bir ad yazın.

  8. Gelişmiş yapılandırma (isteğe bağlı) altında ek yapılandırma seçenekleri belirtebilirsiniz.

    • Değerlendirme ölçümü, çalıştırmaları Puanlama için kullanılan birincil ölçümdür .
    • Varsayılan durdurma koşullarını düzenleyebilirsiniz. Varsayılan olarak, deneme 60 dakika sonra veya 200 çalışma tamamlandığında, hangisi önce gelirse yanıt verir.
    • Veri dizini alanında, otomatik ml işlemi sırasında oluşturulan Not defterlerinin kaydedildiği bir dBFS konumu girebilirsiniz. Alanı boş bırakırsanız, Not defterleri Mlflow yapıtlarıolarak kaydedilir.
  9. Oto ml Başlat öğesine tıklayın. Deneme çalışmaya başlar ve oto ml eğitimi sayfası görüntülenir. Çalıştırmalar tablosunu yenilemek için  Yenile düğmesine tıklayın .

    Bu sayfada şunları yapabilirsiniz:

    • Deneme süresini istediğiniz zaman durdurun
    • Veri araştırma Not defterini açma
    • İzleme çalıştırmaları
    • Herhangi bir çalıştırmanın Çalıştır sayfasına gidin

Deneme tamamlandığında şunları yapabilirsiniz:

  • MLflow ile modellerden birini kaydedin ve dağıtın .
  • En iyi modeli oluşturan Not defterini gözden geçirmek ve düzenlemek için en iyi modeli Düzenle ' ye tıklayın.
  • Veri araştırma Not defterini açın.
  • Çalıştırmalar tablosundaki çalıştırmaları arayın, filtreleyin ve sıralayın.
  • Her çalıştırma için ayrıntılara bakın:
    • Deneme çalıştırması için kaynak kodu içeren Not defterini açmak için kaynak sütununa tıklayın
    • Çalıştırma sayfasını bir deneme çalıştırması hakkında ayrıntılarla birlikte görüntülemek için Başlangıç zamanı sütununa tıklayın
    • Tahmine dayalı hale getirmek için kod parçacıkları dahil olmak üzere oluşturulan model hakkındaki bilgileri görmek için modeller sütununa tıklayın

Daha sonra bu oto ml denemesine geri dönmek için denemeleri sayfasındakitabloda bulabilirsiniz.

Bir modeli, oto ml kullanıcı arabiriminden kaydetme ve dağıtma

  1. Kayıt yapılacak modelin modeller sütunundaki bağlantıya tıklayın. Bir çalıştırma tamamlandığında, en iyi model (birincil ölçüme göre) en üst satırdır.

    Modeli oluşturan çalıştırmanın çalışma sayfasının yapılar bölümü görüntülenir.

  2. Modeli  model kayıt defterinekaydetmek için modeli Kaydet düğmesine tıklayın.

  3.  Model kayıt defterine gitmek için kenar çubuğundaki modeller simge modelleri ' ne tıklayın.

  4. Model tablosunda modelinizin adına tıklayın. Kayıtlı model sayfası görüntülenir. Bu sayfadan, modele hizmetisağlayabilirsiniz.

Oto ml Python API 'SI

  1. Bir not defteri oluşturun ve DATABRICKS RUNTIME 8,3 ml veya üzeri çalıştıran bir kümeye ekleyin.

  2. Mevcut bir veri kaynağından Spark veya Pandas DataFrame yükleyin veya bir veri dosyasını DBFS 'ye yükleyin ve verileri not defterine yükleyin.

    df = spark.read.parquet("<folder-path>")
    
  3. Bir oto ml çalıştırması başlatmak için veri çerçevesini oto ml 'ye geçirin. Ayrıntılar için API belgelerine bakın.

  4. Oto ml çalıştırması başladığında, konsolda bir MLflow deneme URL 'SI görüntülenir. Çalıştırmanın ilerlemesini izlemek için bu URL 'YI kullanın. Denemeler tamamlandığında, denemeleri görmek için MLflow denemesini yenileyin.

  5. Oto ml çalıştırması tamamlandıktan sonra:

    • MLflow denemesine veya en iyi sonuçları oluşturan not defterine gitmek için çıkış özetindeki bağlantıları kullanın.
    • Data araştırma Not defterinin bağlantısını kullanarak, oto ml 'ye geçirilen verilere ilişkin bazı Öngörüler elde edin. Ayrıca, bu not defterini aynı kümeye ekleyebilir ve sonuçları yeniden oluşturmak veya ek veri analizi yapmak için Not defterini yeniden çalıştırabilirsiniz.
    • Denemeler hakkında daha fazla ayrıntı incelemek veya belirli bir deneme tarafından eğitilen bir modeli yüklemek için, oto ml çağrısından döndürülen Özet nesnesini kullanın. Ayrıntılar için API belgelerine bakın.
    • Tüm oluşturulan not defterlerini denemelerdeki kopyalayın ve sonuçları yeniden oluşturmak için aynı kümeye ekleyerek Not defterini yeniden çalıştırın. Ayrıca, ek modeller eğitmek ve bunları aynı deneyle günlüğe kaydetmek için gerekli düzenlemeleri yapabilir ve bunları yeniden çalıştırabilirsiniz.

Python API 'SI belirtimi

Python API 'SI, Sınıflandırmayı ve gerileme oto çalıştırmalarını başlatmak için işlevler sağlar. Her işlev çağrısı bir model kümesini başlatır ve her bir model için bir deneme Not defteri oluşturur.

Sınıflandırma

databricks.automl.classify(
  dataset: Union[pyspark.DataFrame, pandas.DataFrame],
  *,
  target_col: str,
  primary_metric: Optional[str],
  data_dir: Optional[str],
  timeout_minutes: Optional[int],
  max_trials: Optional[int]
) -> AutoMLSummary

Regresyon

databricks.automl.regress(
  dataset: Union[pyspark.DataFrame, pandas.DataFrame],
  *,
  target_col: str,
  primary_metric: Optional[str],
  data_dir: Optional[str],
  timeout_minutes: Optional[int],
  max_trials: Optional[int]
) -> AutoMLSummary

Parametreler

Alan Adı Tür Açıklama
veri kümesi pyspark. DataFrame Pandas. DataFrame Eğitim özellikleri ve hedefi içeren giriş veri çerçevesi.
primary_metric üstbilgisine Model performansını değerlendirmek ve derecelendirmek için kullanılan ölçüm. Gerileme için desteklenen ölçümler: "R2" (varsayılan), "Mae", "rmi", "MSE" sınıflandırma için desteklenen ölçümler: "F1" (varsayılan), "log_loss", "duyarlık", "doğruluk", "roc_auc"
target_col Str Hedef etiketin sütun adı.
data_dir biçim str
dbfs:/<folder-name>
Ara verileri depolamak için kullanılan DBFS yolu. Bu yol hem sürücü hem de çalışan düğümleri tarafından görülebilir. Boşsa AutoML ara verileri MLflow yapıtları olarak kaydeder.
timeout_minutes int AutoML denemelerinin tamamlanması için en uzun süre için isteğe bağlı parametre. Atlanırsa, denemeler herhangi bir zaman kısıtlaması olmadan (varsayılan) çalıştırılır. Geçirilen zaman aşımı 5 dakikadan azsa veya zaman aşımı en az 1 denemeyi çalıştırmak için yeterli değilse bir özel durum oluşturur. Daha uzun zaman aşımı, AutoML'nin daha fazla deneme çalıştırmasına ve daha iyi doğrulukla bir model sağlamasına olanak sağlar.
max_trials int Çalıştıracak en fazla deneme sayısı için isteğe bağlı parametre. Varsayılan değer 20'dir. Timeout=None olduğunda, en fazla deneme sayısı tamamlandıktan sonra ecek.

Döndürülenler

AutoMLSummary

Denemelerin her biri için ölçümleri, parametreleri ve diğer ayrıntıları açıklayan bir AutoML sınıflandırma çalıştırması için özet nesnesi. Ayrıca bu nesneyi belirli bir deneme sürümü tarafından eğitilen modeli yüklemek için de kullanabilirsiniz.

Özellik Tür Açıklama
Deney mlflow.entities.Experiment Denemeleri günlüğe kaydedilirken kullanılan MLflow denemesi.
Deneme List[TrialInfo] Çalıştırilen tüm denemeler hakkında bilgi içeren bir liste.
best_trial TrialInfo Birincil ölçüm için en iyi ağırlıklı puanla sonuçlanan deneme sürümü hakkında bilgi.
metric_distribution Str Tüm denemelerde birincil ölçüm için ağırlıklı puanların dağılımı.

TrialInfo

Her bir deneme için özet nesnesi.

Özellik Tür Açıklama
notebook_path Str Çalışma alanında bu deneme için oluşturulan not defterinin yolu.
notebook_url Str Bu deneme için oluşturulan not defterinin URL'si.
mlflow_run_id Str Bu deneme çalıştırması ile ilişkili MLflow çalıştırma kimliği.
metrics Dict[str, float] Bu deneme için MLflow'da günlüğe kaydedilen ölçümler.
params Dict[str, str] Bu deneme için kullanılan MLflow'da günlüğe kaydedilen parametreler.
model_path Str Bu denemede eğitilen modelin MLflow yapıt URL'si.
model_description Str Modelin kısa açıklaması ve bu modelin eğitimi için kullanılan hiperparametreler.
süre Str Dakikalar içinde eğitim süresi.
ön işlemciler Str Modeli eğitmeden önce çalışan ön işlemcilerin açıklaması.
evaluation_metric_score float Doğrulama veri kümesi için değerlendirilen birincil ölçümün puanı.
Yöntem Açıklama
load_model() Bu denemede oluşturulan ve MLflow yapıt olarak günlüğe kaydedilen modeli yükleme.

API örnekleri

AutoML ile çalışmaya başlamaya yönelik bu not defterlerini gözden geçirme.

AutoML sınıflandırma örneği not defteri

Not defterini alma

AutoML regresyon örnek not defteri

Not defterini alma

Bilinen sınırlamalar

  • Yalnızca sınıflandırma ve regresyon değerlendirilmesi
  • Yalnızca aşağıdaki özellik türleri de kullanılabilir:
    • Sayısal ( ByteType , , , , ve ShortType IntegerType LongType FloatType DoubleType )
    • Boole
    • Dize (yalnızca kategorik)
    • Zaman damgası ( TimestampType , DateType )
  • Aşağıdaki özellik türleri desteklenmiyor:
    • Görüntüler
    • Metin