Aracılığıyla paylaş


Azure Machine Learning modeli izleme

Model izleme, makine öğrenmesi uçtan uca yaşam döngüsünün son adımıdır. Bu adım üretimdeki model performansını izler ve hem veri bilimi hem de operasyonel perspektiflerden performansı analiz eder. Bu makalede Azure Machine Learning'de model izleme, izleyebileceğiniz sinyaller ve ölçümler ve model izleme için önerilen yöntemler hakkında bilgi ediniyorsunuz.

Geleneksel yazılım sistemlerinden farklı olarak, makine öğrenmesi sistemi davranışı yalnızca kodda belirtilen kurallara bağlı değildir, aynı zamanda verilerden de öğrenilir. Veri dağıtımı değişiklikleri, eğitim hizmeti dengesizliği, veri kalitesi sorunları, ortamlardaki vardiyalar ve tüketici davranışı değişiklikleri bir modelin eskimiş olmasına neden olabilir.

Model eskidiğinde performansı, iş değeri ekleyemediği veya yüksek düzeyde düzenlemeye tabi ortamlarda ciddi uyumluluk sorunlarına neden olacak şekilde düşebilir. Bu nedenle model performansını izlemek önemlidir.

Azure Machine Learning model izleme nasıl çalışır?

İzlemeyi uygulamak için Azure Machine Learning, akışlı üretim çıkarım verileri ve başvuru verileri üzerinde istatistiksel hesaplamalar gerçekleştirerek izleme sinyalleri alır. Üretim çıkarım verileri, modelin üretimde toplanan giriş ve çıkış verilerini ifade eder. Başvuru verileri geçmiş eğitim, doğrulama veya temel gerçeklik verileri olabilir.

Önemli

Azure Machine Learning model izlemesi, veri depolarında bulunan verilere erişmek için yalnızca Paylaşılan Erişim İmzası (SAS) belirteci gibi kimlik bilgileri tabanlı kimlik doğrulamasını destekler. Veri depoları ve kimlik doğrulama modları hakkında daha fazla bilgi edinmek için bkz . Veri yönetimi.

Her izleme sinyalinin bir veya daha fazla ölçümü vardır. Azure Machine Learning veya Azure Event Grid aracılığıyla model veya veri anomalileriyle ilgili uyarıları tetikleme amacıyla bu ölçümler için eşikler ayarlayabilirsiniz. Uyarılar aldığınızda, sürekli model kalitesini iyileştirmeye yönelik izleme sinyallerini analiz etmek veya sorunlarını gidermek için Azure Machine Learning stüdyosu kullanabilirsiniz.

Azure Machine Learning, üretimdeki bir model için veri kayması gibi yerleşik bir izleme sinyalini işlemek için aşağıdaki işlemi kullanır:

  • İlk olarak Azure Machine Learning, özelliğin eğitim verilerindeki değerinin istatistiksel dağılımını hesaplar. Bu dağıtım, özelliğin temel dağılımıdır.

  • Ardından Azure Machine Learning, özelliğin üretimde kaydedilen en son değerlerinin istatistiksel dağılımını hesaplar.

  • Azure Machine Learning daha sonra istatistiksel bir test gerçekleştirir veya özelliğin üretimdeki en son değerlerinin dağılımını temel dağıtımla karşılaştırmak için mesafe puanı hesaplar. İki dağıtım arasındaki test istatistiği veya uzaklık puanı kullanıcı tarafından belirtilen eşiği aşarsa, Azure Machine Learning anomaliyi tanımlar ve kullanıcıya bildirir.

Model izlemeyi ayarlama ve kullanma

Azure Machine Learning'de model izlemeyi kullanmak için:

İlk olarak, üretim çıkarımı veri toplamayı etkinleştirin.

  • Azure Machine Learning çevrimiçi uç noktasına bir model dağıtırsanız, Azure Machine Learning modeli veri toplamayı kullanarak üretim çıkarımı veri toplamayı etkinleştirebilirsiniz.
  • Bir modeli Azure Machine Learning'in dışında veya bir Azure Machine Learning toplu iş uç noktasına dağıtırsanız, Azure Machine Learning modeli izleme için kullanabileceğiniz üretim çıkarım verilerini toplamak sizin sorumluluğundadır.

