Bilgisayar görme ve derin öğrenmede konvolüsyonun temellerini keşfedin. Çekirdekler ve özellik haritalarının Ultralytics gerçek zamanlı görevler için nasıl güçlendirdiğini öğrenin.
Konvolüsyon, modern bilgisayar görme (CV) ve derin öğrenme (DL) sistemlerinin temel yapı taşı olan temel bir matematiksel işlemdir. Görüntü işleme bağlamında, konvolüsyon, önemli özelliklerin bir haritasını 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 süreç, yapay zeka (AI) modellerinin insan müdahalesi olmadan kenarlar, dokular ve şekiller gibi kalıpları otomatik olarak öğrenmesini ve tanımlamasını sağlar. Genellikle manuel özellik çıkarma gerektiren geleneksel makine öğrenimi (ML) 'nden farklı olarak, konvolüsyon ağların görsel verileri basit çizgilerden başlayarak yüzler veya araçlar gibi karmaşık nesnelere kadar hiyerarşik bir anlayışla anlamasını sağlar.
İşlem, giriş verileri üzerinde bir filtre uygulayarak, eleman bazında çarpma işlemi gerçekleştirerek ve sonuçları toplayarak her konum için tek bir değer üretir. Bu çıktı, özellik haritası olarak bilinir.
Konvolüsyonu tam olarak kavramak için, onu sinir ağı (NN) literatüründe sıklıkla karşılaşılan benzer terimlerden ayırmak yararlıdır: * Fourier dönüşümü: Bir sinyalin tüm frekans bileşenlerini içeren bir fonksiyonun zamanla değişen bir fonksiyonun fonksiyonu.
Konvolüsyonun verimliliği, yapay zekanın sağlam algılama sistemlerini güçlendirerek çeşitli endüstrilerde devrim yaratmasını sağlamıştır: :
Python kullanarak en son teknolojiye sahip modellerdeki evrişimli katmanları inceleyebilirsiniz. Aşağıdaki örnek,
YOLO26 model ve ilk katmanının,
standart bir evrişimsel işlem kullandığını doğrular. Bu işlem, torch.nn.
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}")
Konvolüsyonel işlemler yüksek oranda optimize edilebilir olduğundan, hesaplama kaynaklarının sınırlı olduğu Edge AI uygulamaları için idealdir. Aynı çekirdek tüm görüntüde paylaşıldığından (parametre paylaşımı), model eski tam bağlantılı mimarilere göre önemli ölçüde daha az bellek gerektirir. Bu verimlilik, gelişmiş modellerin akıllı telefonlarda ve IoT cihazlarında çalıştırılmasını sağlar.
Özel veri kümeleri için bu işlemlerden yararlanmak isteyen ekipler için Ultralytics , karmaşık altyapıyı yönetmeden görüntüleri açıklamak ve konvolüsyon tabanlı modelleri eğitmek için sorunsuz bir ortam sağlar. Transfer öğrenimini kullanarak, önceden eğitilmiş konvolüsyon ağırlıklarını ince ayar yaparak, minimum eğitim verisiyle yeni nesneleri tanıyabilirsiniz.