EfficientNet nedir? Kısa bir genel bakış
EfficientNet mimarisini ve bileşik ölçeklendirme yaklaşımını anla! Üst düzey görüntü sınıflandırma ve segmentasyon verimliliği için EfficientNet B0-B7'yi keşfet.

2019'da Google AI araştırmacıları, görüntülerdeki nesneleri ve kalıpları tanımak için tasarlanmış, son teknoloji bir bilgisayarlı görü modeli olan EfficientNet'i tanıttı. Öncelikle, bir görüntünün önceden tanımlanmış kategorilerden birine atanmasını içeren görüntü sınıflandırma için tasarlanmıştı. Ancak günümüzde EfficientNet; nesne tespiti, segmentasyon ve transfer öğrenimi gibi daha karmaşık görevler için de omurga görevi görüyor.
EfficientNet'ten önce bu tür makine öğrenimi ve görsel yapay zeka modelleri, daha fazla katman ekleyerek veya bu katmanların boyutunu artırarak doğruluğu iyileştirmeye çalışıyordu. Katmanlar, verileri işleyerek kalıpları öğrenen ve doğruluğu artıran bir sinir ağı modelindeki (insan beyninden esinlenen bir derin öğrenme modeli türü) adımlardır.
Bu değişiklikler bir ödünleşim yarattı: Geleneksel yapay zeka modelleri daha büyük ve yavaş hale gelirken, gereken işlem gücündeki önemli artışa kıyasla ek doğruluk çoğu zaman minimum düzeyde kaldı.
EfficientNet farklı bir yaklaşım benimsedi. Derinliği (katman sayısı), genişliği (her katmandaki birim sayısı) ve görüntü çözünürlüğünü (girdi görüntülerinin ayrıntı düzeyi) dengeli bir şekilde birlikte artırdı. Bileşik ölçekleme adı verilen bu yöntem, mevcut işlem gücünün tamamını güvenilir biçimde kullanır. Sonuç, ResNet veya DenseNet gibi eski modellerden daha iyi performans gösterebilen, daha küçük ve hızlı bir modeldir.
Günümüzde Ultralytics YOLO11 gibi daha yeni bilgisayarlı görü modelleri daha yüksek doğruluk, hız ve verimlilik sunuyor. Buna rağmen EfficientNet, birçok gelişmiş mimarinin tasarımını etkileyen önemli bir kilometre taşı olmaya devam ediyor.
Bu makalede EfficientNet'in nasıl çalıştığını, onu benzersiz kılan özellikleri ve bilgisayarlı görü alanında neden hâlâ önemli olduğunu ele alarak beş dakika içinde özetleyeceğiz. Hadi başlayalım!
EfficientNet nedir?#
EfficientNet tasarlanmadan önce çoğu görüntü tanıma modeli, daha fazla ayrıntı yakalamak için katmanlarını ayarlayarak veya girdi görüntüsünün boyutunu artırarak doğruluğu iyileştiriyordu. Bu stratejiler sonuçları iyileştirse de modelleri daha ağır ve daha fazla kaynak gerektirir hale getiriyordu. Bu da daha fazla bellek ve daha iyi donanım gerektirdikleri anlamına geliyordu.
EfficientNet, tek tek katmanları değiştirmek yerine bileşik ölçekleme adı verilen bir yöntemle derinliği, genişliği ve görüntü çözünürlüğünü birlikte ölçeklendirir. Bu yaklaşım, modelin herhangi bir unsuru aşırı yüklemeden verimli bir şekilde büyümesini sağlar.
EfficientNet mimarisi, her biri daha küçük modüllerden oluşturulmuş bir dizi blok aracılığıyla görüntüleri işler. Her bloktaki modül sayısı modelin boyutuna bağlıdır.

Şekil 1. EfficientNet'in yapı taşları. (Kaynak)
Daha küçük sürümler daha az modül kullanırken daha büyük sürümlerde modüller daha sık tekrarlanır. Bu esnek tasarım, EfficientNet'in mobil cihazlardan büyük ölçekli sistemlere kadar çok çeşitli uygulamalarda yüksek doğruluk ve verimlilik sunmasını sağlar.
Bileşik ölçekleme nasıl çalışır?#
Bileşik ölçekleme yöntemi, bir modelin derinliğini, genişliğini ve görüntü çözünürlüğünü artırırken bunları dengede tutar. Bu sayede işlem gücünü verimli bir şekilde kullanmak mümkün olur. Seri, diğer tüm sürümlerin temelini oluşturan EfficientNet-B0 adlı daha küçük bir temel modelle başlar.
B0'dan itibaren modeller EfficientNet-B1 ile EfficientNet-B7 arasında adlandırılan daha büyük varyantlara ölçeklenir. Her adımda ağ ek katmanlar kazanır, kanal sayısını (işleme için kullanılan birimler) artırır ve daha yüksek çözünürlüklü girdi görüntülerini işler. Her adımdaki büyüme miktarı, bileşik katsayı adı verilen bir parametreyle belirlenir. Bu parametre, derinliğin, genişliğin ve çözünürlüğün bağımsız olarak değil, sabit oranlarda artmasını sağlar.

