EfficientNet mimarisini ve bileşik ölçeklendirme (compound scaling) sihrini anlayın! Üst düzey görüntü sınıflandırması ve segmentasyon verimliliği için EfficientNet B0-B7'yi keşfedin.

EfficientNet mimarisini ve bileşik ölçeklendirme (compound scaling) sihrini anlayın! Üst düzey görüntü sınıflandırması ve segmentasyon verimliliği için EfficientNet B0-B7'yi keşfedin.
2019'da Google AI'deki araştırmacılar, görüntülerdeki nesneleri ve desenleri tanımak için oluşturulmuş, son teknoloji ürünü bir bilgisayar görüşü modeli olan EfficientNet'i tanıttı. Öncelikle bir görüntüyü önceden tanımlanmış çeşitli kategorilerden birine atamayı içeren görüntü sınıflandırması için tasarlanmıştı. Ancak bugün EfficientNet, nesne algılama, segmentasyon ve transfer öğrenimi gibi daha karmaşık görevler için de bir temel görevi görüyor.
EfficientNet'ten önce, bu tür makine öğrenimi ve Görüntü İşleme Yapay Zeka modelleri, daha fazla katman ekleyerek veya bu katmanların boyutunu artırarak doğruluğu artırmaya çalıştı. Katmanlar, verileri işlemek, kalıpları öğrenmek ve doğruluğu artırmak için insan beyninden ilham alan bir tür derin öğrenme modeli olan bir sinir ağı modelindeki adımlardır.
Bu değişiklikler bir ödünleşme yaratarak, geleneksel yapay zeka modellerini daha büyük ve daha yavaş hale getirirken, ek doğruluk genellikle gereken önemli miktardaki işlem gücüne kıyasla minimaldi.
EfficientNet farklı bir yaklaşım izledi. Derinliği (katman sayısı), genişliği (her katmandaki birim sayısı) ve görüntü çözünürlüğünü (giriş görüntülerinin detay düzeyi) birlikte dengeli bir şekilde artırdı. Bileşik ölçeklendirme adı verilen bu yöntem, mevcut tüm işlem gücünü güvenilir bir şekilde kullanır. Sonuç olarak, ResNet veya DenseNet gibi eski modellere göre daha iyi performans gösterebilen daha küçük ve daha hızlı bir model elde edilir.
Günümüzde, Ultralytics YOLO11 gibi daha yeni bilgisayarla görme modelleri daha fazla doğruluk, hız ve verimlilik sunuyor. Yine de EfficientNet, birçok gelişmiş mimarinin tasarımını etkileyen önemli bir kilometre taşı olmaya devam ediyor.
Bu makalede, EfficientNet'i beş dakikada inceleyeceğiz; nasıl çalıştığını, onu benzersiz kılan şeyleri ve bilgisayarlı görüde neden hala önemli olduğunu ele alacağız. Haydi başlayalım!
EfficientNet tasarlanmadan önce, çoğu görüntü tanıma modeli katmanlarını ayarlayarak veya daha fazla ayrıntı yakalamak için girdi görüntüsü boyutunu artırarak doğruluğu artırıyordu. Bu stratejiler sonuçları iyileştirse de, modelleri daha ağır ve daha talepkar hale getirdi. Bu, daha fazla belleğe ve daha iyi donanıma ihtiyaç duydukları anlamına geliyordu.
EfficientNet, tek tek katmanları değiştirmek yerine, bileşik ölçekleme adı verilen bir yöntem kullanarak derinliği, genişliği ve görüntü çözünürlüğünü birlikte ölçeklendirir. Bu yaklaşım, modelin herhangi bir tek yönünü aşırı yüklemeden verimli bir şekilde büyümesini sağlar.
EfficientNet mimarisi, görüntüleri her biri daha küçük modüllerden oluşturulmuş bir dizi blok aracılığıyla işler. Her bloktaki modül sayısı, model boyutuna bağlıdır.
Daha küçük versiyonlar daha az modül kullanırken, daha büyük versiyonlar modülleri daha sık tekrar eder. 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çeklendirme yöntemi, bir modelin derinliğini, genişliğini ve görüntü çözünürlüğünü genişletir, ancak bunları dengede tutar. Bu, bilgi işlem gücünü verimli bir şekilde kullanmayı mümkün kılar. Seri, diğer tüm sürümler için temel görevi gören EfficientNet-B0 adlı daha küçük bir temel modelle başlar.
Modeller, B0'dan başlayarak EfficientNet-B1'den EfficientNet-B7'ye kadar 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ı, derinlik, genişlik ve çözünürlüğün bağımsız olarak değil, sabit oranlarda artmasını sağlayan bileşik katsayı adı verilen bir parametre tarafından belirlenir.
Şimdi de EfficientNet'in mimarisine bir göz atalım.
Mobil ve gömülü cihazlar için optimize edilmiş hafif bir bilgisayar görüşü modeli olan MobileNetV2 üzerine kurulmuştur. Temelinde, standart bir evrişim gibi görüntü verilerini işleyen ancak daha az hesaplama yapan özel bir katman olan Mobile Inverted Bottleneck Convolution (MBConv) bloğu bulunur. Bu blok, modeli hem hızlı hem de daha fazla bellek verimli hale getirir.
Her bir MBConv bloğunun içinde bir sıkıştırma ve uyarma (SE) modülü bulunur. Bu modül, ağdaki farklı kanalların gücünü ayarlar. Temel kanalların gücünü artırır ve diğerlerinin gücünü azaltır. Modül, ağın bir görüntüdeki en önemli özelliklere odaklanmasına ve geri kalanını göz ardı etmesine yardımcı olur. EfficientNet modeli ayrıca, ağın örüntüleri öğrenmesine yardımcı olan bir matematiksel fonksiyon olan Swish aktivasyon fonksiyonunu kullanır ve bu da görüntüdeki örüntüleri eski yöntemlerden daha iyi tespit etmesine yardımcı olur.
Bunun ötesinde, 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 önlemek için bir rastgeleleştirme tekniği), ağın daha sağlam özellik temsilleri (verilerdeki daha güçlü, daha genel kalıplar) öğrenmesini sağlayarak aşırı öğrenmeyi azaltır ve bu da görülmemiş verilere daha iyi aktarılır.
EfficientNet modellerinin nasıl çalıştığına dair daha iyi bir anlayışa sahip olduğumuza göre, farklı model varyantlarını tartışalım.
EfficientNet modelleri, hız ve doğruluğu dengeleyen temel model olarak 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 artırır. Ancak, B1 ve B2'den yüksek performanslı B6 ve B7'ye kadar daha fazla işlem gücü de gerektirirler.
EfficientNet-B3 ve EfficientNet-B4 modelleri daha büyük görüntüler için bir denge sağlarken, B5 genellikle hassasiyet gerektiren karmaşık veri kümeleri için seçilir. Bu modellerin ötesinde, en son 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, diğer birçok modele göre daha az bellek ve işlem gücü kullanırken doğru sonuçlar üretebilir. Bu, bilimsel araştırmalardan insanların günlük olarak kullandığı ürünlere kadar birçok alanda kullanışlı olmasını sağlar.
Akciğerlerin BT taramaları gibi tıbbi görüntüler, genellikle doğru teşhis için kritik olan 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üleri analiz etmeye yardımcı olabilir. Bu amaçla EfficientNet'in bir uyarlaması, özellikle tıbbi görüntü analizi için tasarlanmış olan MONAI (AI için Tıbbi Açık Ağ) EfficientNet'tir.
EfficientNet'in mimarisi üzerine inşa edilen araştırmacılar, tümörleri tespit etmek için akciğer BT taramalarını sınıflandıran bir model olan Lung-EffNet'i de geliştirdiler. Tümörleri iyi huylu, kötü huylu veya normal olarak sınıflandırabilir ve deneysel ortamlarda %99'un üzerinde bir doğruluk elde ettiği bildirilmiştir.
Nesne tespiti, bir görüntüdeki nesneleri bulma ve konumlarını belirleme işlemidir. Güvenlik sistemleri, sürücüsüz arabalar ve dronlar gibi uygulamaların önemli bir parçasıdır.
EfficientNet, görüntülerden özellikleri çıkarmanın çok verimli bir yolunu sunduğu için bu alanda önemli hale geldi. Derinliği, genişliği ve çözünürlüğü ölçeklendirme yöntemi, modellerin çok ağır veya yavaş olmadan nasıl doğru olabileceğini gösterdi. Bu nedenle EfficientDet gibi birçok algılama sistemi, EfficientNet'i temel omurgası olarak kullanır.
Ultralytics YOLO11 gibi daha yeni modeller, hızı doğrulukla birleştirme hedefini paylaşır. Verimli modellere yönelik bu eğilim, EfficientNet gibi mimarilerden gelen fikirlerden güçlü bir şekilde etkilenmiştir.
İşte EfficientNet'i bilgisayarlı görü projelerinde kullanmanın bazı faydaları:
EfficientNet kullanmanın birçok faydası olmasına rağmen, EfficientNet'in akılda tutulması gereken bazı sınırlamaları şunlardır:
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. Hala önemli bir modeldir ve daha yeni mimarileri de etkilemiştir. Özellikle, bilgisayarlı görü tarihinde anlamlı bir yere sahiptir.
Yapay zeka hakkında daha fazla bilgi edinmek için topluluğumuza ve GitHub depomuza katılın. 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ın. Lisanslama seçeneklerimizi keşfedin ve bilgisayarlı görü ile geliştirmeye bugün başlayın!