Ardından model izlemeyi ayarlayın. Model izlemeyi kolayca ayarlamak için Azure Machine Learning SDK/CLI 2.0 veya studio kullanıcı arabirimini kullanabilirsiniz. Kurulum sırasında tercih ettiğiniz izleme sinyallerini belirtebilir ve her sinyal için ölçümleri ve eşikleri özelleştirebilirsiniz.

Son olarak model izleme sonuçlarını görüntüleyin ve analiz edin. Model izlemeyi ayarladıktan sonra Azure Machine Learning, belirtilen zamanlamanızda bir izleme işi çalıştırır. Her çalıştırma, seçilen tüm izleme sinyalleri için ölçümleri hesaplar ve değerlendirir ve belirtilen eşik aşıldığında uyarı bildirimlerini tetikler. Azure Machine Learning çalışma alanınızdaki izleme sonuçlarını görüntülemek ve analiz etmek için uyarı bildirimindeki bağlantıyı izleyebilirsiniz.

Model izleme özellikleri

Azure Machine Learning sürekli model izleme için aşağıdaki özellikleri sağlar:

  • Veri kayılması, tahmin kayılması, veri kalitesi, özellik ilişkilendirme kayılması ve model performansı gibi tablosal veriler için yerleşik izleme sinyalleri .
  • Çevrimiçi uç noktalar için kullanıma hazır model izleme. Modelinizi çevrimiçi bir uç noktada üretime dağıtırsanız, Azure Machine Learning üretim çıkarım verilerini otomatik olarak toplar ve sürekli izleme için kullanır.
  • Tek bir izleme kurulumunda birden çok izleme sinyali . Her izleme sinyali için tercih ettiğiniz ölçümleri ve uyarı eşiğini seçebilirsiniz.
  • Karşılaştırma için başvuru verileri seçimi. Sinyalleri izlemek için, eğitim verilerini veya yakın geçmişteki üretim verilerini kullanarak başvuru verilerini ayarlayabilirsiniz.
  • Veri kayma veya veri kalitesi izleme için en iyi N özellikler. Eğitim verilerini başvuru verileri olarak kullanıyorsanız, özellik önemine göre katmanlanmış veri kayma veya veri kalitesi sinyalleri tanımlayabilirsiniz.
  • Özel izleme sinyalleri tanımlama özelliği. Yerleşik izleme sinyalleri iş senaryonuz için uygun değilse, özel bir izleme sinyali bileşeniyle kendi izleme sinyalinizi tanımlayabilirsiniz.
  • Herhangi bir kaynaktan üretim çıkarımı verilerini kullanma esnekliği. Modelleri Azure Machine Learning dışında dağıtıyorsanız veya modelleri toplu iş uç noktalarına dağıtıyorsanız, Yine de Azure Machine Learning model izlemesinde kullanmak üzere üretim çıkarım verilerini kendiniz toplayabilirsiniz.

Model izleme için en iyi yöntemler

