Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Makine öğrenmesi deneyi, ilgili tüm makine öğrenmesi çalışmaları için birincil organizasyon ve kontrol birimidir. çalıştırma, model kodunun tek bir yürütülmesine karşılık gelir. MLflow izleme süreçleri, deneyler ve çalıştırmalar üzerine kuruludur.
Makine öğrenmesi denemeleri, veri bilimcilerinin makine öğrenmesi kodlarını çalıştırırken parametreleri, kod sürümlerini, ölçümleri ve çıkış dosyalarını günlüğe kaydetmesine olanak sağlar. Denemeler ayrıca çalıştırmaları görselleştirmenize, aramanıza ve karşılaştırmanıza, ayrıca diğer araçlarda analiz için çalıştırma dosyalarını ve meta verileri indirmenize olanak tanır.
Bu makalede, veri bilimcilerinin geliştirme sürecini düzenlemek ve birden çok çalıştırmayı izlemek için makine öğrenmesi denemeleriyle nasıl etkileşim kurabileceği ve bunları nasıl kullanabileceği hakkında daha fazla bilgi ediniyorsunuz.
Önkoşullar
- Power BI Premium aboneliği. Yoksa bkz. Power BI Premium nedir?
- Atanmış premium kapasiteye sahip bir Power BI Çalışma Alanı.
Deneme oluşturma
Makine öğrenmesi denemesini doğrudan doku kullanıcı arabiriminden (UI) veya MLflow API'sini kullanan kod yazarak oluşturabilirsiniz.
Kullanıcı arabirimini kullanarak deneme oluşturma
Kullanıcı arabiriminden makine öğrenmesi denemesi oluşturmak için:
Yeni bir çalışma alanı oluşturun veya var olan bir çalışma alanını seçin.
Çalışma alanınızın sol üst kısmında Yeni öğe'yi seçin. Verileri analiz etme ve eğit bölümündeDeneme'yi seçin.
Dikey menüden ... içinde bulunabilecek Oluştur'u seçin.
Veri Bilimi'nin altında Deneme'yi seçin.
Bir deneme adı girin ve Oluştur'u seçin. Bu eylem çalışma alanınızda boş bir deneme oluşturur.
Denemeyi oluşturduktan sonra, koşu ölçümlerini ve parametrelerini izlemek için koşular eklemeye başlayabilirsiniz.
MLflow API'sini kullanarak deneme oluşturma
Ayrıca mlflow.create_experiment() veya mlflow.set_experiment() API'lerini kullanarak yazma deneyiminizden doğrudan bir makine öğrenmesi denemesi oluşturabilirsiniz. Aşağıdaki kodda <EXPERIMENT_NAME> öğesini denemenizin adıyla değiştirin.
import mlflow
# This will create a new experiment with the provided name.
mlflow.create_experiment("<EXPERIMENT_NAME>")
# This will set the given experiment as the active experiment.
# If an experiment with this name does not exist, a new experiment with this name is created.
mlflow.set_experiment("<EXPERIMENT_NAME>")
Deneydeki çalıştırmaları yönet
Makine öğrenmesi denemesi, basitleştirilmiş izleme ve karşılaştırma için bir çalıştırma koleksiyonu içerir. Bir denemede veri bilimcisi çeşitli çalıştırmalarda gezinebilir ve temel alınan parametreleri ve ölçümleri inceleyebilir. Veri bilimciler, hangi parametre alt kümesinin istenen model performansını verdiğini belirlemek için makine öğrenmesi denemesi içindeki çalıştırmaları da karşılaştırabilir.
Deneme çalıştırmalarını görüntülemek için denemenin görünümünden Çalıştır listesi'ni seçin.
Çalıştırma listesinden çalıştırma adını seçerek belirli bir çalıştırmanın ayrıntılarına gidebilirsiniz.
Çalıştırma ayrıntılarını izleme
Makine öğrenmesi çalıştırması, model kodunun tek bir yürütülmesine karşılık gelir. Her çalıştırma için aşağıdaki bilgileri izleyebilirsiniz:
Her çalıştırma aşağıdaki bilgileri içerir:
- Kaynak: Çalıştırmayı oluşturan not defterinin adı.
- Kayıtlı Sürüm: Çalıştırmanın makine öğrenmesi modeli olarak kaydedilip kaydedilmediğini gösterir.
- Başlangıç tarihi: Çalıştırmanın başlangıç saati.
- Durum: Çalıştırmanın ilerleme durumu.
- Hiper parametreler: Anahtar-değer çiftleri olarak kaydedilen hiper parametreler. Hem anahtarlar hem de değerler dizelerdir.
- Ölçümler: Anahtar-değer çiftleri olarak kaydedilen ölçümleri çalıştırın. Değer sayısaldır.
- Çıkış dosyaları: Herhangi bir biçimdeki çıkış dosyaları. Örneğin, görüntüleri, ortamı, modelleri ve veri dosyalarını kaydedebilirsiniz.
- Etiketler: Çalıştırmalara anahtar-değer çiftleri olarak atanan meta veriler.
Çalıştırma listesini görüntüle
Bir denemedeki tüm çalıştırmaları Çalıştırma listesi görünümünde görüntüleyebilirsiniz. Bu görünüm, son etkinlikleri izlemenize, ilgili Spark uygulamasına hızla atlamanıza ve çalıştırma durumuna göre filtreler uygulamanıza olanak tanır.
Çalıştırma listesini görüntüle
Bir denemedeki tüm çalıştırmaları Çalıştırma listesi görünümünde görüntüleyebilirsiniz. Bu görünüm, son etkinlikleri izlemenize, ilgili Spark uygulamasına hızla atlamanıza ve çalıştırma durumuna göre filtreler uygulamanıza olanak tanır.
Çalıştırmaları karşılaştır ve filtrele
Makine öğrenmesi çalıştırmalarınızın kalitesini karşılaştırmak ve değerlendirmek için, deneme içindeki seçili çalıştırmalar arasındaki parametreleri, ölçümleri ve meta verileri karşılaştırabilirsiniz.
Çalıştırmalara etiket uygulama
Deneme çalıştırmaları için MLflow etiketlemesi, kullanıcıların çalıştırmalarına anahtar-değer çiftleri biçiminde özel meta veriler eklemesine olanak tanır. Bu etiketler belirli özniteliklere göre çalıştırmaları kategorilere ayırmanıza, filtrelemenize ve aramanıza yardımcı olur, böylece MLflow platformundaki denemeleri yönetmeyi ve çözümlemeyi kolaylaştırır. Kullanıcılar model türleri, parametreler veya ilgili tanımlayıcılar gibi bilgilerle çalıştırmaları etiketlemek için etiketleri kullanabilir ve denemelerin genel düzenlemesini ve izlenebilirliğini geliştirebilir.
Bu kod parçacığı bir MLflow çalıştırması başlatır, bazı parametreleri ve ölçümleri kaydeder ve çalıştırmayı kategorilere ayırmak ve daha fazla bilgi sağlamak için etiketler ekler.
import mlflow
import mlflow.sklearn
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error
from sklearn.datasets import fetch_california_housing
# Autologging
mlflow.autolog()
# Load the California housing dataset
data = fetch_california_housing(as_frame=True)
X = data.data
y = data.target
# Split the data
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# Start an MLflow run
with mlflow.start_run() as run:
# Train the model
model = LinearRegression()
model.fit(X_train, y_train)
# Predict and evaluate
y_pred = model.predict(X_test)
# Add tags
mlflow.set_tag("model_type", "Linear Regression")
mlflow.set_tag("dataset", "California Housing")
mlflow.set_tag("developer", "Bob")
Etiketler uygulandıktan sonra sonuçları doğrudan satır içi MLflow pencere öğesinden veya çalıştırma ayrıntıları sayfasından görüntüleyebilirsiniz.
Uyarı
Uyarı: Dokuda MLflow Deneme Çalışmalarına Etiket Uygulama Sınırlamaları
- Boş Olmayan Etiketler: Etiket adları veya değerleri boş olamaz. Boş bir ad veya değere sahip bir etiket uygulamayı denerseniz işlem başarısız olur.
- Etiket Adları: Etiket adları en fazla 250 karakter uzunluğunda olabilir.
- Etiket Değerleri: Etiket değerleri en fazla 5000 karakter uzunluğunda olabilir.
-
Kısıtlanmış Etiket Adları: Belirli ön eklerle başlayan etiket adları desteklenmez. Özellikle,
synapseml,mlflowveyatridentile başlayan etiket adları kısıtlanır ve kabul edilmeyecektir.
Çalıştırmaları görsel olarak karşılaştırma
Mevcut denemede çalıştırmaları görsel olarak karşılaştırabilir ve filtreleyebilirsiniz. Görsel karşılaştırma, birden çok çalıştırma arasında kolayca gezinmenizi ve bunlar arasında sıralama yapmanızı sağlar.
Koşuları karşılaştırmak için:
- Birden çok çalıştırma içeren mevcut bir makine öğrenmesi denemesi seçin.
- Görünüm sekmesini seçin ve ardından Çalıştır listesi görünümüne gidin. Alternatif olarak, Çalıştırma listesini doğrudan Çalıştırma ayrıntıları görünümünden görüntüleme seçeneğini belirleyebilirsiniz.
- Sütunları özelleştir bölmesini genişleterek tablo içindeki sütunları özelleştirin. Burada, görmek istediğiniz özellikleri, ölçümleri, etiketleri ve hiper parametreleri seçebilirsiniz.
- Sonuçlarınızı belirli seçili ölçütlere göre daraltmak için Filtre bölmesini genişletin.
- Ölçüm karşılaştırma bölmesinde sonuçlarını karşılaştırmak için birden çok çalıştırmayı seçin. Bu bölmeden grafik başlığını, görselleştirme türünü, X eksenini, Y eksenini ve daha fazlasını değiştirerek grafikleri özelleştirebilirsiniz.
MLflow API'yi kullanarak çalıştırmaları karşılaştırın
Veri bilimciler, deneme içindeki çalıştırmaları sorgulamak ve arama yapmak için MLflow da kullanabilir. MLflow belgelerini ziyaret ederek çalıştırmaları aramak, filtrelemek ve karşılaştırmak için daha fazla MLflow API'sini keşfedebilirsiniz.
Tüm koşuları al
MLflow arama API'sini mlflow.search_runs() kullanarak, aşağıdaki koddaki <EXPERIMENT_NAME>'yi denemenizin adıyla veya <EXPERIMENT_ID>'yi deneme kimliğinizle değiştirerek bir denemedeki tüm çalıştırmaları alabilirsiniz.
import mlflow
# Get runs by experiment name:
mlflow.search_runs(experiment_names=["<EXPERIMENT_NAME>"])
# Get runs by experiment ID:
mlflow.search_runs(experiment_ids=["<EXPERIMENT_ID>"])
İpucu
Birden çok denemede arama yapmak için, experiment_ids parametresine deneme kimliklerinin bir listesini sağlayabilirsiniz. Benzer şekilde, parametresine deneme adlarının listesinin experiment_names sağlanması MLflow'un birden çok denemede aramasına olanak sağlar. Farklı deneylerdeki çalıştırmaları karşılaştırmak istiyorsanız bu yararlı olabilir.
Çalıştırmaları sıralama ve sınırlama
max_results 'den search_runs parametresini, döndürülen çalıştırma sayısını sınırlamak için kullanın.
order_by parametresi, sıralama ölçütü olarak sütunları listelemenizi sağlar ve isteğe bağlı DESC veya ASC değer içerebilir. Örneğin, aşağıdaki örnek bir denemenin son çalıştırmasını döndürür.
mlflow.search_runs(experiment_ids=[ "1234-5678-90AB-CDEFG" ], max_results=1, order_by=["start_time DESC"])
Fabric defteri içindeki çalıştırmaları karşılaştırın
Her not defteri hücresinde oluşturulan MLflow çalıştırmalarını izlemek için Fabric not defterleri içindeki MLflow yazar pencere öğesini kullanabilirsiniz. Pencere öğesi çalıştırmalarınızı, ilişkili ölçümlerinizi, parametrelerinizi ve özelliklerinizi doğrudan tek tek hücre düzeyine kadar izlemenizi sağlar.
Görsel karşılaştırma elde etmek için Karşılaştırmayı çalıştır görünümüne de geçebilirsiniz. Bu görünüm verileri grafiksel olarak sunarak farklı çalıştırmalardaki desenlerin veya sapmaların hızlı bir şekilde tanımlanmasına yardımcı olur.
Çalıştırmayı makine öğrenmesi modeli olarak kaydetme
Bir çalıştırma istenen sonucu verdikten sonra, ML modeli olarak kaydet'i seçerek gelişmiş model izleme ve model dağıtımı için çalıştırmayı model olarak kaydedebilirsiniz.
ML Denemelerini İzleme (önizleme)
ML deneyleri doğrudan İzleyici ile tümleştirilir. Bu işlevsellik, Spark uygulamalarınız ve oluşturdukları ML denemeleri hakkında daha fazla içgörü sağlamak üzere tasarlanmıştır ve bu işlemleri yönetmeyi ve hatalarını ayıklamayı kolaylaştırır.
Monitörden çalıştırmaları izlemek
Kullanıcılar deneme çalıştırmalarını doğrudan monitörden izleyebilir ve tüm etkinliklerinin birleşik bir görünümünü sağlar. Bu tümleştirme filtreleme seçeneklerini içerir ve kullanıcıların son 30 gün içinde veya belirtilen diğer dönemlerde oluşturulan denemelere veya çalıştırmalara odaklanmasını sağlar.
Spark uygulamanızdan ilgili ML Denemesi çalıştırmalarını izleme
ML Denemesi doğrudan İzleyici ile tümleştirilir; burada belirli bir Spark uygulamasını seçebilir ve Öğe Anlık Görüntülerine erişebilirsiniz. Burada, bu uygulama tarafından oluşturulan tüm denemelerin ve çalıştırmaların listesini bulacaksınız.