Genel olarak Aşırı Örnekleme ve özellikle SMOTE algoritması hakkındaki görüşler [kapalı]


18

Genel olarak sınıflandırmada ve özellikle SMOTE algoritmasında aşırı örnekleme hakkında ne düşünüyorsunuz? Neden sadece sınıf verilerindeki dengesizliği ve herhangi bir dengesiz hata maliyetini ayarlamak için bir maliyet / ceza uygulamıyoruz? Benim amacım için, gelecekteki deneysel birimler setine yönelik tahminin doğruluğu nihai ölçüttür.

Referans için, SMOTE belgesi: http://www.jair.org/papers/paper953.html


1
Dengesiz bir veri kümesinde bir azınlık sınıfını aşırı örneklemeyle ilgili bir sorun, birkaç örnekten çok fazla şey öğrenmenizdir ve bu iyi bir şekilde genellemez. SMOTE'nin azınlık sınıfındaki bu noktaların mahallesinin topolojik özelliklerini öğrenmesi gerekiyor, bu nedenle fazla uyma olasılığınız daha düşük.
horaceT

2
Bu bir soru için harika bir konu, ancak biraz daha odaklanmış olabilir misiniz? "Senin görüşün nedir?" sonsuz tartışmayı davet ediyor ama soru / cevap formatına daha keskin bir şekilde odaklanma eğilimindeyiz.
Sycorax, Reinstate Monica'ya

Yanıtlar:


19

{1}, maliyete duyarlı öğrenmenin örneklemeye karşı avantaj ve dezavantajlarının bir listesini verir:

2.2 Örnekleme

Aşırı örnekleme ve yetersiz örnekleme, eğitim verilerinin sınıf dağılımını değiştirmek için kullanılabilir ve her iki yöntem de sınıf dengesizliği ile başa çıkmak için kullanılmıştır [1, 2, 3, 6, 10, 11]. Eğitim verilerinin sınıf dağılımını değiştirmenin, yüksek eğri veri kümeleriyle öğrenmeye yardımcı olmasının nedeni, düzgün olmayan, yanlış sınıflandırma maliyetlerini etkili bir şekilde dayatmasıdır. Örneğin, biri eğitim setinin sınıf dağılımını, pozitif / negatif örneklerin oranı 1: 1'den 2: 1'e gidecek şekilde değiştirirse, kişi 2: 1 yanlış sınıflandırma maliyet oranını etkin bir şekilde tayin etmiştir. Eğitim verilerinin sınıf dağılımını değiştirme ile yanlış sınıflandırma maliyet oranını değiştirme arasındaki bu denklik iyi bilinmektedir ve Elkan tarafından resmen tanımlanmıştır [9].

Maliyete duyarlı öğrenmeyi uygulamak için örneklemenin kullanımıyla ilişkili bilinen dezavantajlar vardır. Undersampling dezavantajı bu atar potansiyel olarak faydalı verilerdir . Aşırı örneklemenin ana dezavantajı , bizim açımızdan, mevcut örneklerin tam kopyalarını alarak aşırı uyumu mümkün kılmasıdır . Aslında, aşırı örneklemede, bir öğrencinin tek, çoğaltılmış bir örneği kapsayacak bir sınıflandırma kuralı oluşturması oldukça yaygındır. Aşırı örneklemenin ikinci bir dezavantajı, eğitim örneklerinin sayısını artırması, böylece öğrenme süresini arttırmasıdır .

2.3 Neden Örnekleme Kullanılmalı?

Örneklemenin dezavantajları göz önüne alındığında, eğri bir sınıf dağılımı ve eşit olmayan yanlış sınıflandırma maliyetleri olan verilerle uğraşmak için neden maliyet duyarlı bir öğrenme algoritması yerine herkesin bunu kullanacağını sormaya değer. Bunun birkaç nedeni var. En bariz neden, tüm öğrenme algoritmalarının maliyete duyarlı uygulamaları olmamasıdır ve bu nedenle örnekleme kullanan sarıcı tabanlı bir yaklaşım tek seçenektir. Bu, bugün geçmişte olduğundan kesinlikle daha az doğru olsa da, birçok öğrenme algoritması (ör. C4.5) hala öğrenme sürecindeki maliyetleri doğrudan ele almamaktadır.

