Convolutional Neural Network (CNN)
Konvolüsyonel Sinir Ağlarının (CNN'ler) modern bilgisayarlı görüye nasıl güç verdiğini keşfet. Katmanlar, uygulamalar ve gerçek zamanlı yapay zeka için Ultralytics YOLO26'yı nasıl çalıştıracağın hakkında bilgi edin.
Evrişimli Sinir Ağı (CNN), özellikle dijital görüntüler gibi ızgara benzeri bir topolojiye sahip verileri işlemek için tasarlanmış özel bir derin öğrenme mimarisidir. Görsel korteksin biyolojik yapısından esinlenen CNN'ler, girdi verilerindeki uzamsal ilişkileri koruma konusunda benzersiz bir yeteneğe sahiptir. Bir görüntüyü uzun bir sayı listesine dönüştüren geleneksel sinir ağlarının aksine CNN'ler, basit kenarlardan ve dokulardan karmaşık şekillere ve nesnelere kadar özellik hiyerarşilerini otomatik olarak öğrenmek için bir görüntünün küçük, örtüşen bölgelerini analiz eder. Bu yetenek, onları modern bilgisayarlı görü (CV) sistemlerinin temel teknolojisi haline getirir.
Link to this sectionEvrişimli Sinir Ağları Nasıl Çalışır#
Bir CNN'in gücü, karmaşık bir görüntüyü, iyi bir tahmin elde etmek için kritik olan özellikleri kaybetmeden işlenmesi daha kolay bir forma indirgeme yeteneğinde yatar. Bu, giriş hacmini bir çıktı sınıfına veya değerine dönüştüren belirgin katmanlardan oluşan bir işlem hattı aracılığıyla gerçekleştirilir:
- Evrişim Katmanı: Bu, temel yapı taşıdır. Giriş görüntüsü üzerinde bir el feneri gibi kayan bir dizi öğrenilebilir filtre (veya çekirdek) kullanır. Filtre her konumda evrişim adı verilen matematiksel bir işlem gerçekleştirerek yatay çizgiler veya renk gradyanları gibi belirli desenleri vurgulayan bir öznitelik haritası oluşturur.
- Aktivasyon Fonksiyonu: Evrişimden sonra çıktıya doğrusal olmayan bir fonksiyon uygulanır. En yaygın tercih, negatif piksel değerlerini sıfıra dönüştüren ReLU (Doğrultulmuş Doğrusal Birim)'dür. Bu, doğrusallık dışı bir durum yaratarak ağın basit doğrusal ilişkilerin ötesinde karmaşık desenleri öğrenmesini sağlar.
- Havuzlama Katmanı: Alt örnekleme olarak da bilinen bu katman, öznitelik haritalarının boyutsallığını azaltır. Maksimum havuzlama gibi teknikler, bir bölgedeki yalnızca en önemli özellikleri (en yüksek değerleri) tutar; bu da hesaplama yükünü azaltır ve aşırı öğrenmeyi (overfitting) önlemeye yardımcı olur.
- Tam Bağlantılı Katman: Son aşamada, işlenmiş özellikler düzleştirilir ve standart bir sinir ağına (NN) beslenir. Bu katman, önceki katmanlar tarafından tanımlanan yüksek seviyeli özellikleri kullanarak "kedi" veya "köpek" gibi nihai bir sınıflandırma veya tahmin yapar.
Link to this sectionGerçek Dünya Uygulamaları#
CNN'ler, görsel görevleri insanüstü bir doğrulukla otomatikleştirerek endüstrileri dönüştürmüştür.
- Tıbbi Teşhis: Sağlık hizmetlerinde CNN'ler, tıbbi taramalardaki anormallikleri insan gözünden daha hızlı tanımlayarak radyologlara yardımcı olur. Örneğin, derin öğrenme modelleri tümörlerin veya kırıkların erken belirtilerini tespit etmek için MR ve BT taramalarını analiz eder. Radyolojide yapay zeka üzerine yapılan araştırmalar, bu araçların teşhis tutarlılığını ve hızını nasıl artırdığını vurgulamaktadır.
- Otonom Sistemler: Sürücüsüz araçlar, çevrelerini algılamak için büyük ölçüde CNN'lere güvenir. YOLO26 gibi modeller, yayaları, trafik işaretlerini ve diğer araçları tanımlayarak anlık sürüş kararları vermek için gerçek zamanlı nesne tespiti gerçekleştiren verimli CNN omurgalarını kullanır.
Link to this sectionCNN'ler ve Vision Transformer'lar (ViT)#
CNN'ler uzun süredir görüntü görevleri için standart olsa da, Vision Transformer (ViT) adı verilen daha yeni bir mimari ortaya çıkmıştır.
- CNN'ler, görüntüleri yerel özellikleri kullanarak işler ve "tümevarımsal önyargıları" (yakındaki piksellerin ilişkili olduğunu varsaymaları) nedeniyle daha küçük veri setlerinde oldukça verimlidir. Uç cihazlarda gerçek zamanlı çıkarım gerektiren senaryolarda mükemmel sonuç verirler.
- ViT'ler, görüntüleri yamalara ayırır ve bunları küresel öz dikkat (self-attention) mekanizmalarını kullanarak işler. Bu, bir görüntüdeki uzun menzilli bağımlılıkları yakalamalarına olanak tanır ancak etkili bir şekilde eğitilmeleri genellikle büyük veri setleri ve daha fazla hesaplama gücü gerektirir.
Link to this sectionUygulama Örneği#
Modern kütüphaneler, CNN tabanlı modelleri kullanmayı oldukça kolaylaştırır. ultralytics paketi, hızlı çıkarım için yüksek düzeyde optimize edilmiş CNN mimarilerine sahip YOLO26 gibi en son teknoloji modellere erişim sağlar.
Aşağıdaki örnek, önceden eğitilmiş bir CNN modelinin nasıl yükleneceğini ve nasıl tahmin yapılacağını göstermektedir:
from ultralytics import YOLO
# Load a YOLO26 model, which uses an advanced CNN architecture
model = YOLO("yolo26n.pt")
# Run inference on an image to identify objects
results = model("https://ultralytics.com/images/bus.jpg")
# Display the prediction results
results[0].show()Link to this sectionGeliştirme Araçları#
CNN'lerin geliştirilmesi, güçlü bir açık kaynaklı araç ekosistemi tarafından desteklenmektedir. Mühendisler genellikle özel mimariler oluşturmak için PyTorch veya TensorFlow gibi çerçeveleri kullanırlar. Bu kütüphaneler, evrişim ve geriye yayılım (backpropagation) için gereken düşük seviyeli tensör işlemlerini sağlar.
Veri toplamadan dağıtıma kadar bilgisayarlı görü projelerinin yaşam döngüsünü kolaylaştırmak isteyen ekipler için Ultralytics Platform, kapsamlı bir çözüm sunar. Karmaşık iş akışlarını basitleştirerek geliştiricilerin altyapıyı yönetmek yerine iş problemlerini çözmek için CNN'leri uygulamaya odaklanmalarını sağlar. Ayrıca modeller, uç cihazlarda yüksek performanslı dağıtım için ONNX veya TensorRT gibi formatlara aktarılabilir.






