Microsoft Fabric'te makine öğrenmesi denemeleri
Makine öğrenmesi denemesi, tüm ilgili makine öğrenmesi çalıştırmaları için birincil kuruluş ve denetim birimidir. Çalıştırma, model kodunun tek bir yürütülmesine karşılık gelir. MLflow'da izleme, denemeleri ve çalıştırmaları temel alır.
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. Power BI Premium'nuz yoksa bkz . Power BI Premium'ı satın alma.
- Atanmış premium kapasiteye sahip bir Power BI Çalışma Alanı.
Deneme oluşturma
Makine öğrenmesi denemesini doğrudan Power BI kullanıcı arabirimindeki (UI) Veri bilimi giriş sayfasından 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 veri bilimi çalışma alanı oluşturun veya mevcut bir çalışma alanını seçin.
"Yeni" bölümünden 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 çalıştırma ölçümlerini ve parametrelerini izlemek için çalıştırma eklemeye başlayabilirsiniz.
MLflow API'sini kullanarak deneme oluşturma
Veya API'lerini kullanarak doğrudan yazma deneyiminizden bir makine öğrenmesi denemesi mlflow.create_experiment()
mlflow.set_experiment()
de oluşturabilirsiniz. Aşağıdaki kodda öğesini denemenizin adıyla değiştirin <EXPERIMENT_NAME>
.
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>")
Deneme içindeki çalıştırmaları yönetme
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.
Çalıştırmaları izleme
Makine öğrenmesi çalıştırması, model kodunun tek bir yürütülmesine karşılık gelir.
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.
Son çalıştırmaları görüntüleme
Ayrıca bir denemenin son çalıştırmalarını doğrudan çalışma alanı listesi görünümünden de 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ırma ve filtreleme
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ı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.
Çalıştırmaları 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 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'sini kullanarak çalıştırmaları karşılaştırma
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 çalıştırmaları alma
MLflow arama API'sini mlflow.search_runs()
kullanarak denemenizin adını veya <EXPERIMENT_ID>
aşağıdaki koddaki deneme kimliğinizi değiştirerek <EXPERIMENT_NAME>
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
Parametresine deneme kimliklerinin listesini sağlayarak birden çok denemede experiment_ids
arama yapabilirsiniz. Benzer şekilde, parametresine deneme adlarının listesinin experiment_names
sağlanması MLflow'un birden çok denemede aramasına olanak sağlar. Farklı denemelerdeki çalıştırmaları karşılaştırmak istiyorsanız bu yararlı olabilir.
Çalıştırmaları sıralama ve sınırlama
max_results
döndürülen çalıştırma sayısını sınırlamak için parametresini search_runs
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"])
Doku not defteri içindeki çalıştırmaları karşılaştırma
Her not defteri hücresinde oluşturulan MLflow çalıştırmalarını izlemek için Doku not defterleri içindeki MLFlow yazma 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.