Veri artırımı ve tren-doğrulaması bölünmesi nasıl yapılır?


15

Makine öğrenimini kullanarak görüntü sınıflandırması yapıyorum.

Bazı eğitim verilerim (resimlerim) olduğunu ve verileri eğitim ve doğrulama setlerine böldüğümü varsayalım. Ve ayrıca rastgele döndürmeler ve gürültü enjeksiyonu ile verileri (orijinallerinden yeni görüntüler üretmek) artırmak istiyorum. Güçlendirme çevrimdışı yapılır.

Veri güçlendirmeyi yapmanın doğru yolu hangisidir?

  1. Önce verileri eğitim ve doğrulama kümelerine ayırın, ardından hem eğitim hem de doğrulama kümeleri üzerinde veri artırımı yapın.

  2. Önce verileri eğitim ve doğrulama setlerine ayırın, ardından yalnızca eğitim setinde veri artırımı yapın.

  3. Önce veriler üzerinde veri artırımı yapın, ardından verileri eğitim ve doğrulama kümesine bölün.


1
"Veri büyütme" nin birden fazla anlamı vardır; hangisinin size ait olduğunu netleştirmek veya yalnızca bir örnek vermek için sorunuzun düzenlenmesine yardımcı olur.
Scortchi - Monica'yı eski durumuna döndürün

TTA yapmayı planlıyorsanız, artırım, test kümesine göre doğrulama kümesine uygulanmalıdır.
abby yorker

Yanıtlar:


19

Önce verileri eğitim ve doğrulama setlerine ayırın, ardından eğitim setinde veri artırımı yapın.

Doğrulama kümenizi, yönteminizin gerçek dünya verileri üzerinde nasıl çalıştığını tahmin etmek için kullanırsınız, bu nedenle yalnızca gerçek dünya verilerini içermelidir. Artırılmış veri eklemek, doğrulamanın doğruluğunu artırmaz. En iyi ihtimalle yönteminizin veri artırımına ne kadar iyi tepki verdiğine dair bir şey söyleyecek ve en kötü ihtimalle doğrulama sonuçlarını ve yorumlanabilirliği mahvedecektir.


Cevabınızdaki bir şeyi merak ediyorum. Bir CNN eğitimini durdurma kriterim validasyon kaybını azaltıyorsa, validasyon verileri üzerindeki veri artırımının iyi bir seçim olduğuna inanıyor musunuz?
deli

1
Hayır, doğrulama doğruluğunu artık artırdığınızda doğrulama doğruluğu artık yeni görünmeyen verilerdeki doğruluk için iyi bir vekil olmadığı için "doğrulama sonuçlarını ve yorumlanabilirliği mahveder" diye düşünüyorum.
burk

bu nedenle verilerin onaylanması ve test edilmesi için veri artırımı uygulamamıza gerek yok mu?
Aadnan Farooq A

@AadnanFarooqA Hayır. Modelinizi tahminler için kullandığınızda, normalde test ve doğrulama verilerinizde görünmeyen veriler üzerinde yapmak istediğiniz işlemleri yapmalısınız.
burk

1
@AadnanFarooqA Normalde, egzersizden sonra bölünmeden sonra büyütme uygulamanız gerekir.
burk

4

Asla 3 yapmayın, sızıntı elde edersiniz. örneğin büyütme işleminin 1 piksellik bir sola kaydırma olduğunu varsayalım. büyütmedeki bölünme farkında değilse, hem tren hem de validasyonda çok benzer veri örnekleri alabilirsiniz.


0

Veri Büyütme, analiz edilen mevcut verilere harici veri / bilgi eklemek anlamına gelir.

Dolayısıyla, artırılmış verilerin tamamı makine öğrenimi için kullanıldığından, aşağıdaki süreç daha uygun olacaktır:

Veri büyütme -> Verileri bölme


Cevap için teşekkürler. Bir numunenin ve orijinal numuneye oldukça benzeyen artırılmış numunenin farklı setlerde yayılması doğru mu?
yangjie

Eğitim seti olarak mevcut verileri ve doğrulama seti olarak artırılmış verileri mi kastediyorsunuz? Sonra, HAYIR
Dawny33

Bölme rastgele, yani veri artırımı yapar ve sonra veriyi ayırırsam, artırılmış veriler doğrulama kümesine giderken bazı mevcut verilerin (hepsi değil) eğitim kümesine bölünmesi muhtemeldir.
yangjie

Büyütme ile demek istiyor musunuz? Artırılmış veriler, tüm noktalarda mevcut verileri destekleyen verilerdir. Bu nedenle, bölme rastgele olursa, bölme her iki kümede de aynı miktarda artırılmış veri ile sonuçlanır, mevcut verilerle
Dawny33 5:15

Bunun için kağıt referansı var mı?
Aadnan Farooq A
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.