Convolution
Bilgisayarlı görü ve derin öğrenmede evrişimin temellerini keşfet. Çekirdeklerin ve özellik haritalarının gerçek zamanlı görevler için Ultralytics YOLO26'yı nasıl güçlendirdiğini öğren.
Evrişim, modern bilgisayarlı görü (CV) ve derin öğrenme (DL) sistemlerinin temel yapı taşı olarak görev yapan temel bir matematiksel işlemdir. Görüntü işleme bağlamında evrişim, önemli özelliklerden oluşan bir harita oluşturmak için genellikle çekirdek olarak adlandırılan küçük bir filtrenin giriş görüntüsü üzerinde kaydırılmasını içerir. Bu işlem, yapay zeka (AI) modellerinin insan müdahalesi olmadan kenarlar, dokular ve şekiller gibi örüntüleri otomatik olarak öğrenip tanımlamasını sağlar. Genellikle manuel özellik çıkarımı gerektiren geleneksel makine öğrenmesinin (ML) aksine evrişim, ağların görsel verileri basit çizgilerden başlayıp yüzler veya araçlar gibi karmaşık nesnelere ilerleyen hiyerarşik bir anlayış geliştirmesini sağlar.
Evrişim Nasıl Çalışır#
İşlem, bir filtrenin giriş verileri üzerinde gezdirilmesi, eleman bazında çarpma yapılması ve sonuçların her konum için tek bir değer üretmek üzere toplanmasıyla gerçekleşir. Bu çıktı, özellik haritası olarak bilinir.
- Çekirdek: Belirli özellikleri algılayan küçük bir sayı matrisi (ağırlıklar)dır. Örneğin bir Sobel operatörü, dikey veya yatay kenarları algılamak için kullanılan belirli bir çekirdek türüdür.
- Kayan Pencere: Çekirdek, görüntü üzerinde "stride" adı verilen tanımlı bir adım boyutuyla hareket eder. Bu uzamsal filtreleme işlemi, görüntüleri anlamak için kritik olan pikseller arasındaki ilişkiyi korur.
- Katman Hiyerarşisi: Evrişimli Sinir Ağları (CNNs) gibi derin mimarilerde ilk katmanlar düşük seviyeli ayrıntıları yakalarken daha derin katmanlar bunları yüksek seviyeli kavramlarda birleştirir.
Evrişim ve İlgili Kavramlar#
Evrişimi tam olarak kavramak için onu sinir ağı (NN) literatüründe sıkça karşılaşılan benzer terimlerden ayırmak faydalıdır:
- Çapraz Korelasyon ve Evrişim: Matematiksel olarak gerçek evrişim, çekirdeğin uygulanmadan önce ters çevrilmesini içerir. Ancak PyTorch kütüphanesi dahil çoğu derin öğrenme çatısı, çekirdeği ters çevirmeden kaydırma işlemi olan çapraz korelasyonu uygular, ancak bunu "evrişim" olarak adlandırır; çünkü ağırlıklar eğitim sırasında öğrenilir ve bu da ters çevirme ayrımını performans açısından önemsiz hale getirir.
- Evrişim ve Dikkat: Evrişim bilgileri yerel olarak işlerken (komşu pikseller), dikkat mekanizması bir modelin görüntünün uzak bölümleri arasında eş zamanlı olarak ilişki kurmasını sağlar. YOLO26 gibi modern mimariler, dikkat katmanları hesaplama açısından daha ağır olabildiğinden [gerçek zamanlı çıkarım](https://ultralytics-translation-2.invalid hızlarını korumak için genellikle yüksek düzeyde optimize edilmiş evrişimli katmanlardan yararlanır.
Gerçek Dünya Uygulamaları#
Evrişimin verimliliği, güçlü algılama sistemlerine güç vererek yapay zekanın çeşitli sektörlerde devrim yaratmasını sağlamıştır:
-
Tıbbi Tanı: Sağlık Hizmetlerinde Yapay Zeka alanında evrişim, yüksek çözünürlüklü MRI taramalarının analizine yardımcı olur. Anormallikleri öne çıkarmak üzere tasarlanmış özel çekirdekler kullanıldığında modeller, tümörlerin veya kırıkların erken belirtilerini insan uzmanlarınkiyle yarışan bir doğrulukla tespit edebilir.
-
Otonom Navigasyon: Sürücüsüz araçlar gerçek zamanlı nesne tespiti için evrişime güvenir. Araç hareket ederken evrişimli katmanlar video akışlarını işleyerek yayaları, şerit işaretlerini ve trafik levhalarını anında tanımlar; bu, Otomotivde Yapay Zeka güvenliğinin kritik bir bileşenidir.
Ultralytics ile Python Örneği#
Python kullanarak son teknoloji modeller içindeki evrişimli katmanları inceleyebilirsin. Aşağıdaki örnek YOLO26 modelini yükler ve ilk katmanının torch.nn aracılığıyla uygulanan standart bir evrişim işlemini kullandığını doğrular.
import torch.nn as nn
from ultralytics import YOLO
# Load the latest YOLO26 model
model = YOLO("yolo26n.pt")
# Access the first layer of the model's backbone
first_layer = model.model.model[0]
# Verify it is a Convolutional layer
if isinstance(first_layer.conv, nn.Conv2d):
print("Success: The first layer is a standard convolution.")
print(f"Kernel size: {first_layer.conv.kernel_size}")Evrişim Edge AI İçin Neden Önemlidir?#
Evrişimli işlemler yüksek düzeyde optimize edilebilir; bu da onları hesaplama kaynaklarının sınırlı olduğu Edge AI dağıtımları için ideal hale getirir. Aynı çekirdek görüntünün tamamında paylaşıldığından (parametre paylaşımı), model eski tamamen bağlı mimarilere kıyasla önemli ölçüde daha az bellek gerektirir. Bu verimlilik, gelişmiş modellerin akıllı telefonlarda ve IoT cihazlarında çalışmasını sağlar.
Bu işlemleri özel veri kümelerinde kullanmak isteyen ekipler için Ultralytics Platformu, karmaşık altyapıyı yönetmeden görüntülere açıklama eklemek ve evrişim tabanlı modelleri eğitmek için sorunsuz bir ortam sağlar. Transfer öğrenimi kullanarak önceden eğitilmiş evrişim ağırlıklarını, yeni nesneleri çok az eğitim verisiyle tanıyacak şekilde ince ayarlayabilirsin.









