Microsoft Fabric'te makine öğrenmesi modeli

Makine öğrenmesi modeli, belirli desen türlerini tanımak için eğitilmiş bir dosyadır. Modeli bir veri kümesi üzerinde eğitip bu veri kümesinden mantık yürütmeyi ve bu veri kümesinden öğrenmeyi sağlayan bir algoritma sağlarsınız. Modeli eğitdikten sonra, daha önce hiç görmediği veriler üzerinde mantık oluşturmak ve bu veriler hakkında tahminlerde bulunmak için kullanabilirsiniz.

MLflow'da bir makine öğrenmesi modeli birden çok model sürümü içerebilir. Burada, her sürüm bir model yinelemesini temsil edebilir. Bu makalede, model sürümlerini izlemek ve karşılaştırmak için ML modelleriyle nasıl etkileşim kuracağınızı öğreneceksiniz.

Makine öğrenmesi modeli oluşturma

MLflow'da makine öğrenmesi modelleri standart bir paketleme biçimi içerir. Bu biçim, Apache Spark'ta toplu çıkarım da dahil olmak üzere çeşitli aşağı akış araçlarında bu modellerin kullanılmasına olanak tanır. biçimi, bir modeli farklı aşağı akış araçlarının anlayabileceği farklı "çeşitlerde" kaydetmeye yönelik bir kural tanımlar.

Doku kullanıcı arabiriminden doğrudan bir makine öğrenmesi modeli oluşturabilirsiniz. MLflow API'si de modeli doğrudan oluşturabilir.

Kullanıcı arabiriminden makine öğrenmesi modeli oluşturmak için şunları yapabilirsiniz:

  1. Yeni bir veri bilimi çalışma alanı oluşturun veya mevcut bir veri bilimi çalışma alanını seçin.

  2. + Yeni açılan listesinden Model'i seçerek veri bilimi çalışma alanınızda boş bir model oluşturun.

    Screenshot showing the New drop-down menu.

  3. Model oluşturulduktan sonra çalıştırma ölçümlerini ve parametrelerini izlemek için model sürümleri eklemeye başlayabilirsiniz. Deneme çalıştırmalarını mevcut bir modele kaydedin veya kaydedin.

Ayrıca doğrudan API ile yazma deneyiminizden bir makine öğrenmesi denemesi mlflow.register_model() oluşturabilirsiniz. Belirtilen ada sahip kayıtlı bir makine öğrenmesi modeli yoksa, API bunu otomatik olarak oluşturur.

import mlflow

model_uri = "runs:/{}/model-uri-name".format(run.info.run_id)
mv = mlflow.register_model(model_uri, "model-name")

print("Name: {}".format(mv.name))
print("Version: {}".format(mv.version))

Makine öğrenmesi modeli içindeki sürümleri yönetme

Makine öğrenmesi modeli, basitleştirilmiş izleme ve karşılaştırma için bir model sürümleri koleksiyonu içerir. Bir modelde, veri bilimcisi temel alınan parametreleri ve ölçümleri keşfetmek için çeşitli model sürümleri arasında gezinebilir. Veri bilimciler, daha yeni modellerin daha iyi sonuçlar verip vermeyeceğini belirlemek için model sürümleri arasında karşılaştırmalar da yapabilir.

Makine öğrenmesi modellerini izleme

Makine öğrenmesi modeli sürümü, izleme için kayıtlı tek bir modeli temsil eder.

Screenshot showing the details screen of a model.

Her model sürümü aşağıdaki bilgileri içerir:

  • Oluşturulma Zamanı: Model oluşturma tarihi ve saati.
  • Çalıştırma Adı: Bu özel model sürümünü oluşturmak için kullanılan deneme çalıştırmalarının tanımlayıcısı.
  • Hiper parametreler: Hiper parametreler anahtar-değer çiftleri olarak kaydedilir. 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.
  • Model Şeması/İmzası: Model girişlerinin ve çıkışlarının açıklaması.
  • Günlüğe kaydedilen dosyalar: Herhangi bir biçimde günlüğe kaydedilen dosyalar. Örneğin, görüntüleri, ortamı, modelleri ve veri dosyalarını kaydedebilirsiniz.

Makine öğrenmesi modellerini karşılaştırma ve filtreleme

Makine öğrenmesi modeli sürümlerinin kalitesini karşılaştırmak ve değerlendirmek için, seçili sürümler arasındaki parametreleri, ölçümleri ve meta verileri karşılaştırabilirsiniz.

Makine öğrenmesi modellerini görsel olarak karşılaştırma

Mevcut bir model içindeki çalıştırmaları görsel olarak karşılaştırabilirsiniz. Görsel karşılaştırma, birden çok sürüm arasında kolay gezintiye ve farklı sürümlerde sıralamaya olanak tanır.

Screenshot showing a list of runs for comparison.

Çalıştırmaları karşılaştırmak için şunları yapabilirsiniz:

  1. Birden çok sürüm içeren mevcut bir makine öğrenmesi modelini seçin.
  2. Görünüm sekmesini seçin ve model listesi görünümüne gidin. Model listesini doğrudan ayrıntılar görünümünden görüntüleme seçeneğini de belirleyebilirsiniz.
  3. Tablo içindeki sütunları özelleştirebilirsiniz. Sütunları özelleştir bölmesini genişletin. Buradan, görmek istediğiniz özellikleri, ölçümleri ve hiper parametreleri seçebilirsiniz.
  4. Son olarak, ölçüm karşılaştırma bölmesinde sonuçları karşılaştırmak için birden çok sürüm seçebilirsiniz. Bu bölmeden grafik başlığında, görselleştirme türünde, X ekseninde, Y ekseninde ve daha fazla değişiklikle grafikleri özelleştirebilirsiniz.

MLflow API'sini kullanarak makine öğrenmesi modellerini karşılaştırma

Veri bilimciler çalışma alanına kaydedilmiş birden çok model arasında arama yapmak için MLflow da kullanabilir. Model etkileşimi için diğer MLflow API'lerini keşfetmek için MLflow belgelerini ziyaret edin.

from pprint import pprint

client = MlflowClient()
for rm in client.list_registered_models():
    pprint(dict(rm), indent=4)

Makine öğrenmesi modelleri uygulama

Bir modeli bir veri kümesinde eğitdikten sonra, tahmin oluşturmak için hiç görmediği verilere bu modeli uygulayabilirsiniz. Bu modele puanlama veya çıkarım tekniği diyoruz. Microsoft Fabric model puanlaması hakkında daha fazla bilgi için sonraki bölüme bakın.