Verileri Normalleştirme

Önemli

Machine Learning Stüdyosu (klasik) desteği 31 Ağustos 2024'te sona erecektir. Bu tarihe kadar Azure Machine Learning'e geçmenizi öneririz.

1 Aralık 2021'den başlayarak artık yeni Machine Learning Stüdyosu (klasik) kaynakları oluşturamayacaksınız. 31 Ağustos 2024'e kadar mevcut Machine Learning Stüdyosu (klasik) kaynaklarını kullanmaya devam edebilirsiniz.

ML Stüdyosu (klasik) belgeleri kullanımdan kaldırılacak ve gelecekte güncelleştirilmeyecektir.

Veri kümesi değerlerini standart bir aralıkla sınırlamak için sayısal verileri yeniden ölçekler

Kategori: Veri Dönüştürme / Ölçeklendirme ve Azaltma

Not

Şunlar için geçerlidir: yalnızca Machine Learning Studio (klasik)

Benzer sürükle ve bırak modülleri de Azure Machine Learning tasarımcısında kullanılabilir.

Modüle genel bakış

Bu makalede, veri kümesini normalleştirme yoluyla dönüştürmek için Machine Learning Studio'da (klasik) Verileri Normalleştirme modülünün nasıl kullanılacağı açıklanmaktadır.

Normalleştirme genellikle makine öğrenmesi için veri hazırlamanın bir parçası olarak uygulanan bir tekniktir. Normalleştirmenin amacı, veri kümesindeki sayısal sütunların değerlerini, değer aralıklarındaki farkları bozmadan veya bilgi kaybetmeden ortak bir ölçek kullanacak şekilde değiştirmektir. Bazı algoritmaların verileri doğru modellemesi için de normalleştirme gerekir.

Örneğin, giriş veri kümenizin 0 ile 1 arasında değerler içeren bir sütun ve 10.000 ile 100.000 arasında değerler içeren başka bir sütun içerdiğini varsayalım. Sayıların ölçeğindeki büyük fark, modelleme sırasında değerleri özellik olarak birleştirmeyi denediğinizde sorunlara neden olabilir.

Normalleştirme , kaynak verilerdeki genel dağılımı ve oranları koruyan yeni değerler oluşturarak ve değerleri modelde kullanılan tüm sayısal sütunlara uygulanan bir ölçek içinde tutarak bu sorunları önler.

Bu modül, sayısal verileri dönüştürmek için çeşitli seçenekler sunar:

  • Tüm değerleri 0-1 ölçeğine dönüştürebilir veya değerleri mutlak değerler yerine yüzdebirlik dereceler olarak temsil ederek dönüştürebilirsiniz.
  • Normalleştirmeyi tek bir sütuna veya aynı veri kümesindeki birden çok sütuna uygulayabilirsiniz.
  • Denemeyi yinelemeniz veya aynı normalleştirme adımlarını diğer verilere uygulamanız gerekiyorsa, adımları normalleştirme dönüşümü olarak kaydedebilir ve aynı şemaya sahip diğer veri kümelerine uygulayabilirsiniz.

Uyarı

Bazı algoritmalar, modeli eğitmeden önce verilerin normalleştirilmesini gerektirir. Diğer algoritmalar kendi veri ölçeklendirme veya normalleştirme işlemlerini gerçekleştirir. Bu nedenle, tahmine dayalı model oluştururken kullanılacak bir makine öğrenmesi algoritması seçtiğinizde, eğitim verilerine normalleştirme uygulamadan önce algoritmanın veri gereksinimlerini gözden geçirmeyi unutmayın.

Verileri Normalleştirmeyi Yapılandırma

