0 / 0
Go back to the English version of the documentation
Watson OpenScale drift metrikleri
Last updated: 12 Eki 2023
Watson OpenScale drift metrikleri

Watson OpenScale' de drift değerlendirmelerini yapılandırdığınızda, modelinizin zaman içinde sonuçları ne kadar iyi tahmin ettiğini belirlemenize yardımcı olacak metrikler oluşturabilirsiniz.

Sürüklenme değerlendirmelerinizin sonuçlarını Watson OpenScaleiçindeki Insights gösterge panosunda görüntüleyebilirsiniz. Sonuçları görüntülemek için, bir model yerleştirme döşemesi seçebilir ve son değerlendirmenizdeki sürüklenme metriklerinin bir özetini görüntülemek için Kayma değerlendirme bölümünde gezinme oku okunu tıklatabilirsiniz. Daha fazla bilgi için drift sonuçlarını gözden geçirmebaşlıklı konuya bakın.

Watson OpenScale , modelinizin davranışını analiz ederek ve modelinizin veri noktaları için doğru tahminler oluşturup oluşturmadığını tahmin etmek için kendi modelini oluşturarak sürüklenme ölçülerini hesaplar. Bu sürüklenme algılama modeli, modelinizin yanlış tahminler yaptığı kayıt sayısını tanımlamak için bilgi yükü verilerini işler ve modelinizin öngörülen doğruluğunu oluşturur.

Drift yalnızca yapılandırılmış veriler için desteklenir ve Python işlevlerini desteklemez.

Desteklenen sürüklenme metrikleri

