Amazon SageMaker Data Wrangler ile verilerinizi makine öğrenimi için dengeleyin

Kaynak Düğüm: 1600102

Amazon SageMaker Veri Düzenleyicisi yeni bir yeteneğidir Amazon Adaçayı Yapıcı bu, veri bilimcilerin ve mühendislerin görsel bir arayüz kullanarak makine öğrenimi (ML) uygulamaları için veri hazırlamasını hızlandırır. 300'den fazla yerleşik veri dönüşümü içerir, böylece herhangi bir kod yazmak zorunda kalmadan özellikleri hızla normalleştirebilir, dönüştürebilir ve birleştirebilirsiniz.

Bugün, makine öğrenimi modeli eğitimi için veri kümelerinizi kolayca ve etkili bir şekilde dengelemenize olanak tanıyan yeni dönüşümleri duyurmaktan heyecan duyuyoruz. Bu dönüşümlerin bu yazıda nasıl çalıştığını gösteriyoruz.

Yeni dengeleme operatörleri

Yeni duyurulan dengeleme operatörleri, Bakiye verileri türü dönüştürmek DÖNÜŞÜM EKLE bölmesi.

Şu anda, dönüştürme operatörleri yalnızca ikili sınıflandırma problemlerini desteklemektedir. İkili sınıflandırma problemlerinde, sınıflandırıcıya her örneği iki sınıftan birine sınıflandırma görevi verilir. Çoğunluk sınıfındaki (daha büyük) örnek sayısı, azınlık (daha küçük) sınıfındaki örnek sayısından oldukça fazla olduğunda, veri kümesi dengesiz kabul edilir. Bu çarpıklık, ML algoritmaları ve sınıflandırıcılar için zorlayıcıdır çünkü eğitim süreci çoğunluk sınıfına yönelik önyargılı olma eğilimindedir.

Bu zorluğun üstesinden gelmek için, sınıflandırıcıyı eğitmeden önce verileri daha dengeli olacak şekilde artıran dengeleme şemaları önerildi. En basit dengeleme yöntemleri, ya azınlık örneklerini çoğaltarak azınlık sınıfını yüksek örneklemek ya da çoğunluk örneklerini çıkararak çoğunluk sınıfını düşük örneklemektir. Tablo verilerine sentetik azınlık örnekleri ekleme fikri ilk olarak Sentetik Azınlık Yüksek Örnekleme Tekniğinde (SMOTE) önerildi; burada sentetik azınlık örnekleri, orijinal azınlık noktalarının enterpolasyon çiftleri tarafından yaratıldı. SMOTE ve diğer dengeleme şemaları ampirik olarak kapsamlı bir şekilde incelendi ve yayına göre çeşitli senaryolarda tahmin performansını iyileştirdiği gösterildi. SMOTE için veya SMOTE için değil.

Data Wrangler artık aşağıdaki dengeleme işleçlerini Bakiye verileri dönüştür:

  • Rastgele yüksek örnekleyici – Azınlık örneklerini rastgele çoğaltın
  • Rastgele alt örnekleyici – Çoğunluk örneklerini rastgele kaldırın
  • cezalandırdı – Gerçek azınlık örneklerini enterpolasyon yaparak sentetik azınlık örnekleri oluşturun

Şimdi farklı dengeleme operatörlerini ayrıntılı olarak tartışalım.

Rastgele örnekleme

Rastgele yüksek hızda örnekleme, azınlık sınıfından rastgele örneklerin değiştirilmesini ve eğitim verilerinin bu örneğin birden fazla kopyasıyla desteklenmesini içerir. Bu nedenle, tek bir örneğin birden çok kez seçilmesi mümkündür. İle Rasgele aşırı örnekleme Dönüşüm türü, Data Wrangler, veri kümenizdeki azınlık örneklerini çoğaltarak sizin için azınlık sınıfını otomatik olarak yüksek hızda örneklemektedir.

rastgele alt örnek

Rastgele düşük örnekleme, rastgele yüksek örneklemenin tersidir. Bu yöntem, çoğunluk sınıfından örnekleri rasgele seçmeyi ve çıkarmayı amaçlar, sonuç olarak, dönüştürülen verilerde çoğunluk sınıfındaki örnek sayısını azaltır. bu Rasgele alt örnekleme dönüştürme türü, Data Wrangler'ın veri kümenizdeki çoğunluk örneklerini kaldırarak sizin için çoğunluk sınıfının alt örneğini otomatik olarak almasını sağlar.

cezalandırdı

SMOTE'ta, çoğunluk ve azınlık örnekleri arasında istenen oranı elde etmek için verilere sentetik azınlık örnekleri eklenir. Sentetik numuneler, orijinal azınlık noktalarının çiftlerinin interpolasyonuyla üretilir. bu cezalandırdı transform, sayısal ve sayısal olmayan özellikler dahil veri kümelerini dengelemeyi destekler. Sayısal özellikler, ağırlıklı ortalama ile enterpole edilir. Ancak, sayısal olmayan özelliklere ağırlıklı ortalama enterpolasyonu uygulayamazsınız; ortalamasını almak imkansızdır. “dog” ve “cat” örneğin. Bunun yerine, sayısal olmayan özellikler, ortalama ağırlığa göre her iki orijinal azınlık örneğinden kopyalanır.

Örneğin, A ve B olmak üzere iki örneği ele alalım:

A = [1, 2, "dog", "carnivore"]
B = [0, 0, "cow", "herbivore"]