Her makine öğrenmesi modeli ve kullanım örnekleri benzersizdir. Bu nedenle, model izleme her durum için benzersizdir. Aşağıdaki listede model izleme için önerilen en iyi yöntemler açıklanmaktadır.

  • Bir modeli üretime dağıttığınızda model izlemeyi hemen başlatın.
  • İzlemeyi ayarlamak için modeli bilen veri bilimciler ile çalışın. Model ve kullanım örnekleri hakkında içgörü sahibi olan veri bilimciler, uyarı yorgunluğunu önlemek için izleme sinyallerini ve ölçümlerini önerebilir ve her ölçüm için doğru uyarı eşiklerini ayarlayabilir.
  • Kurulumunuza birden çok izleme sinyali ekleyin. Birden çok izleme sinyaliyle hem geniş hem de ayrıntılı izleme görünümleri elde edersiniz. Örneğin, model performansı sorunları hakkında erken uyarılar almak için veri kayması ve özellik atfı kayma sinyallerini birleştirebilirsiniz.
  • Karşılaştırma temeli olarak uygun başvuru verilerini kullanın. Karşılaştırma temeli olarak kullanılan başvuru verileri için, son üretim verilerini veya eğitim veya doğrulama verileri gibi geçmiş verileri kullanabilirsiniz. Daha anlamlı bir karşılaştırma için veri kayma ve veri kalitesi için karşılaştırma temeli olarak eğitim verilerini kullanın. Tahmin kaydığında karşılaştırma temeli olarak doğrulama verilerini kullanın.
  • Zaman içinde üretim verilerinin büyümesine göre izleme sıklığını belirtin. Örneğin, üretim modelinizde yoğun günlük trafik varsa ve günlük veri birikimi yeterliyse izleme sıklığını günlük olarak ayarlayın. Aksi takdirde, üretim verilerinizin zaman içindeki büyümesine bağlı olarak haftalık veya aylık izleme sıklığını göz önünde bulundurun.
  • En iyi N özelliklerini veya bir özellik alt kümesini izleyin. Karşılaştırma temeli olarak eğitim verileri kullanıyorsanız, en önemli N önemli özellik için veri kayma izlemesini veya veri kalitesi izlemeyi kolayca yapılandırabilirsiniz. Çok sayıda özelliğe sahip modeller için, hesaplama maliyetini ve izleme gürültüsünü azaltmak için bu özelliklerin bir alt kümesini izlemeyi göz önünde bulundurun.
  • Temel gerçeklik verilerine erişiminiz olduğunda model performans sinyalini kullanın. Makine öğrenmesi uygulamanızı temel alarak gerçekler olarak da adlandırılan temel gerçeklik verilerine erişiminiz varsa, temel gerçeklik verilerini model çıkışıyla karşılaştırmak için model performans sinyalini kullanın. Bu karşılaştırma, üretimdeki model performansının hedef bir görünümünü sağlar.

Geri bakma penceresi boyutu ve uzaklığı

Geri arama penceresi boyutu , üretim veya başvuru verileri pencereniz için ISO 8601 biçimindeki süredir. Geri bakma penceresi uzaklığı , veri pencerenizin sonunu izleme çalıştırmanızın tarihinden uzaklık süresidir.

Örneğin, üretimdeki modelinizin 31 Ocak saat 15:15 UTC'de çalışacak şekilde ayarlanmış bir izleyicisi vardır. Üretim verileri geri arama penceresi boyutu P7D veya yedi gün ve veri geri arama penceresi uzaklığı veya sıfır gün, P0D izleyicinin 24 Ocak saat 15:15 UTC'den 31 Ocak utc'ye kadar üretim verilerini kullandığı ve izleyicinizin çalıştığı saat olan 15:15 UTC'ye kadar olduğu anlamına gelir.

Başvuru verileri için, geri arama penceresi uzaklığını P7D veya yedi gün olarak ayarlarsanız, başvuru verileri penceresi üretim verileri penceresi başlamadan hemen önce sona erer ve böylece çakışma olmaz. Daha sonra başvuru verilerinizin geri arama penceresi boyutunu istediğiniz kadar büyük olacak şekilde ayarlayabilirsiniz.

Örneğin, başvuru verileri arama penceresi boyutunu P24D veya 24 gün olarak ayarlarsanız, başvuru veri penceresi 1 Ocak saat 15:15 UTC'den 24 Ocak saat 15:15 UTC'ye kadar olan verileri içerir. Aşağıdaki diyagramda bu örnek gösterilmektedir.

Başvuru ve üretim verileri için geri arama penceresi boyutunu ve uzaklığını gösteren diyagram.