Şekil 2. Bileşik ölçekleme bir modelin genişliğini, derinliğini ve görüntü çözünürlüğünü artırır. (Kaynak)
EfficientNet mimarisi#
Şimdi EfficientNet'in mimarisine göz atalım.
EfficientNet, mobil ve gömülü cihazlar için optimize edilmiş hafif bir bilgisayarlı görü modeli olan MobileNetV2 üzerine kuruludur. Temelinde, standart bir evrişim gibi görüntü verilerini işleyen ancak daha az hesaplama gerektiren özel bir katman olan Mobil Ters Darboğaz Evrişimi (MBConv) bloğu bulunur. Bu blok, modeli hem hızlı hem de bellek açısından daha verimli hale getirir.
MBConv bloklarının her birinin içinde sıkıştırma ve uyarım (SE) modülü bulunur. Bu modül, ağdaki farklı kanalların gücünü ayarlar. Önemli kanalların gücünü artırırken diğerlerinin gücünü azaltır. Modül, ağın bir görüntüdeki en önemli özelliklere odaklanmasına ve geri kalanları göz ardı etmesine yardımcı olur. EfficientNet modeli ayrıca, ağın kalıpları öğrenmesine yardımcı olan Swish aktivasyon işlevini (ağın kalıpları öğrenmesine yardımcı olan matematiksel bir işlev) kullanır; bu da görüntülerdeki kalıpları eski yöntemlere göre daha iyi tespit etmesine yardımcı olur.
Bunun yanı sıra model, eğitim sırasında ağ içindeki bazı bağlantıların rastgele kapatıldığı DropConnect'i kullanır. Bu stokastik düzenlileştirme yöntemi (modelin genelleme yapmak yerine eğitim verilerini ezberlemesini önleyen bir rastgeleleştirme tekniği), ağı daha sağlam özellik temsilleri (verilerdeki daha güçlü ve genel kalıplar) öğrenmeye zorlayarak aşırı uyumu azaltır; bu temsiller görülmemiş verilere daha iyi aktarılır.

Şekil 3. EfficientNet-B0 mimarisi (Kaynak)
EfficientNet model varyantlarına kısa bir genel bakış#
EfficientNet modellerinin nasıl çalıştığını artık daha iyi anladığımıza göre farklı model varyantlarını ele alalım.
EfficientNet modelleri, hız ve doğruluğu dengeleyen temel sürüm B0'dan başlayarak B0'dan B7'ye kadar ölçeklenir. Her sürüm derinliği, genişliği ve görüntü çözünürlüğünü artırarak doğruluğu iyileştirir. Ancak B1 ve B2'den yüksek performanslı B6 ve B7'ye kadar daha fazla işlem gücü de gerektirir.
EfficientNet-B3 ve EfficientNet-B4 modelleri daha büyük görüntüler için denge sunarken B5, hassasiyet gerektiren karmaşık veri kümeleri için sıklıkla tercih edilir. Bu modellerin ötesindeki en yeni model olan EfficientNet V2, eğitim hızını artırabilir, küçük veri kümelerini daha iyi işleyebilir ve modern donanım için optimize edilmiştir.
EfficientNet uygulamaları#
EfficientNet, diğer birçok modele kıyasla daha az bellek ve işlem gücü kullanırken doğru sonuçlar üretebilir. Bu da onu bilimsel araştırmalardan insanların günlük kullandığı ürünlere kadar pek çok alanda kullanışlı kılar.
Tıbbi görüntü analizi#
Akciğerlerin BT taramaları gibi tıbbi görüntüler, doğru teşhis için kritik önem taşıyan ince ayrıntılar içerir. Yapay zeka modelleri, insanların tespit etmesinin zor olabileceği kalıpları ortaya çıkarmak için bu görüntülerin analizine yardımcı olabilir. EfficientNet'in bu amaçla uyarlanmış sürümlerinden biri, özellikle tıbbi görüntü analizi için tasarlanmış Tıbbi Yapay Zeka için Açık Ağ (MONAI) EfficientNet'tir.
Araştırmacılar, EfficientNet'in mimarisini temel alarak akciğer BT taramalarını tümörleri tespit etmek üzere sınıflandıran bir model olan Lung-EffNet'i de geliştirdi. Model, tümörleri iyi huylu, kötü huylu veya normal olarak kategorilere ayırabilir ve deneysel ortamlarda bildirilen yüzde 99'un üzerinde doğruluk elde etmiştir.