Numunelerin A numunesi için 0.3 ve B numunesi için 0.7 ağırlıkları ile enterpole edildiğini varsayalım. Bu nedenle, sayısal alanların sırasıyla 0.3 ve 0.6 verecek şekilde bu ağırlıklarla ortalaması alınır. Bir sonraki alan şununla doldurulur: “dog” 0.3 olasılıkla ve “cow” 0.7 olasılıkla. Benzer şekilde, bir sonraki eşittir “carnivore” 0.3 olasılıkla ve “herbivore” 0.7 olasılıkla. Rastgele kopyalama, her özellik için bağımsız olarak yapılır, dolayısıyla aşağıdaki C örneği olası bir sonuçtur:

C = [0.3, 0.6, "dog", "herbivore"]

Bu örnek, enterpolasyon işleminin otçul bir köpek gibi gerçekçi olmayan sentetik örneklerle nasıl sonuçlanabileceğini göstermektedir. Bu, kategorik özelliklerde daha yaygındır, ancak sayısal özelliklerde de ortaya çıkabilir. Bazı sentetik örnekler gerçekçi olmasa da, SMOTE yine de sınıflandırma performansını iyileştirebilir.

Bulgusal olarak daha gerçekçi örnekler oluşturmak için SMOTE, yalnızca özellikler alanında yakın olan çiftleri enterpolasyon yapar. Teknik olarak, her örnek yalnızca k-en yakın komşuları ile interpole edilir, burada k için ortak değer 5'tir. Bizim SMOTE uygulamamızda, noktalar arasındaki mesafeleri hesaplamak için yalnızca sayısal özellikler kullanılır (mesafeler komşuluğu belirlemek için kullanılır) her numunenin). Mesafeleri hesaplamadan önce sayısal özellikleri normalleştirmek yaygındır. Sayısal özelliklerin yalnızca mesafeyi hesaplamak amacıyla normalleştirildiğini unutmayın; ortaya çıkan enterpolasyonlu özellikler normalleştirilmez.

şimdi dengeyi sağlayalım Yetişkin Veri Kümesi (Census Income veri kümesi olarak da bilinir) Data Wrangler tarafından sağlanan yerleşik SMOTE dönüşümünü kullanır. Bu çok değişkenli veri kümesi, altı sayısal özellik ve sekiz dizi özelliği içerir. Veri setinin amacı, bir bireyin gelirinin nüfus sayımı verilerine dayalı olarak yılda 50,000 doları aşıp aşmadığını tahmin etmek için ikili bir sınıflandırma görevidir.

kullanarak bir histogram oluşturarak sınıfların dağılımını görsel olarak da görebilirsiniz. Data Wrangler'da histogram analiz türü. Hedef dağılım dengesiz ve kayıtların oranı >50K için <=50K yaklaşık 1:4'tür.

Bu verileri kullanarak dengeleyebiliriz. cezalandırdı altında bulunan operatör Bakiye Verileri Data Wrangler'da aşağıdaki adımlarla dönüştürün:

  1. Klinik income hedef sütun olarak

Bu sütunun dağılımının daha dengeli olmasını istiyoruz.

  1. İstenen oranı şu şekilde ayarlayın: 0.66.

Bu nedenle, azınlık ve çoğunluk örneklerinin sayısı arasındaki oran 2:3'tür (ham oran olan 1:4 yerine).

  1. Klinik cezalandırdı kullanılacak dönüşüm olarak.
  2. için varsayılan değerleri bırakın komşu sayısı ortalama almak ve normalize edip etmemek.
  3. Klinik Önizleme Uygulanan dönüşümün önizlemesini almak ve seçim yapmak için Ekle veri akışınıza dönüşümü eklemek için.

Artık sınıfların yeniden hizalanmış dağılımını görmek için daha önce yaptığımıza benzer yeni bir histogram oluşturabiliriz. Aşağıdaki şekil histogramı göstermektedir. income veri kümesini dengeledikten sonra sütun. Numunelerin dağılımı amaçlandığı gibi şimdi 3:2'dir.

Artık bu yeni dengeli verileri dışa aktarabilir ve üstün tahmin kalitesi sağlayabilecek bir sınıflandırıcıyı eğitebiliriz.

Sonuç

Bu gönderide, Data Wrangler kullanarak dengesiz ikili sınıflandırma verilerinin nasıl dengeleneceğini gösterdik. Data Wrangler üç dengeleme operatörü sunar: rastgele düşük örnekleme, rastgele yüksek örnekleme ve dengesiz veri kümelerinizdeki verileri yeniden dengelemek için SMOTE. Data Wrangler tarafından sunulan üç yöntemin tümü, sayısal ve sayısal olmayan özellikler dahil olmak üzere çok modlu verileri destekler.

Sonraki adımlarda, tartıştığımız şeyi uygulamalı olarak görmek için bu gönderideki örneği Data Wrangler veri akışınızda çoğaltmanızı öneririz. Data Wrangler'da yeniyseniz veya Adaçayı Yapıcı Stüdyobakın Data Wrangler'ı Kullanmaya Başlayın. Bu gönderiyle ilgili herhangi bir sorunuz varsa, lütfen yorum bölümüne ekleyin.


Yazarlar Hakkında

Yotam Elor Amazon SageMaker'da Kıdemli Uygulamalı Bilim Adamıdır. Araştırma ilgi alanları, özellikle tablo verileri olmak üzere makine öğrenimidir.

Arunprasath Şankar AWS'li bir Yapay Zeka ve Makine Öğrenimi (AI / ML) Uzman Çözüm Mimarıdır ve küresel müşterilerin yapay zeka çözümlerini bulutta etkili ve verimli bir şekilde ölçeklendirmelerine yardımcı olur. Arun boş zamanlarında bilim kurgu filmleri izlemekten ve klasik müzik dinlemekten hoşlanıyor.

Kaynak: https://aws.amazon.com/blogs/machine-learning/balance-your-data-for-machine-learning-with-amazon-sagemaker-data-wrangler/

Zaman Damgası:

Den fazla AWS Makine Öğrenimi Blogu