Bazı durumlarda, üretim verileriniz için geri arama penceresi uzaklığını sıfır günden büyük bir sayıya ayarlamak yararlı olabilir. Örneğin, izleyiciniz Pazartesi günleri 15:15 UTC'de haftalık olarak çalışacak şekilde zamanlandıysa ancak izleme çalıştırmanızda hafta sonundan itibaren verileri kullanmak istemiyorsanız, veya beş günlük bir geri arama penceresi boyutu P5D ve ya da iki günlük bir geri bakış penceresi uzaklığı P2D kullanabilirsiniz. Veri pencereniz önceki Pazartesi günü 15:15 UTC'de başlar ve Cuma günü 15:15 UTC'de sona erer.

Uygulamada, başvuru verileri penceresinin ve üretim verileri penceresinin çakışmadığından emin olmanız gerekir. Aşağıdaki şekilde gösterildiği gibi, başvuru verileri geri arama penceresi uzaklığının P10D veya bu örnekteki 10 günün üretim verileri geri arama penceresi boyutunun toplamına ve bu örnekte yedi günlük toplam geri arama penceresi uzaklığının toplamına eşit veya daha büyük olduğundan emin olarak, örtüşmeyen pencerelerin sağlandığından emin olabilirsiniz.

Eşleme olmayan başvuru verilerini ve üretim verileri pencerelerini gösteren diyagram.

Azure Machine Learning model izlemesi ile, geri arama penceresi boyutunuz ve geri arama penceresi uzaklığınız için akıllı varsayılanları kullanabilir veya gereksinimlerinizi karşılayacak şekilde özelleştirebilirsiniz. Hem sıralı pencereler hem de sabit pencereler desteklenir.

Geri arama penceresi boyutunu özelleştirme

Hem üretim verileri hem de başvuru verileri için bir geri arama penceresi boyutu seçme esnekliğine sahipsiniz.

  • Varsayılan olarak, üretim verileri için geri arama penceresi boyutu izleme sıklığınızdır. İzleme işi çalışmadan önce izleme döneminde toplanan tüm veriler geri arama penceresine eklenir. özelliğini kullanarak production_data.data_window.lookback_window_size üretim verileri için sıralı veri penceresini ayarlayabilirsiniz.

  • Varsayılan olarak, başvuru verilerinin geri arama penceresi tam veri kümesidir. Başvuru geri arama penceresi boyutunu ayarlamak için özelliğini kullanabilirsiniz reference_data.data_window.lookback_window_size .

Başvuru verileri için sabit bir veri penceresi belirtmek için ve reference_data.data_window.window_end_dateözelliklerini reference_data.data_window.window_start_date kullanın.

Geri arama penceresi uzaklığını özelleştirme

Hem üretim verileri hem de başvuru verileri için veri pencereniz için bir geri bakış penceresi uzaklığı seçme esnekliğine sahipsiniz. İzleyicinizin kullandığı veriler üzerinde ayrıntılı denetim için uzaklığı kullanabilirsiniz. Uzaklık yalnızca sıralı veri pencerelerine uygulanır.

  • Varsayılan olarak, üretim verilerinin P0D uzaklığı veya sıfır gündür. Bu uzaklığı özelliğiyle production_data.data_window.lookback_window_offset değiştirebilirsiniz.

  • Varsayılan olarak, başvuru verilerinin uzaklığı değerinin production_data.data_window.lookback_window_sizeiki katıdır. Bu ayar, istatistiksel olarak anlamlı izleme sonuçları için yeterli başvuru verisi olmasını sağlar. Bu uzaklığı özelliğiyle reference_data.data_window.lookback_window_offset değiştirebilirsiniz.

sinyalleri ve ölçümleri izleme

Azure Machine Learning model izleme, aşağıdaki izleme sinyallerini ve ölçümlerini destekler.

Önemli

Bu makalede işaretlenen (önizleme) öğeler şu anda genel önizleme aşamasındadır. Önizleme sürümü bir hizmet düzeyi sözleşmesi olmadan sağlanır ve üretim iş yükleri için önerilmez. Bazı özellikler desteklenmiyor olabileceği gibi özellikleri sınırlandırılmış da olabilir. Daha fazla bilgi için bkz. Microsoft Azure Önizlemeleri Ek Kullanım Koşulları.

