Self-Attention
Derin öğrenmede öz-dikkat (self-attention) temellerini keşfet. Sorgu, Anahtar ve Değer vektörlerinin üstün yapay zeka için Transformer'ları ve Ultralytics YOLO26'yı nasıl güçlendirdiğini öğren.
Self-attention (öz-dikkat), modellerin bir girdi dizisindeki farklı öğelerin birbirine göre önemini tartmasını sağlayan derin öğrenmedeki temel bir mekanizmadır. Verileri sırayla işleyen veya yalnızca yerel komşuluklara odaklanan geleneksel mimarilerin aksine öz-dikkat, bir neural network ağının tüm bağlamı aynı anda incelemesine olanak tanır. Bu yetenek, sistemlerin bir cümledeki kelimeler veya bir görüntüdeki farklı bölgeler gibi verilerin uzak bölümleri arasındaki karmaşık ilişkileri tanımlamasına yardımcı olur. generative AI ve modern algılama sistemlerinde büyük ilerlemeler sağlayan Transformer mimarisinin çekirdek yapı taşı olarak hizmet eder.
Öz-Dikkat Nasıl Çalışır#
Mekanizma, her girdi özelliğine genellikle "attention score" (dikkat puanı) adı verilen bir ağırlık atayarak bilişsel odaklanmayı taklit eder. Bu puanları hesaplamak için model, tipik olarak embeddings olarak temsil edilen girdi verilerini üç farklı vektöre dönüştürür: Query, Key ve Value.
- Sorgu (Q): Dizinin geri kalanından ilgili bağlamı arayan mevcut öğeyi temsil eder.
- Anahtar (K): Sorgunun eşleştirildiği dizideki her bir öğe için bir etiket veya tanımlayıcı görevi görür.
- Değer (V): Toplanacak olan öğenin gerçek bilgi içeriğini içerir.
Model, uyumluluğu belirlemek için bir öğenin Query değerini diğer tüm öğelerin Key değerleriyle karşılaştırır. Bu uyumluluk puanları, olasılığa benzer ağırlıklar oluşturmak için bir softmax fonksiyonu kullanılarak normalleştirilir. Bu ağırlaklar daha sonra Values üzerine uygulanarak bağlam açısından zengin bir temsil oluşturur. Bu süreç, Large Language Models (LLMs) ve görme sistemlerinin gürültüyü filtrelerken önemli bilgilere öncelik vermesini sağlar.
Gerçek Dünya Uygulamaları#
Öz-dikkat mekanizmasının çok yönlülüğü, Artificial Intelligence (AI) alanının çeşitli alanlarında yaygın olarak benimsenmesine yol açmıştır.
- Natural Language Processing (NLP): machine translation gibi görevlerde öz-dikkat, zamirleri kendi göndergeleriyle ilişkilendirerek belirsizliği giderir. Örneğin, "The animal didn't cross the street because it was too tired" cümlesinde model, "it" kelimesini "street" yerine "animal" ile güçlü bir şekilde ilişkilendirmek için öz-dikkati kullanır. Bu bağlamsal farkındalık, Google Translate gibi araçlara güç sağlar.
- Global Image Context: Computer Vision (CV) alanında, Vision Transformer (ViT) gibi mimariler görüntüleri parçalara ayırır ve sahneyi küresel olarak anlamak için öz-dikkat uygular. Bu, bir nesneyi tanımlamanın çevresini anlamaya dayandığı karmaşık ortamlarda object detection için hayati önem taşır.
İlgili Terimlerin Ayrıştırılması#
Benzer kavramlarla birlikte sıklıkla tartışılsa da, bu terimlerin farklı teknik tanımları vardır:
- Attention Mechanism: Modellerin verilerin belirli bölümlerine odaklanmasını sağlayan geniş teknik kategorisi. Modelin farklı bir diziyi (kodlayıcı girdisi gibi) sorgulamak için bir dizi (kod çözücü çıktısı gibi) kullandığı Cross-Attention'ı kapsar.
- Öz-Dikkat: Sorgu, Anahtar ve Değerin hepsinin aynı girdi dizisinden kaynaklandığı özel bir dikkat türüdür. Tek bir veri kümesi içindeki içsel bağımlılıkları öğrenmek için tasarlanmıştır.
- Flash Attention: Matematiksel çıktıyı değiştirmeden öz-dikkat hesaplamasını GPUs üzerinde önemli ölçüde daha hızlı ve daha bellek verimli hale getiren Stanford University araştırmacıları tarafından geliştirilmiş bir optimizasyon algoritmasıdır.
Kod Örneği#
Aşağıdaki Python kod parçacığı, ultralytics paketinde yer alan Transformer tabanlı bir nesne dedektörü olan RTDETR öğesinin nasıl kullanılacağını gösterir. Standart evrişimli ağların aksine bu model, görsel özellikleri işlemek için büyük ölçüde öz-dikkate güvenir.
from ultralytics import RTDETR
# Load the RT-DETR model which utilizes self-attention for detection
model = RTDETR("rtdetr-l.pt")
# Perform inference on an image to detect objects with global context
# Self-attention helps the model understand relationships between distant objects
results = model("https://ultralytics.com/images/bus.jpg")
# Print the number of objects detected
print(f"Detected {len(results[0].boxes)} objects using Transformer attention.")Evrim ve Gelecekteki Etki#
Öz-dikkat, daha önceki Recurrent Neural Networks (RNNs) modelini engelleyen vanishing gradient problemini etkili bir şekilde çözerek devasa foundation models modellerinin eğitilmesini sağlamıştır. Oldukça etkili olmasına rağmen, standart öz-dikkat mekanizmasının hesaplama maliyeti dizi uzunluğuyla birlikte karesel olarak artar. Bunu ele almak için mevcut araştırmalar verimli doğrusal dikkat mekanizmalarına odaklanmaktadır.
Ultralytics, bu gelişmeleri üstün real-time inference için CNN'lerin hızı ile dikkatin bağlamsal gücünü birleştiren YOLO26 gibi son teknoloji modellere entegre eder. Bu optimize edilmiş modeller, yeni nesil akıllı uygulamalar geliştiren geliştiriciler için iş akışını kolaylaştırarak Ultralytics Platform aracılığıyla kolayca eğitilebilir ve dağıtılabilir.