Bu modülü kullanarak aynı anda yalnızca bir normalleştirme yöntemi uygulayabilirsiniz. Bu nedenle, seçtiğiniz tüm sütunlara aynı normalleştirme yöntemi uygulanır. Farklı normalleştirme yöntemleri kullanmak için Verileri Normalleştirme'nin ikinci bir örneğini kullanın.

  1. Denemenize Verileri Normalleştirme modülünü ekleyin. Modülü Machine Learning Studio'da (klasik), Veri Dönüştürme'nin altında Ölçek ve Azaltma kategorisinde bulabilirsiniz.

  2. Tüm sayılardan en az bir sütun içeren bir veri kümesi Bağlan.

  3. Normalleştirileceği sayısal sütunları seçmek için Sütun Seçici'yi kullanın. Tek tek sütunları seçmezseniz, varsayılan olarak girişteki tüm sayısal tür sütunları dahil edilir ve aynı normalleştirme işlemi seçilen tüm sütunlara uygulanır.

    Normalleştirilmemesi gereken sayısal sütunlar eklerseniz bu garip sonuçlara yol açabilir! Sütunları her zaman dikkatle denetleyin.

    Hiçbir sayısal sütun algılanmazsa, sütunun veri türünün desteklenen bir sayısal tür olduğunu doğrulamak için sütun meta verilerini denetleyin.

    İpucu

    Belirli bir türdeki sütunların giriş olarak sağlandığından emin olmak için Verileri Normalleştirmeden önce Veri Kümesindeki Sütunları Seçme modülünü kullanmayı deneyin.

  4. İşaretlendiğinde sabit sütunlar için 0 kullanın: Herhangi bir sayısal sütun tek bir değişmeyen değer içerdiğinde bu seçeneği belirleyin. Bu, bu tür sütunların normalleştirme işlemlerinde kullanılmamasını sağlar.

  5. Dönüştürme yöntemi açılan listesinden, tüm seçili sütunlara uygulanacak tek bir matematik işlevi seçin.

    • Zscore: Tüm değerleri z puanına dönüştürür.

      Sütundaki değerler aşağıdaki formül kullanılarak dönüştürülür:

      normalization using z-scores

      Ortalama ve standart sapma her sütun için ayrı ayrı hesaplanır. Popülasyon standart sapması kullanılır.

    • MinMax: Min-max normalizer, her özelliği doğrusal olarak [0,1] aralığına göre yeniden ölçekler.

      [0,1] aralığına yeniden ölçeklendirme, her özelliğin değerleri en düşük değerin 0 olması için kaydırılarak ve ardından yeni en büyük değere (özgün en büyük ve en düşük değerler arasındaki fark) bölünerek yapılır.

      Sütundaki değerler aşağıdaki formül kullanılarak dönüştürülür:

      normalization using the min-max function

    • Lojistik: Sütundaki değerler aşağıdaki formül kullanılarak dönüştürülür:

      formula for normalization by logistic function

    • LogNormal: Bu seçenek tüm değerleri logaritmik normal ölçeğe dönüştürür.

      Sütundaki değerler aşağıdaki formül kullanılarak dönüştürülür:

      formula log-normal distribution

      Burada μ ve σ, her sütun için ayrı ayrı maksimum olasılık tahminleri olarak verilerden ampirik olarak hesaplanan dağıtımın parametreleridir.

    • TanH: Tüm değerler hiperbolik tanjanta dönüştürülür.

      Sütundaki değerler aşağıdaki formül kullanılarak dönüştürülür:

      normalization using the tanh function

  6. Denemeyi çalıştırın veya Verileri Normalleştirme modülüne çift tıklayıp Seçili Çalıştır'ı seçin.

Sonuçlar

Verileri Normalleştirme modülü iki çıkış oluşturur:

  • Dönüştürülen değerleri görüntülemek için modüle sağ tıklayın, Dönüştürülmüş veri kümesi'ni seçin ve Görselleştir'e tıklayın.

    Varsayılan olarak, değerler yerinde dönüştürülür. Dönüştürülen değerleri özgün değerlerle karşılaştırmak istiyorsanız, veri kümelerini yeniden birleştirir ve sütunları yan yana görüntülemek için Sütun Ekle modülünü kullanın.

  • Aynı normalleştirme yöntemini başka bir benzer veri kümesine uygulayabilmek için dönüştürmeyi kaydetmek için modüle sağ tıklayın, Dönüştürme işlevi'ni seçin ve Dönüşüm Olarak Kaydet'e tıklayın.

    Ardından sol gezinti bölmesinin Dönüşümler grubundan kaydedilen dönüştürmeleri yükleyebilir ve Dönüşümü Uygula'yı kullanarak aynı şemaya sahip bir veri kümesine uygulayabilirsiniz.

Örnekler