İzleme sinyali Açıklama Ölçümler Model görevleri veya desteklenen veri biçimi Üretim verileri Referans verileri
Veri kayma Dağıtımı modelin eğitim verileriyle veya son üretim verileriyle karşılaştırarak modelin giriş verilerinin dağılımındaki değişiklikleri izler. Jensen-Shannon Uzaklığı, Popülasyon Stabilite Endeksi, Normalleştirilmiş Wasserstein Uzaklığı, İki Örnekli Kolmogorov-Smirnov Testi, Pearson'un KiKare Testi Sınıflandırma (tablo verileri), Regresyon (tablosal veriler) Üretim verileri: Model girişleri Son geçmiş üretim verileri veya eğitim verileri
Tahmin kayarak Dağıtımı doğrulama verileriyle, etiketli test verileriyle veya son üretim verileriyle karşılaştırarak modelin tahmin edilen çıktılarının dağılımındaki değişiklikleri izler. Jensen-Shannon Uzaklığı, Nüfus Stabilite Endeksi, Normalleştirilmiş Wasserstein Uzaklığı, Chebyshev Uzaklığı, İki ÖrnekLi Kolmogorov-Smirnov Testi, Pearson'un Kikare Testi Sınıflandırma (tablo verileri), Regresyon (tablosal veriler) Üretim verileri: Model çıkışları Son geçmiş üretim verileri veya doğrulama verileri
Veri kalitesi Modelin girişlerini modelin eğitim verileriyle veya son üretim verileriyle karşılaştırarak veri bütünlüğünü izler. Veri kalitesi denetimleri null değerleri, tür uyuşmazlıklarını veya sınır dışı değerleri denetlemeyi içerir. Null değer oranı, Veri türü hata oranı, Sınır dışı oranı Sınıflandırma (tablo verileri), Regresyon (tablosal veriler) Üretim verileri: Model girişleri Son geçmiş üretim verileri veya eğitim verileri
Özellik atfı kayması (önizleme) Özelliklerin tahminlere katkısına bağlı olarak, özellik önemi olarak da bilinir. Özellik atfı kaymaları, üretim sırasında özellik önemini eğitim sırasındaki özellik önemiyle karşılaştırarak izler. Normalleştirilmiş indirimli kümülatif kazanç Sınıflandırma (tablo verileri), Regresyon (tablosal veriler) Üretim verileri: Model girişleri ve çıkışları Eğitim verileri (gerekli)
Model performansı: Sınıflandırma (önizleme) Bir modelin üretimdeki çıktısının hedef performansını, toplanan temel gerçeklik verileriyle karşılaştırarak izler. Doğruluk, Duyarlık ve Geri Çağırma Sınıflandırma (tablo verileri) Üretim verileri: Model çıkışları Temel gerçeklik verileri (gerekli)
Model performansı: Regresyon (önizleme) Bir modelin üretimdeki çıktısının hedef performansını, toplanan temel gerçeklik verileriyle karşılaştırarak izler. Ortalama Mutlak Hata (MAE), Ortalama Kare Hatası (MSE), Kök Ortalama Kare Hatası (RMSE) Regresyon (tablosal veriler) Üretim verileri: Model çıkışları Temel gerçeklik verileri (gerekli)
Üretken yapay zeka: Nesil güvenliği ve kalitesi (önizleme) GPT destekli ölçümleri kullanarak üretken yapay zeka uygulamalarını güvenlik ve kalite açısından değerlendirir. Topraklanma, İlgi, Akıcılık, Benzerlik, Tutarlılık Sorular ve Yanıtlar İstem, tamamlama, bağlam ve ek açıklama şablonu Yok

Veri kalitesi ölçümleri

Veri kalitesi izleme sinyali, aşağıdaki üç ölçümü hesaplayarak modelin giriş verilerinin bütünlüğünü izler:

  • Null değer oranı
  • Veri türü hata oranı
  • Sınır dışı oranı