Örneklemenin kullanılmasının ikinci bir nedeni, yüksek derecede çarpık veri kümelerinin muazzam olması ve öğrenmenin mümkün olabilmesi için eğitim setinin boyutunun küçültülmesi gerektiğidir. Bu durumda, yetersiz örnekleme makul ve geçerli bir strateji gibi görünmektedir. Bu yazıda, eğitim seti boyutunu azaltma ihtiyacını dikkate almıyoruz. Bununla birlikte, eğer bazı eğitim verilerini atmak gerekirse, eğitim seti boyutunu gerekli boyuta düşürmek için yine de çoğunluk sınıfı örneklerinden bazılarının atılabilmesinin ve hassas öğrenme algoritması, böylece atılan eğitim verilerinin miktarı en aza indirilir.

Maliyete duyarlı bir öğrenme algoritması yerine örnekleme kullanımına katkıda bulunmuş olabilecek son bir neden, yanlış sınıflandırma maliyetlerinin genellikle bilinmemesidir. Bununla birlikte, bu, örnekleme ile benzer bir sorun ortaya çıktığından, masraflı bir öğrenme algoritması üzerinde örneklemenin kullanılmasının geçerli bir nedeni değildir - son eğitim verilerinin sınıf dağılımı ne olmalıdır? Bu maliyet bilgisi bilinmiyorsa, sınıflandırıcı performansını ölçmek için ROC eğrisinin altındaki alan gibi bir ölçüm kullanılabilir ve her iki yaklaşım da uygun maliyet oranını / sınıf dağılımını ampirik olarak belirleyebilir.

Ayrıca sonuçsuz olan bir dizi deney yaptılar:

Tüm veri setlerinin sonuçlarına göre, maliyete duyarlı öğrenme, aşırı örnekleme ve yetersiz örnekleme arasında kesin bir kazanan yoktur.

Daha sonra veri kümelerindeki hangi kriterlerin hangi tekniğin daha iyi takıldığını ima edebileceğini anlamaya çalışırlar.

SMOTE'nin bazı geliştirmeler getirebileceğini de belirtiyorlar:

İnsanların örneklemenin etkinliğini artırmak için yaptıkları çeşitli iyileştirmeler vardır. Bu geliştirmelerden bazıları, örnekleme sırasında yeni “sentetik” örnekler ekleme [5 -> SMOTE], örnekleme sırasında daha az yararlı çoğunluk sınıfı örnekleri silme [11] ve her örnek dışında örnekleme yaparken birden fazla alt örnek kullanma en az bir tanesinde alt örnek [3]. Bu teknikler aşırı örnekleme ve yetersiz örnekleme ile karşılaştırılmış olsa da, genellikle maliyete duyarlı öğrenme algoritmaları ile karşılaştırılmamıştır. Bu gelecekte çalışmaya değer.


{1} Weiss, Gary M., Kate McCarthy ve Bibi Zabar. "Maliyete duyarlı öğrenme ve örnekleme: Dengesiz sınıfları eşit olmayan hata maliyetleri ile yönetmek için hangisi en iyisidir?" DMIN 7 (2007): 35-41. https://scholar.google.com/scholar?cluster=10779872536070567255&hl=tr&as_sdt=0,22 ; https://pdfs.semanticscholar.org/9908/404807bf6b63e05e5345f02bcb23cc739ebd.pdf


2
"Maliyete duyarlı öğrenme algoritması" dediğinde beynim "yüksek sıklıkta sınıfları cezalandırmalı ve muhtemelen düşük sıklıkta sınıflara daha fazla önem vermeli" diye düşünmeli mi? Bu kavram sınıf ağırlıklarını atamaya eşdeğer mi?
Jarad
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.