Şekil 4. Lung-EffNet kullanılarak tümörlerin görüntü sınıflandırması. (Kaynak)
Gerçek zamanlı nesne tespiti#
Nesne tespiti, bir görüntüdeki nesneleri bulma ve konumlarını belirleme sürecidir. Güvenlik sistemleri, otonom araçlar ve dronlar gibi uygulamaların önemli bir parçasıdır.
EfficientNet, görüntülerden özellikleri çıkarmak için çok verimli bir yöntem sunduğu için bu alanda önemli hale geldi. Derinliği, genişliği ve çözünürlüğü ölçekleme yöntemi, modellerin çok ağır veya yavaş olmadan nasıl doğru olabileceğini gösterdi. Bu nedenle EfficientDet gibi birçok tespit sistemi EfficientNet'i omurga olarak kullanır.
Ultralytics YOLO11 gibi daha yeni modeller de hızı doğrulukla birleştirme hedefini paylaşır. Verimli modellere yönelik bu eğilim, EfficientNet gibi mimarilerden gelen fikirlerden güçlü biçimde etkilenmiştir.
EfficientNet'in artıları ve eksileri#
EfficientNet'i bilgisayarlı görü projelerinde kullanmanın bazı avantajları şunlardır:
- Daha az parametreyle yüksek doğruluk: EfficientNet, ResNet veya DenseNet gibi eski modellere benzer ya da daha iyi doğruluk sunabilir. Bununla birlikte daha az parametre kullanır; bu da eğitimin daha hızlı olmasını ve dağıtımın daha kolay gerçekleşmesini sağlar.
- Ölçeklenebilir model ailesi: B0'dan B7'ye kadar, temel ağı değiştirmeden donanımına ve hassasiyet gereksinimlerine uygun bir sürüm seçebilirsin.
- Transfer öğrenimi için uygun: EfficientNet, önceden eğitilmiş bir modelin özel bir görev için yeniden eğitilmesi süreci olan transfer öğreniminde güvenilir model performansı sunabilir. Çeşitli bilgisayarlı görü görevleri için omurga olarak çalışabilir. Ayrıca ince ayar yapıldığında da güçlü sonuçlar göstermiştir. Örneğin, yaygın olarak kullanılan bir görüntü sınıflandırma veri kümesi olan CIFAR-100 üzerinde, önceki modellere kıyasla önemli ölçüde daha az parametreyle son teknoloji doğruluk elde etmiştir.
EfficientNet kullanmanın birçok avantajı olsa da göz önünde bulundurman gereken bazı sınırlamalar şunlardır:
- Daha fazla bellek gerektirir: EfficientNet-B6 ve EfficientNet-B7 gibi sürümler çok miktarda GPU belleği gerektirir.
- ImageNet için ayarlanmış ölçekleme: Ölçekleme ayarları ImageNet veri kümesi için tasarlanmıştır; bu nedenle çok farklı veri kümelerinde ince ayar yapılmadan performans düşebilir. Bu durum özellikle küçük veri kümeleri için geçerlidir; çünkü EfficientNet'in mimarisi ve ölçeklemesi, derinliğini ve genişliğini haklı çıkaracak yeterli veriyi sağlayan ImageNet gibi büyük ve çeşitli bir veri kümesi için tasarlanmıştır.
- Bazı donanımlarda daha yavaştır: EfficientNet, modern donanımda verimlilik sağlayacak şekilde tasarlanmış MBConv adlı katmanları kullanır. Daha eski GPU'larda veya CPU'larda bu katmanlar daha yavaş çalışabilir.
Önemli çıkarımlar#
EfficientNet, derinliği, genişliği ve görüntü çözünürlüğünü dengede tutarak bilgisayarlı görü modellerinin nasıl büyüdüğünü değiştirdi. Hâlâ önemli bir modeldir ve daha yeni mimarileri de etkilemiştir. Özellikle bilgisayarlı görü tarihindeki anlamlı yerini korumaktadır.
Yapay zeka hakkında daha fazla bilgi edinmek için topluluğumuza ve GitHub depomuza katıl. Sağlık hizmetlerinde yapay zeka ve otomotivde bilgisayarlı görü hakkında bilgi edinmek için çözüm sayfalarımıza göz at. Lisanslama seçeneklerimizi keşfet ve bugün bilgisayarlı görü ile geliştirmeye başla!