Makine öğrenmesinde normalleştirmenin nasıl kullanıldığına ilişkin örnekler için bkz. Azure AI Galerisi:

  • Kredi riski tahmini: Bu örnekte, kredi riski puanı olan sınıf sütunu dışındaki tüm sayısal verilere normalleştirme uygulanır. Bu örnekte, tüm sayısal özellikleri 0-1 aralığındaki değerlere dönüştüren tanh dönüşümü kullanılır.

Teknik notlar

Bu modül yalnızca Nasıl yapılır bölümünde listelenen standart normalleştirme yöntemlerini destekler ve matris normalleştirmesini veya diğer karmaşık dönüşümleri desteklemez.

Özel bir normalleştirme yöntemi oluşturmanız gerekiyorsa, dönüştürmeyi hesaplamak ve uygulamak için R Betiği Yürütme veya Python Betiği Yürütme modüllerini kullanabilirsiniz.

Normalleştirme uygulayan algoritmalar

Özellikleri ortak ölçek kullanacak şekilde normalleştirmek, birçok makine öğrenmesi algoritması için genel bir gereksinimdir.

  • Doğrusal sınıflandırma algoritmalarında örnekler çok boyutlu uzayda vektör olarak görüntülenir. Ham veri değerleri aralığı geniş ölçüde değiştiğinden, bazı hedef işlevler normalleştirme olmadan düzgün çalışmaz. Örneğin, özelliklerden biri çok çeşitli değerlere sahipse, noktalar arasındaki mesafeler bu özel özelliğe tabidir.

    Bu nedenle, sayısal özellikler normalleştirilerek her özelliğin son uzaklık ile yaklaşık orantılı bir şekilde katkıda bulunabilmesi gerekir. Bu, önemli hız ve doğruluk avantajları sağlayabilir.

  • Lojistik Regresyon ve Ortalama Perceptron algoritmaları kullanılırken, varsayılan olarak özellikler eğitimden önce normalleştirilir.

Daha fazla okuma ve kaynak

Verilerinize hangi normalleştirme türünün uygun olduğundan emin değilseniz şu kaynaklara bakın:

  • Verilerim için Modül Önerin: Azure ML ekibinin bir üyesi tarafından oluşturulan bu özel modül, veri kümenizi değerlendirir ve verileri temizleme ve ölçeklendirme adımlarını önerir.

  • Özellik ölçeklendirme: Wikipedia'daki bu makalede, sayısal verileri normalleştirmek için kullanılan temel yöntemler açıklanmaktadır.

  • Veri Madenciliği için Veri Hazırlama , birçok veri hazırlama adımlarını derinlemesine kapsar. Veri normalleştirmesi hakkında daha fazla bilgi için bkz. 7. Bölüm.

Beklenen girişler

Ad Tür Description
Veri kümesi Veri Tablosu Giriş veri kümesi

Modül parametreleri

Name Aralık Tür Varsayılan Description
Dönüştürme yöntemi herhangi biri DönüştürmeMethods ZScore Ölçeklendirme için kullanılan matematiksel yöntemi seçme
Dönüştürülecek sütunlar herhangi biri ColumnSelection SayısalTüm Seçili dönüşümün uygulanması gereken tüm sütunları seçme

Çıkışlar

Ad Tür Description
Dönüştürülmüş veri kümesi Veri Tablosu Dönüştürülmüş veri kümesi
Dönüştürme işlevi ITransform arabirimi Diğer veri kümelerine uygulanabilen dönüştürme işlevinin tanımı

Özel durumlar

Özel durum Description
Hata 0001 Veri kümesinin belirtilen bir veya daha fazla sütunu bulunamazsa özel durum oluşur.
Hata 0003 Bir veya daha fazla giriş null veya boşsa özel durum oluşur.
Hata 0017 Belirtilen bir veya daha fazla sütun geçerli modül tarafından desteklenmeyen bir türe sahipse özel durum oluşur.
Hata 0020 Modüle geçirilen bazı veri kümelerindeki sütun sayısı çok küçükse özel durum oluşur.
Hata 0021 Modüle geçirilen bazı veri kümelerindeki satır sayısı çok küçükse özel durum oluşur.

Studio (klasik) modüllerine özgü hataların listesi için bkz. Machine Learning Hata kodları.

API özel durumlarının listesi için bkz. MACHINE LEARNING REST API Hata Kodları.

Ayrıca bkz.

Ölçeklendirme ve Azaltma