Ders 12: Veri Artırma ve Üretici Modeller
12.1 Giriş: Tarımda Veri Kıtlığı Problemi
Derin öğrenme modelleri, başarılı sonuçlar için büyük miktarda etiketli veriye ihtiyaç duyar. ImageNet 14+ milyon görüntü içerirken, tipik bir tarımsal veri seti yüzlerce ile birkaç bin görüntü arasında değişir. Bu kıtlığın nedenleri:
-
Mevsimsellik: Belirli bir hastalık yılda sadece 2-3 ay görülür. Örneğin pirinç yanıklığı (rice blast) sadece nemli muson döneminde yaygındır. Veri setinde yeterli örnek toplamak için birden fazla sezon beklemek gerekir.
-
Uzman etiketleme gereksinimi: Bir yaprağın hangi hastalığa sahip olduğunu belirlemek için bitki patologu gerekir. Etiketleme maliyetli ve zaman alıcıdır. Shrivastava ve arkadaşları (2019), pirinç hastalığı sınıflandırmasında sadece 619 görüntü toplayabilmiştir (RB: 88, BLB: 240, SB: 100, HL: 191).
-
Dengesiz sınıflar: Sağlıklı bitki örnekleri bol, nadir hastalıklar az. BLB (240 görüntü) ve RB (88 görüntü) arasındaki 3 katlık dengesizlik, modelin nadir sınıfı öğrenememesine yol açar.
-
Koşul değişkenliği: Aydınlatma, kamera açısı, yaprak yaşı, arka plan (toprak, diğer bitkiler) görüntüler arası büyük varyans oluşturur.
-
Gizlilik ve erişim: Bazı tarımsal veriler (uydu görüntüleri, şirket verileri) kısıtlı erişimlidir.
Veri artırma (data augmentation), bu sorunu mevcut verileri çeşitlendirerek ve yeni sentetik veriler üreterek çözer.
12.2 Geleneksel Veri Artırma Yöntemleri
12.2.1 Geometrik Dönüşümler
| Dönüşüm | Açıklama | Tarımsal Gerekçe |
|---|---|---|
| Yatay Aynalama | Görüntüyü sağ-sol çevirme | Yaprağın yönü teşhisi etkilemez |
| Dikey Aynalama | Görüntüyü üst-alt çevirme | Drone görüntülerinde yön değişkenliği |
| Döndürme (0-360) | Rastgele açı ile döndürme | Tarla fotoğraflarında sabit yön yok |
| Ölçekleme | Büyütme/küçültme (%80-120) | Farklı mesafelerden çekim |
| Kırpma (Crop) | Rastgele bölge kesimi | Yaprağın farklı bölgelerine odaklanma |
| Kaydırma (Shift) | Görüntüyü x/y ekseninde kaydırma | Nesnenin görüntüdeki konum değişkenliği |
12.2.2 Fotometrik Dönüşümler
| Dönüşüm | Açıklama | Tarımsal Gerekçe |
|---|---|---|
| Parlaklık | Aydınlatma artırma/azaltma | Sabah/öğlen/akşam ışık farklılıkları |
| Kontrast | Kontrast değiştirme | Bulutlu/güneşli hava farklılıkları |
| Doygunluk | Renk yoğunluğu değiştirme | Yaprak yaşı ve mevsim etkisi |
| Renk bozma (Jitter) | RGB kanallarında rastgele kayma | Kamera sensör farklılıkları |
| Gaussian Gürültü | Rastgele piksel gürültüsü ekleme | Düşük kaliteli kamera/sensörler |
| Bulanıklaştırma (Blur) | Gaussian veya motion blur | Hareket eden drone, rüzgar |
12.2.3 Geometrik + Fotometrik Birlikte
Wu ve arkadaşları (2020), domates yaprak hastalığı tespitinde geleneksel artırma yöntemlerini (döndürme, çevirme, kaydırma) sınırlı bulmuştur. Bu yöntemler görüntünün semantik içeriğini değiştirmez -- yani yeni bir hastalık görünümü oluşturmaz, sadece mevcut görüntüyü farklı açılardan gösterir. Bu nedenle genelleme yeteneği sınırlıdır.
12.3 Gelişmiş Artırma Teknikleri
12.3.1 Mixup
$$\tilde{x} = \lambda x_i + (1-\lambda) x_j$$ $$\tilde{y} = \lambda y_i + (1-\lambda) y_j$$
İki görüntüyü ve etiketlerini ağırlıklı olarak karıştırır (lambda ~ Beta(alpha, alpha) dağılımı).
Tarımsal Örnek: %70 sağlıklı yaprak + %30 hasta yaprak = yarı saydam bir karışım. Etiket de %70 sağlıklı + %30 hasta olarak yumuşatılır. Bu, modelin sınıf sınırları arasında daha yumuşak geçişler öğrenmesini sağlar.
12.3.2 CutMix
Bir görüntüden dikdörtgen bir bölge kesilir ve başka bir görüntüye yapıştırılır. Etiket, alan oranına göre karıştırılır.
Tarımsal Örnek: Sağlıklı yaprak görüntüsünün bir bölgesi, hasta yaprak görüntüsüyle değiştirilir. Bu, modelin görüntünün tüm bölgesine değil, ilgili bölgelere odaklanmasını sağlar.
12.3.3 Cutout / Random Erasing
Görüntüden rastgele dikdörtgen bölgeler siyahla kapatılır. Model, kısmi bilgiyle sınıflandırma yapmaya zorlanır.
Tarımsal Örnek: Yaprağın bir bölgesini kapatarak modelin sadece görünen kısımdan teşhis yapmasını sağlamak. Gerçek dünyada yapraklar birbirini örtebilir veya gölge düşebilir.
12.3.4 Karşılaştırma Tablosu
| Yöntem | Nasıl Çalışır | Avantaj | Tarımsal Uygulama |
|---|---|---|---|
| Mixup | İki görüntüyü karıştır | Yumuşak sınırlar | Sınıf sınırlarında belirsizlik azaltma |
| CutMix | Bölge kes-yapıştır | Lokalizasyon güçlendirir | Yapraktaki lezyona odaklanma |
| Cutout | Rastgele bölge kapat | Kısmi bilgiyle öğrenme | Gölge/üst üste durumu |
| Mosaic | 4 görüntüyü birleştir | Çoklu nesne, değişken ölçek | YOLO eğitiminde standart |
12.4 GAN: Üretici Çekişmeli Ağlar
12.4.1 GAN'ın Temel Yapısı
GAN (Generative Adversarial Network), Goodfellow ve arkadaşları tarafından 2014'te önerilmiştir. İki rakip ağdan oluşur:
Üretici (Generator - G): Rastgele gürültü vektöründen (z) gerçekçi görüntüler üretmeye çalışır.
Ayırt Edici (Discriminator - D): Bir görüntünün gerçek mi yoksa üretilmiş mi olduğunu belirlemeye çalışır.
Amaç Fonksiyonu:
$$\min_G \max_D V(D,G) = E_{x \sim p_{data}}[log D(x)] + E_{z \sim p_z}[log(1 - D(G(z)))]$$
Wu ve arkadaşları (2020), bu süreci şu şekilde açıklamıştır: İlk başta üretici çok kötü görüntüler üretir. Ayırt edici bunları kolayca ayırt eder. Sonra ikinci nesil üretici biraz daha iyi görüntüler üretir ve ikinci nesil ayırt edici daha dikkatli olur. Bu süreç N nesil boyunca devam eder ve sonunda ayırt edici üretilmiş görüntüyü gerçekten ayırt edemez hale gelir.
12.4.2 Tarımsal Benzetme
Bu süreç bir tohum kalite kontrol benzetmesiyle anlaşılabilir: - Üretici = Sahte tohum üretici: Gerçek tohumlara benzeyen sahte tohumlar üretmeye çalışır. - Ayırt edici = Kalite kontrolcü: Gerçek ve sahte tohumları ayırt etmeye çalışır. - Her iki taraf da sürekli iyileşir; sonunda sahte tohumlar gerçeklerinden ayırt edilemez hale gelir.
12.5 DCGAN: Derin Evrişimli GAN
12.5.1 DCGAN Mimarisi
DCGAN (Deep Convolutional GAN), Radford ve arkadaşları (2015) tarafından önerilmiştir. GAN'ın genel yapısını evrişim katmanları ile güçlendirir:
Üretici (G) Yapısı: - Giriş: z vektörü (rastgele gürültü, örneğin 100 boyutlu) - Transposed convolution (fractional-strided convolution) ile boyut artırma - Batch normalization + ReLU aktivasyon - Son katmanda Tanh aktivasyon (piksel değerleri [-1, 1])
Ayırt Edici (D) Yapısı: - Giriş: Görüntü (gerçek veya üretilmiş) - Strided convolution ile boyut azaltma - Batch normalization + LeakyReLU aktivasyon - Son katmanda sigmoid (gerçek mi? 0-1)
Temel Kurallar: - Tam bağlı katmanlar kullanılmaz (tamamen evrişimsel) - Batch normalization her katmanda (ilk ve son hariç) - Pooling yerine strided convolution
12.5.2 DCGAN ile Domates Hastalığı (Wu et al., 2020)
Wu ve arkadaşları, domates yaprak hastalığı tespitinde DCGAN'ı kapsamlı şekilde kullanmıştır. Çalışma, Northeast Agricultural University (Harbin, Çin) tarafından yürütülmüştür.
Veri Seti: 5 sınıf domates yaprak görüntüsü: 1. Target Spot Bacteria (Hedef Leke Bakterisi) 2. YLCV Virus (Sarı Yaprak Kıvırcıklığı Virüsü) 3. Healthy (Sağlıklı) 4. Late Blight Water Mold (Geç Yanıklık Su Küfü) 5. Septoria
Yöntem: 1. Her sınıf için ayrı DCGAN eğitimi 2. Mini-batch boyutu: 64 3. Üretilen görüntüler + orijinal görüntüler birlikte sınıflandırma ağına besleme 4. GoogLeNet transfer öğrenme ile sınıflandırma
Sonuçlar:
| Yöntem | Doğruluk (%) |
|---|---|
| GoogLeNet (artırmasız) | ~88 |
| GoogLeNet + Geleneksel artırma (döndürme, çevirme) | ~91 |
| GoogLeNet + DCGAN artırma | 94.33 |
DCGAN ile üretilen görüntüler, gerçek görüntülere benzer özellikler göstermektedir. Farklı hastalık sınıflarının karakteristik örüntüleri (lezyon rengi, şekli, dağılımı) üretilen görüntülerde korunmuştur.
Değerlendirme Metrikleri:
Wu ve arkadaşları, GAN kalitesini değerlendirmek için üç metrik kullanmıştır:
| Metrik | Açıklama | Sonuç |
|---|---|---|
| GAN-train | GAN görüntüleriyle eğit, gerçek görüntülerle test et | Üretilen görüntülerin çeşitliliğini ve gerçekçiliğini ölçer |
| GAN-test | Gerçek görüntülerle eğit, GAN görüntüleriyle test et | Üretilen görüntülerin dağılımının gerçeğe yakınlığını ölçer |
| Visual Turing Test | Bitki uzmanlarına gerçek/sahte ayırt ettirme | İnsan gözüyle değerlendirme |
CNN Mimari Karşılaştırması (Wu et al., 2020):
| Mimari | Doğruluk (%) |
|---|---|
| AlexNet | En düşük |
| VGG-16 | Orta-yüksek |
| ResNet | Yüksek |
| GoogLeNet | En yüksek (94.33) |
GoogLeNet'in Inception modülü sayesinde az parametreyle yüksek performans sağlaması, DCGAN ile birleştiğinde en iyi sonuçu vermiştir.
12.5.3 Farklı GAN Türlerinin Karşılaştırması
Wu ve arkadaşları (2020), DCGAN'ı diğer GAN türleriyle de karşılaştırmıştır:
| GAN Türü | Doğruluk (%) | Avantaj | Dezavantaj |
|---|---|---|---|
| DCGAN | En yüksek | Kararlı eğitim, iyi görüntü kalitesi | Çözünürlük sınırlı |
| WGAN | Orta-yüksek | Modal çökme sorunu az | Yavaş eğitim |
| Standart GAN | Düşük | Basit | Kararsız eğitim |
12.6 CycleGAN: Çift Yönlü Görüntü Dönüşümü
12.6.1 CycleGAN Nasıl Çalışır?
CycleGAN, Zhu ve arkadaşları (2017) tarafından önerilmiştir. Eşleştirilmemiş görüntü çiftleri arasında dönüşüm öğrenir. İki üretici ve iki ayırt edici içerir:
- G_AB: A alanından B alanına dönüşüm (örneğin sağlıklı → hasta)
- G_BA: B alanından A alanına dönüşüm (hasta → sağlıklı)
- Döngü Tutarlılığı (Cycle Consistency): A → B → A dönüşümü orijinale yakın olmalıdır.
$$L_{cycle} = E[||G_{BA}(G_{AB}(x_A)) - x_A||] + E[||G_{AB}(G_{BA}(x_B)) - x_B||]$$
12.6.2 Tarımsal Uygulama: Sağlıklı-Hasta Yaprak Dönüşümü
Li ve arkadaşları (2021), incelemelerinde Tian ve arkadaşlarının (2019) CycleGAN kullanarak sağlıklı elma yaprak görüntülerinden hastalıklı elma yaprak görüntüleri ürettiğini raporlamıştır. Bu yaklaşımın avantajı, eşleştirilmiş veri çiftlerine ihtiyaç duymamasıdır -- sadece "sağlıklı yaprak grubu" ve "hasta yaprak grubu" yeterlidir.
CycleGAN Tarımsal Uygulamaları: - Sağlıklı → Hasta dönüşümü: Nadir hastalık sınıflarını zenginleştirme - Yaz → Kış dönüşümü: Mevsimsel çeşitlendirme - Normal ışık → Düşük ışık dönüşümü: Aydınlatma koşullarını çeşitlendirme
CycleGAN'ın Sınırlılıkları (Li et al., 2021): - Üretilen görüntülerin çoğu düşük kalitelidir - Çeşitlilik sınırlıdır (benzer görüntüler tekrarlanabilir) - Eğitim kararsızlığı
12.6.3 LeafGAN: Yaprak Odaklı GAN
Li ve arkadaşları (2021), LeafGAN yaklaşımının sağlıklı yaprağı farklı hastalık türlerine dönüştürerek veri setini dengelediğini aktarmıştır. LeafGAN, CycleGAN'a attention mekanizması ekleyerek daha hedefli dönüşüm gerçekleştirir.
12.7 Veri Arttırma Stratejisi Seçimi
12.7.1 Karar Ağacı
Veri setiniz ne kadar büyük?
|
|-- Büyük (10000+): Hafif geleneksel artırma yeterli
|-- Orta (1000-10000): Geleneksel + Mixup/CutMix
|-- Küçük (100-1000): Geleneksel + DCGAN/CycleGAN
|-- Çok küçük (<100): Transfer öğrenme + agresif artırma + GAN
Sınıf dengesi nasıl?
|
|-- Dengeli: Standart artırma
|-- Dengesiz: Az örnekli sınıf için GAN + oversampling
Görüntü domaini ne kadar spesifik?
|
|-- Genel (yaprak görüntüsü): ImageNet transfer + standart artırma
|-- Spesifik (mikroskop, multispektral): GAN + domain-specific artırma
12.7.2 Yöntem Karşılaştırma Tablosu
| Yöntem | Veri Gereksinimi | Kalite | Çeşitlilik | Hesaplama | En İyi Kullanım |
|---|---|---|---|---|---|
| Geometrik | Yok | Orta | Düşük | Çok düşük | Her zaman temel |
| Fotometrik | Yok | Orta | Düşük | Çok düşük | Işık değişkenliği |
| Mixup/CutMix | Yok | Orta | Orta | Düşük | Sınır yumuşatma |
| DCGAN | Orta (500+/sınıf) | Yüksek | Yüksek | Yüksek | Sınıf dengesizliği |
| CycleGAN | Orta (iki alan) | Orta-Yüksek | Yüksek | Çok yüksek | Alan dönüşümü |
| StyleGAN | Yüksek (5000+) | Çok yüksek | Çok yüksek | Çok yüksek | Fotorealistik üretim |
12.8 GAN Eğitim Zorlukları ve Çözümleri
12.8.1 Modal Çökme (Mode Collapse)
Üretici, sınırlı sayıda görüntü üretmeye mahkum olur; çeşitlilik kaybolur. Tarımsal örnekle: GAN hep aynı tipte lezyon görüntüsü üretir, farklı lezyon şekillerini öğrenemez.
Çözümler: - WGAN-GP: Gradient penalty ile eğitim kararlılığını arttırır - Spektral normalizasyon: Ağırlıkları sınırlar - Çeşitlilik kaybı (diversity loss): Üreticinin çeşitli çıktılar üretmesini teşvik eder
12.8.2 Eğitim Kararsızlığı
Üretici ve ayırt edici birbirlerini dengede tutamaz; kayıplar salınır.
Çözümler: - Öğrenme oranı zamanlama (learning rate scheduling) - İki taraflı label smoothing - Progressive growing (küçük çözünürlükten büyüğe kademeli eğitim)
12.8.3 Değerlendirme Güçlüğü
GAN görüntülerinin kalitesini objektif olarak ölçmek zordur.
| Metrik | Ölçer | Tarımsal Yorum |
|---|---|---|
| FID (Frechet Inception Distance) | Gerçek vs üretilmiş dağılım farkı | Düşük FID = gerçekçi yaprak görüntüsü |
| IS (Inception Score) | Çeşitlilik + kalite | Yüksek IS = farklı hastalık tipleri üretilebiliyor |
| GAN-train / GAN-test | Sınıflandırma bazlı | Üretilen görüntüler eğitimi ne kadar iyileştiriyor? |
| Visual Turing Test | İnsan değerlendirmesi | Uzman bile ayırt edemiyor mu? |
12.9 Gerçek Dünya Uygulama Senaryosu
12.9.1 Senaryo: Nadir Buğday Pası Hastalığını Tespit Etme
-
Problem: 5000 sağlıklı, 200 hasta (sarı pas), 50 hasta (kahverengi pas) görüntü. Kahverengi pas sınıfı çok yetersiz.
-
Adım 1 -- Geleneksel Artırma: 50 kahverengi pas görüntüsüne döndürme, aynalama, parlaklık değişimi uygulanır → 200 görüntü.
-
Adım 2 -- DCGAN: 200 görüntüyle DCGAN eğitilir → 500 sentetik kahverengi pas görüntüsü üretilir.
-
Adım 3 -- Kalite Kontrol: Üretilen görüntüler bitki patologu tarafından görsel olarak değerlendirilir; düşük kaliteli olanlar çıkarılır.
-
Adım 4 -- Birleşik Eğitim: Orijinal + geleneksel artırma + DCGAN görüntüleri ile model eğitilir.
-
Beklenen Sonuç: Wu ve arkadaşları (2020), benzer bir yaklaşımla %88'den %94.33'e doğruluk artışı raporlamıştır.
12.10 Özet
| Kavram | Tanımı | Tarımsal Karşılığı |
|---|---|---|
| Veri Artırma | Mevcut veriden yeni örnekler türetme | Mevsimsel kısıtlamayı aşma |
| Geometrik Artırma | Döndürme, aynalama, ölçekleme | Kamera açısı değişkenliği |
| Fotometrik Artırma | Parlaklık, kontrast, renk | Hava ve ışık değişkenliği |
| Mixup | İki görüntüyü karıştırma | Sınıf sınırları yumuşatma |
| CutMix | Bölge kes-yapıştır | Lokalizasyon güçlendirme |
| GAN | Üretici vs ayırt edici | Sentetik hastalık görüntüsü üretme |
| DCGAN | Evrişimsel GAN | Yaprak lezyonu görüntüsü oluşturma |
| CycleGAN | Çift yönlü dönüşüm | Sağlıklı → hasta yaprak dönüşümü |
Temel Çıkarımlar: 1. Tarımda veri kıtlığı en büyük engellerden biridir; veri artırma çoğu zaman gerekir. 2. Geleneksel yöntemler (geometrik + fotometrik) her projede temel olarak uygulanmalıdır. 3. GAN tabanlı yöntemler, özellikle sınıf dengesizliği ve nadir hastalık durumlarında büyük fayda sağlar. 4. DCGAN, domates yaprak hastalığı tespitinde doğruluğu %88'den %94.33'e yükseltmiştir (Wu et al., 2020). 5. CycleGAN, eşleştirilmiş veri gerektirmeden alan dönüşümü sağlar; ancak görüntü kalitesi sınırlıdır. 6. GAN görüntülerinin kalitesinin uzman tarafından da değerlendirilmesi yerinde olur.
Bu ders serisi burada tamamlanmaktadır. Önceki dersler: 07 Sinir Aglari Temelleri | 08-cnn-ve-transfer-öğrenme | 09 Lstm Ve Zaman Serileri | 10 Nesne Tespiti Yolo | 11 Segmentasyon Unet