Aşağıdaki sürüklenme metrikleri Watson OpenScaletarafından desteklenir:

  • Watson OpenScale drift değerlendirmeleri, eğitim verileriyle karşılaştırıldığında çalıştırma zamanında modelinizin doğruluğunu tahmin ediyor. Eğitim verilerinde modelin doğru değerlendirmediğine benzer işlemlerde bir artış olursa model doğruluğu düşer.

    Nasıl çalışır

    Drift monitörü üretim öncesi ve üretim ortamlarında farklı çalışır.

    Üretim öncesi ortamlarda, etiketli test verilerini karşıya yüklediğinizde, veriler geribildirim ve bilgi yükü tablolarına eklenir. Etiketli veriler, bilgi yükü çizelgesine ek açıklama olarak eklenir. Doğruluk, bilgi yükü tablosundaki etiketli veri sütunu ve öngörü sütunu ile hesaplanır.

    Üretim ortamlarında Watson OpenScale , modeli eğitmek ve test etmek için kullanılan verilere bakarak bir sürüklenme algılama modeli oluşturur. Örneğin, model test verilerinde %90 doğruluk oranına sahipse, test verilerinin %10 'unda yanlış tahminler sağladığı anlamına gelir. Watson OpenScale , bir veri noktasını kabul eden ve veri noktasının modelin yanlış (%10) ya da doğru (%90) tahmin ettiği verilere benzer olup olmadığını tahmin eden bir ikili sınıflandırma modeli oluşturur.

    Watson OpenScale sürüklenme algılama modelini oluşturduktan sonra, çalıştırma zamanında, istemci modelinin aldığı tüm verileri kullanarak bu modeli puanlar. Örneğin, istemci modeli son 3 saat içinde 1000 kayıt aldıysa, Watson OpenScale aynı 1000 veri noktasında sürüklenme algılama modelini çalıştırır. Kaç kaydın, modelin eğitim sırasında hata yaptığı kayıtların %10 'una benzer olduğunu hesaplar. Bu kayıtlardan 200 'ü %10 'a benzerse, model doğruluğunun %80 olacağı anlamına gelir. Eğitim zamanında model doğruluğu %90 olduğu için, modelde %10 'luk bir doğruluk kayması olduğu anlamına gelir.

    Watson OpenScaletarafından saptandıktan sonra sürüklenmeyi azaltmak için, modelin sorunu düzelten yeni bir sürümünü oluşturmanız gerekir. Başlamak için iyi bir yer, sürüklenme nedenleri olarak vurgulanan veri noktalarıdır. Sürüklenen işlemleri el ile etiketleyip modeli yeniden eğitmek için bunları kullandıktan sonra yeni verileri tahmine dayalı modele tanıştırın.

    Matematiği yap.

    Doğruluk düşüşü metriği yalnızca yapısal ikili ve çok sınıflı sınıflandırma modelleri için hesaplanır. Watson OpenScale , model tahmininin doğru olup olmadığını tahmin etmek için her işlemi analiz eder. Model öngörüsü yanlışsa, işlem sürüklenmiş olarak işaretlenir. Daha sonra tahmini doğruluk, analiz edilen toplam işlem sayısına kaydırılmayan işlemlerin kesri olarak hesaplanır. Temel doğruluk, test verilerindeki modelin doğruluğudur. Watson OpenScale , sürüklenme doğruluğunun kapsamını Temel doğruluk ile Tahmini doğruluk arasındaki fark olarak hesaplar. Ayrıca, Watson OpenScale sürüklenen tüm işlemleri analiz eder ve daha sonra, işlemleri, her bir özelliğin sapmaya katkısının doğruluğuna olan benzerliğine göre gruplar. Watson OpenScale , her bir kümede, doğru sapmaya katkıda bulunan önemli özellikleri de tahmin eder ve özellik etkisini büyük, bazı ve küçük olarak sınıflandırır.

  • Verileriniz zaman içinde değiştikçe, modelinizin doğru tahminler yapma yeteneği kötüye gidebilir. Watson OpenScale veri tutarlılığı ölçümündeki düşüş, çalıştırma zamanında eğitim verilerindeki işlemlerden önemli ölçüde farklı olan işlemlerin yüzdesini hesaplar.

    Nasıl çalışır

    Watson OpenScale , çalıştırma zamanı işlemlerini eğitim verilerindeki işlemlerin kalıplarıyla karşılaştırarak veri tutarsızlığı için her işlemi analiz eder. Bir işlem eğitim verileri kalıplarından birini ya da daha fazlasını ihlal ederse, işlem tutarsız olarak tanımlanır. Veri tutarlılığında düşüşü hesaplamak için Watson OpenScale , toplam işlem sayısını tutarsız olarak tanımlanan işlem sayısına böler. Örneğin, 10 hareket 100 işlem kümesinden tutarsız olarak tanımlanırsa, veri tutarlılığının düşmesi %10 olur.

    Matematiği yap.

    Veri tutarsızlığını tanımlamak için Watson OpenScale , giriş verilerinizin uyması gereken kuralları belirtmek üzere bir constraints.json dosyası oluşturarak sürükleme algılamasını yapılandırdığınızda bir şema oluşturur. Watson OpenScale , belirtilen kısıtlamalara uymayan aykırı değerleri belirleyerek verilerinizin sürüklenmek üzere değerlendirilmesini sağlamak için şemayı kullanır. Şema, aşağıdaki örnekte gösterildiği gibi eğitim verilerini açıklayan columns ve constraints dizileriyle bir JSON nesnesi olarak belirtilir:

    {
          "columns": [
            {
                "name": "CheckingStatus",
                "dtype": "categorical",
                "count": 5000,
                "sparse": false,
                "skip_learning": false
            },
          "constraints": [
            {
                "name": "categorical_distribution_constraint",
                "id": "f0476d40-d7df-4095-9be5-82564511432c",
                "kind": "single_column",
                "columns": [
                    "CheckingStatus"
                ],
                "content": {
                    "frequency_distribution": {
                        "0_to_200": 1304,
                        "greater_200": 305,
                        "less_0": 1398,
                        "no_checking": 1993
                    }
                }
            }
    

    Sütunlar

    Watson OpenScale , bir sütunu açıklamak için name, dtype, count,sparseve skip_learning anahtarlarına ilişkin değerleri belirtir.

    name ve dtype tuşları, bir sütuna ilişkin etiketi ve veri tipini açıklar. dtype anahtarıyla belirtilen aşağıdaki değerler veri tipini açıklar:

    • categorical
    • numeric_discrete
    • numeric_continuous

    Belirtilen veri tipi, min, maxve meangibi anahtarlarla daha fazla istatistiksel özelliğin tanımlanıp tanımlanmadığını belirler. Örneğin, numeric_discrete ya da numeric_continuous veri tipi belirtildiğinde, özellikler aşağıdaki örnekte gösterildiği gibi açıklanır:

    {
                "name": "LoanDuration",
                "dtype": "numeric_discrete",
                "count": 5000,
                "sparse": false,
                "skip_learning": false,
                "min": 4,
                "max": 53,
                "mean": 21.28820697954272,
                "std": 10.999096037050032,
                "percentiles": [
                    13.0,
                    21.0,
                    29.0
                ],
                "count_actual": 4986
            }
    

    count anahtarı, bir kolona ilişkin satır sayısını belirtir. Watson OpenScale , bir sütuna ilişkin sparse ve skip_learning anahtarlarını açıklamak için Boole değerlerini belirtir. sparse anahtarı, bir sütunun seyrek olup olmadığını belirtir ve skip_learning anahtarı, bir sütunun şemada açıklanan kurallardan herhangi birini öğrenmeyi atlayıp atlamayacağını belirtir. 25th ve 75th yüzdelikleri aynı değere sahipse, bir sütun seyrek olur.

    Kısıtlamalar

    name anahtarı, koşul tipini belirtir. Koşul tipini tanımlamak için aşağıdaki değerler belirtilir:

    • categorical_distribution_constraint
    • numeric_range_constraint
    • numeric_distribution_constraint
    • catnum_range_constraint
    • catnum_distribution_constraint
    • catcat_distribution_constraint

    id anahtarı, genel benzersiz tanıtıcısı (UUID) olan kısıtlamaları tanımlar. kind anahtarı, koşulun bir single_column ya da two-column koşulu olup olmadığını belirtir.

    columns anahtarı, bir kolon adları dizisini belirtir. Watson OpenScale , kind anahtarıyla bir single_column kısıtlaması belirttiğinde, dizi açıklamak istediğiniz sütunla ilintili bir değer içerir. Watson OpenScale , kind anahtarıyla bir two-column kısıtlaması belirttiğinde dizi, ilgili verileri içeren sütunlarla ilintili değerler içerir.

    content anahtarı, verilerinizin istatistiksel özelliklerini tanımlayan öznitelikleri belirtir. name anahtarıyla belirtilen koşul tipi, aşağıdaki çizelgede gösterildiği gibi content anahtarında hangi özniteliğin belirtileceğini belirler:

    Öznitelik Kısıtlamalar
    sıklık_dağıtımı categorical_distribution_constraint
    Aralıklar numeric_range_constraint, catnum_range_constraint
    dağıtım numeric_distribution_constraint, catnum_distribution_constraint
    rare_birleşimleri catcat_distribution_constraint
    kaynak_sütun catcat_distribution_constraint, catnum_range_constraint, catnum_distribution_constraint
    hedef_sütun catcat_distribution_constraint, catnum_range_constraint, catnum_distribution_constraint

    Aşağıdaki kısımlar, her kısıt tipinin nasıl belirtildiğine ilişkin örnekler sağlar:

    Kategorik dağıtım kısıtlaması

            {
                "name": "categorical_distribution_constraint",
                "id": "f0476d40-d7df-4095-9be5-82564511432c",
                "kind": "single_column",
                "columns": [
                    "CheckingStatus"
                ],
                "content": {
                    "frequency_distribution": {
                        "0_to_200": 1304,
                        "greater_200": 305,
                        "less_0": 1398,
                        "no_checking": 1993
                    }
                }
            }
    
    

    Eğitim verilerinde CheckingStatus sütunu, frequency_distribution özniteliğiyle belirtilen dört değer içerir. frequency_distribution özniteliği, 0_to_200gibi kategorilere ilişkin değerleri içeren sıklık sayılarını belirtir. Watson OpenScale , frequency_distribution öznitelik değerlerinden farklı olan değerleri belirten bilgi yükü verilerinde kayıtları bulursa, kayıtlar sapmalı olarak tanımlanır.

    Sayısal aralık kısıtlaması

       {
                "name": "numeric_range_constraint",
                "id": "79f3a1f5-30a1-4c7f-91a0-1613013ee802",
                "kind": "single_column",
                "columns": [
                    "LoanAmount"
                ],
                "content": {
                    "ranges": [
                        {
                            "min": 250,
                            "max": 11676,
                            "count": 5000
                        }
                    ]
                }
            }
    

    LoanAmount sütunu, eğitim verileri için bir aralık ayarlamak üzere ranges özniteliğiyle belirtilen minimum ve maksimum değerleri içerir. ranges özniteliği, sütunun yüksek yoğunluklu bölgelerini belirtir. Eğitim verilerinde nadiren oluşan aralıklar dahil edilmez. Watson OpenScale , bilgi yükü verilerinde aralığa ve önceden tanımlanmış bir arabelleğe uymayan kayıtlar bulursa, kayıtlar sapma olarak tanımlanır.

    Sayısal dağıtım kısıtı

    {
                "name": "numeric_distribution_constraint",
                "id": "3a97494b-0cd7-483e-a1c6-adb7755c1cb0",
                "kind": "single_column",
                "columns": [
                    "LoanAmount"
                ],
                "content": {
                    "distribution": {
                            "name": "norm",
                            "parameters": {
                                "loc": 3799.62,
                                "scale": 1920.0640064678398
                            },
                            "p-value": 0.22617155797563282
                    }
                }
            }
    

    LoanAmount sütunu, eğitim verileri için normal bir dağıtım ayarlamak üzere distribution özniteliğiyle belirtilen değerleri içerir. Watson OpenScale , normal dağılıma uymayan bilgi yükü verilerindeki kayıtları bulursa, kayıtlar sürüklenme olarak tanımlanır. Watson OpenScale ' in sığmaya çalıştığı dağılımlar tek tip, üstel ya da normal dağılımlardır. Watson OpenScale bu dağıtımlara uyan kayıtları bulmazsa, bu kısıtlama öğrenilmez.

    Kategorik-kategorik dağıtım kısıtlaması

        {
                "name": "catcat_distribution_constraint",
                "id": "99468600-1924-44d9-852c-1727c9c414ee",
                "kind": "two_column",
                "columns": [
                    "CheckingStatus",
                    "CreditHistory"
                ],
                "content": {
                    "source_column": "CheckingStatus",
                    "target_column": "CreditHistory",
                    "rare_combinations": [
                        {
                            "source_value": "no_checking",
                            "target_values": [
                                "no_credits"
                            ]
                        }
                    ]
                }
            }
    

    CheckingStatus ve CreditHistory sütunları için rare_combinations öznitelikleri, eğitim verilerinde nadiren ortaya çıkan değerlerin bir birleşimini belirtir. Watson OpenScale , bileşimi içeren bilgi yükü verilerindeki kayıtları bulursa, kayıtlar sürüklenme olarak tanımlanır.

    Kategorik-sayısal aralık kısıtlaması

            {
                "name": "catnum_range_constraint",
                "id": "f252033c-1635-4974-8976-3f7904d0c37d",
                "kind": "two_column",
                "columns": [
                    "CheckingStatus",
                    "LoanAmount"
                ],
                "content": {
                    "source_column": "CheckingStatus",
                    "target_column": "LoanAmount",
                    "ranges": {
                        "no_checking": [
                            {
                                "min": 250,
                                "max": 11676,
                                "count": 1993
                            }
                        ],
                        "less_0": [
                            {
                                "min": 250,
                                "max": 7200,
                                "count": 1398
                            }
                        ],
                        "0_to_200": [
                            {
                                "min": 250,
                                "max": 9076,
                                "count": 1304
                            }
                        ],
                        "greater_200": [
                            {
                                "min": 250,
                                "max": 9772,
                                "count": 305
                            }
                        ]
                    }
                }
            }
    

    ranges özniteliği, eğitim verileri için bir aralık ayarlanan CheckingStatus ve LoanAmount sütunları için minimum ve maksimum değerleri belirtir. Watson OpenScale , bilgi yükü verilerinde aralığa ve önceden tanımlanmış bir arabelleğe sığmayan LoanAmount ve CheckingStatus sütun değerlerini içermeyen kayıtlar bulursa, kayıtlar drift olarak tanımlanır.

    Kategorik-sayısal dağıtım kısıtlaması

            {
                "name": "catnum_distribution_constraint",
                "id": "3a97494b-0cd7-483e-a1c6-adb7755c1cb0",
                "kind": "two_column",
                "columns": [
                    "CheckingStatus",
                    "LoanAmount"
                ],
                "content": {
                    "source_column": "CheckingStatus",
                    "target_column": "LoanAmount",
                    "distribution": {
                        "greater_200": {
                            "name": "norm",
                            "parameters": {
                                "loc": 3799.62,
                                "scale": 1920.0640064678398
                            },
                            "p-value": 0.22617155797563282
                        }
                    }
                }
            }
    

    LoanAmount ve CheckingStatus sütunları, eğitim verileri için normal bir dağıtım ayarlamak üzere distribution özniteliğiyle belirtilen değerleri içerir. Watson OpenScale , normal dağılıma uyan LoanAmount ve CheckingStatus sütun değerlerini içermeyen bilgi yükü verilerinde kayıtları bulursa, kayıtlar sürüklenme olarak tanımlanır.

    Not:

    Watson OpenScaletarafından saptandıktan sonra sürüklenmeyi azaltmak için, modelin sorunu düzelten yeni bir sürümünü oluşturmanız gerekir. Başlamak için iyi bir yer, sürüklenme nedenleri olarak vurgulanan veri noktalarıdır. Sürüklenen işlemleri el ile etiketleyip modeli yeniden eğitmek için bunları kullandıktan sonra yeni verileri tahmine dayalı modele tanıştırın.

Daha fazla bilgi

Model öngörülerini inceleme drift sonuçlarını inceleme

Üst konu: drift algılamasını yapılandırma

Generative AI search and answer
These answers are generated by a large language model in watsonx.ai based on content from the product documentation. Learn more