Azure Machine Learning modeli izleme, null değer oranı, veri türü hata oranı ve sınır dışı oranı hesaplamaları için 0,00001'e kadar duyarlığı destekler.

Null değer oranı

Null değer oranı, her özellik için model girişindeki null değerlerin oranıdır. Örneğin, izleme üretim verileri penceresinde 100 satır varsa ve özelliğin değeri bu satırların temperature 10'unun değeri null ise, için temperature null değer oranı %10'dur.

Azure Machine Learning, tüm özellik veri türleri için null değer oranını hesaplamayı destekler.

Veri türü hata oranı

Her izleme çalıştırması sırasında Azure Machine Learning model izlemesi, başvuru verilerinden her özelliğin veri türünü çıkarsar. Veri türü hata oranı, geçerli üretim verileri penceresi ile başvuru verileri arasındaki veri türü farklarının oranıdır.

Örneğin, özelliğin temperature veri türü başvuru verilerinden geliyorsa IntegerType ancak üretim verileri penceresinde 100 değerden temperature 10'unun değeri dize değilse IntegerType , veri türü hata oranı temperature %10'dur.

Azure Machine Learning, PySpark'ta bulunan aşağıdaki veri türleri için veri türü hata oranını hesaplamayı destekler: , , , , , TimestampType, StringType, IntegerType, FloatTypeByteType, LongTypeve DateType. DoubleTypeBinaryTypeBooleanTypeShortType Bir özelliğin veri türü bu listede yoksa, Azure Machine Learning modeli izleme hala çalışır ancak bu özellik için veri türü hata oranını hesaplamaz.

Sınır dışı oranı

Her izleme çalıştırması sırasında Azure Machine Learning model izlemesi, başvuru verilerinden her özellik için kabul edilebilir aralığı veya kümeyi belirler. Sınır dışı oranı, her özellik için uygun aralığın dışında kalan veya başvuru verileri tarafından belirlenen değerlerin oranıdır.

  • Sayısal özellikler için uygun aralık, başvuru veri kümesindeki en düşük ve en yüksek değerler arasındaki sayısal aralıktır( gibi [0, 100]).
  • gibi colorkategorik özellikler için uygun aralık, başvuru veri kümesinde bulunan tüm değerlerin (gibi [red, yellow, green]) bir kümesidir.

Örneğin, başvuru veri kümesindeki tüm değerlerin aralığı [37, 77]içinde olduğu ancak üretim verileri penceresindeki 100 değerden temperature 10'unun aralığının [37, 77]dışında kaldığı sayısal temperature bir özelliğiniz varsa, için sınır dışı oranı temperature %10'dur.

Azure Machine Learning, PySpark'ta kullanılabilen aşağıdaki veri türleri için sınır dışı oranın hesaplanmasına destek sağlar: StringType, IntegerType, DoubleType, ByteType, LongType, ve FloatType. Bir özelliğin veri türü bu listede yoksa, Azure Machine Learning modeli izlemesi çalışmaya devam eder, ancak bu özellik için sınır dışı oranı hesaplamaz.

Azure Event Grid ile model izleme tümleştirmesi

Azure Event Grid ile olay odaklı uygulamalar, işlemler veya sürekli tümleştirme/sürekli teslim (CI/CD) iş akışları ayarlamak için Azure Machine Learning model izleme çalıştırmaları tarafından oluşturulan olayları kullanabilirsiniz. Model izleyiciniz kayma, veri kalitesi sorunları veya model performansı düşüşü algıladığında Event Grid ile bu olayları izleyebilir ve program aracılığıyla eylem gerçekleştirebilirsiniz.

Örneğin, sınıflandırma modelinizin üretimdeki doğruluğu belirli bir eşiğin altına düştüğünde, event grid'i kullanarak toplanan temel gerçeklik verilerini kullanan bir yeniden eğitim işi başlatabilirsiniz. Azure Machine Learning'i Event Grid ile tümleştirmeyi öğrenmek için bkz . Üretime dağıtılan modellerin performansını izleme.