Ultralytics YOLO27: Bekleme listesine katıl.
YOLO'yu lisansla
Ultralytics Sözlüğüne dön

Transformer-XL

Transformer-XL, önceki metin bölümündeki gizli durumları önbelleğe alır ve göreli konumları kullanır; böylece dil modeli bölümler arasında bağlamı korur.

Transformer-XL, önceki parçanın gizli durumlarını önbelleğe alarak ve sonraki parçanın bunlara dikkat etmesini sağlayarak sabit uzunluktaki metin parçaları arasında bağlamı taşıyan bir dönüştürücü dil modelidir. Carnegie Mellon Üniversitesinden ve Google Brain'den Zihang Dai, Zhilin Yang ve çalışma arkadaşları, modeli ACL 2019'da Transformer-XL: Sabit Uzunluktaki Bağlamın Ötesinde Dikkatli Dil Modelleri başlıklı makaleyle tanıttı. Ayrı bağlam pencerelerinden oluşan sabit uzunluklu parçalarla eğitilmiş standart bir dönüştürücü, o anki parçasının başlangıcından öncesini göremez; yazarlar bu sorunu bağlam parçalanması olarak adlandırdı. Transformer-XL, tekrarlayan sinir ağlarından (RNNs) %80 ve standart dönüştürücülerden %450 daha uzun bağımlılıkları öğrendi.

Parça Düzeyinde Tekrarlama#

Model bir parçayı işlerken her katman, önceki parçanın önbelleğe alınmış gizli durumlarını geçerli parçanın durumlarıyla birleştirir. Sorgular yalnızca geçerli parçadan gelirken anahtarlar ve değerler her iki parçayı da kapsar; gradyanlar önbellekte durduğundan parça başına eğitim maliyeti sabit kalır. PyTorch içindeki tek bir dikkat katmanı bu örüntüyü gösterir:

import torch
from torch import nn

torch.manual_seed(0)
seg_len, dim = 4, 16
attn = nn.MultiheadAttention(dim, num_heads=2, batch_first=True)
hidden = torch.randn(1, 3 * seg_len, dim)  # hidden states for three consecutive segments

memory = torch.empty(1, 0, dim)  # nothing is cached before the first segment
for i, segment in enumerate(hidden.split(seg_len, dim=1), start=1):
    # Queries come from the current segment; keys and values also cover the cached one
    context = torch.cat([memory, segment], dim=1)
    out, weights = attn(segment, context, context)
    print(f"Segment {i}: {weights.shape[1]} queries attend over {weights.shape[2]} positions")
    # Cache this segment for the next one; detach() stops gradients as in Transformer-XL
    memory = segment.detach()

İlk parçanın 4 sorgusu yalnızca o parçadaki 4 belirteci görür; sonraki her parçanın sorguları ise kendi 4 belirteciyle önbelleğe alınmış 4 belirteç olmak üzere toplam 8 belirteci görür. Bir parçadaki n katmanı, önceki parçanın n − 1 katmanındaki durumları okuduğundan, erişim her katmanda bir parça daha genişler; parça uzunluğu N ve katman sayısı L için yaklaşık N × L belirtece ulaşır:

Önbellek değerlendirmeyi de hızlandırır. Belirteçleri teker teker tahmin eden standart bir dönüştürücü, her yeni belirteç için pencerenin tamamını yeniden hesaplamak zorundadır. Transformer-XL ise önbelleğe alınmış durumları yeniden kullanır; bu da değerlendirme sırasında onu 1.800 kattan fazla hızlandırmıştır. Ultralytics YOLO26 izleme sistemi de bir betik videoyu model.track() öğesine her seferinde bir kare vererek ilettiğinde aynı parçalanma sorunuyla karşılaşır: persist=True, çağrılar arasında izleyicinin durumunu korur; böylece her nesne kareden kareye aynı kimliği taşır.

Göreli Konumsal Kodlama#

Önbelleğe alınmış durumları yeniden kullanmak, mutlak konumları bozar: Önbelleğe alınmış parçanın ilk belirteci ile geçerli parçanın ilk belirteci aynı konum gömüsünü taşır. Transformer-XL bunun yerine her dikkat puanını sorgu ve anahtarın içeriklerinin yanı sıra aralarındaki uzaklığın sinüzoidal kodlamasına ve tüm konumlar arasında paylaşılan, biri içerik diğeri konum için öğrenilmiş iki yanlılığa göre hesaplar. Puanlar yalnızca uzaklıklara bağlı olduğundan model, değerlendirme sırasında eğitimde gördüğünden daha uzun bir önbelleğe dikkat edebilir. Günümüzdeki büyük dil modellerinin (LLM'ler) çoğunda kullanılan döner konum gömmeleri (RoPE) de dikkat puanlarının göreli konuma bağlı olmasını sağlar.

Sonuçlar ve Etkisi#

Transformer-XL beş kıyaslamada yeni en iyi sonuçlara ulaştı: enwik8'de karakter başına 0,99 bit, text8'de 1,08 bit; WikiText-103'te 18,3, One Billion Word'de 21,8 ve Penn Treebank'te şaşkınlık değeri 54,5; üstelik ince ayar yapılmadı. Yalnızca WikiText-103 üzerinde eğitilen model, binlerce belirteç uzunluğunda, makul ölçüde tutarlı yeni makaleler üretti. Aynı yazarların birçoğunun geliştirdiği XLNet, doğal dil anlama ön eğitimini Transformer-XL mimarisi üzerine kurdu. DeepMind Compressive Transformer ise eski bellekleri atmak yerine sıkıştırarak önbelleği genişletti.

  • Uzun kısa süreli bellek (LSTM): Her belirteçte tek bir gizli durumu günceller; bu nedenle çok eskiden gelen bilginin aradaki her adımdan geçmesi gerekir.
  • Longformer: Pencereli ve küresel dikkat kullanarak 4.096 belirteçlik bir belgenin tamamını yineleme olmadan bir kerede okur.
  • KV önbelleği: Yeniden hesaplanmalarını önlemek için üretim sırasında önceki belirteçlerin anahtarlarını ve değerlerini saklar. Transformer-XL'in belleği eğitimde de kullanılır ve gradyanlar parça sınırında durdurulur.
  • Durum uzayı modelleri (SSM'ler): Tüm geçmişi sabit boyutlu bir duruma sıkıştırır.

Çözümleri keşfet

Sporda bilgisayarlı görü

Sporda bilgisayarlı görü

Ultralytics YOLO'nun oyuncu ve top takibi, performans analitiği, antrenörlük içgörüleri ve sporcu rehabilitasyonuyla spor alanında görsel yapay zekâyı nasıl güçlendirdiğini keşfet.
Daha fazla bilgi edin
Hava görüntüleri için bilgisayarlı görü

Hava görüntüleri için bilgisayarlı görü

İHA ve hava görüntülerini Ultralytics YOLO ile tarım, su ürünleri yetiştiriciliği, koruma çalışmaları ve jeo-uzamsal analiz için gerçek zamanlı içgörülere dönüştür.
Daha fazla bilgi edin
Havacılıkta bilgisayarlı görü

Havacılıkta bilgisayarlı görü

Uçak denetimi, pistteki yabancı madde tespiti, havaalanı yer operasyonları ve kompozit malzeme kusurlarının tespiti için Ultralytics YOLO ile havacılık ve uzay sektöründe bilgisayarlı görü uygula.
Daha fazla bilgi edin
Güvenlikte bilgisayarlı görü

Güvenlikte bilgisayarlı görü

Ultralytics YOLO modelleriyle her sahayı koru. Görsel yapay zekâ; çevre izleme, tehdit tespiti, plaka tanıma ve iş yeri güvenliğini destekler.
Daha fazla bilgi edin
Robotikte bilgisayarlı görü

Robotikte bilgisayarlı görü

Ultralytics YOLO modelleriyle daha akıllı makinelere güç ver. Robotikte görsel yapay zekâ; otonom navigasyonu, algılamayı, nesne takibini ve gerçek zamanlı kontrolü destekler.
Daha fazla bilgi edin
Lojistikte bilgisayarlı görü

Lojistikte bilgisayarlı görü

Ultralytics YOLO modelleriyle lojistiği kolaylaştır. Görüntü yapay zekâsı; paket denetimini, ayrıştırmayı, araç takibini ve gerçek zamanlı depo güvenliği izlemeyi mümkün kılar.
Daha fazla bilgi edin
Perakendede bilgisayarlı görü

Perakendede bilgisayarlı görü

Ultralytics YOLO modelleriyle perakendeyi yeniden tasarla. Görüntü yapay zekâsı; envanter takibini, raf izlemeyi, kuyruk yönetimini ve daha kapsamlı müşteri analizlerini mümkün kılar.
Daha fazla bilgi edin
Sağlık hizmetlerinde bilgisayarlı görü

Sağlık hizmetlerinde bilgisayarlı görü

Ultralytics YOLO modelleriyle sağlık çözümleri geliştir. Sağlık hizmetlerinde görüntü yapay zekâsı; daha hızlı tıbbi görüntüleme, daha akıllı tanı ve hasta takibini mümkün kılar.
Daha fazla bilgi edin
Üretimde bilgisayarlı görü

Üretimde bilgisayarlı görü

Ultralytics YOLO modelleriyle üretimi optimize et. Görsel yapay zekâ; kalite kontrolünü, kusur tespitini, kişisel koruyucu donanım uyumunu ve montaj hattı otomasyonunu destekler.
Daha fazla bilgi edin
Otomotivde bilgisayarlı görü

Otomotivde bilgisayarlı görü

Ultralytics YOLO modelleriyle otomotivde bilgisayarlı görüden yararlan. Görsel yapay zekâ; daha akıllı yollar için yol güvenliğini, sürüş desteğini ve araç otomasyonunu ileri taşır.
Daha fazla bilgi edin
Tarımda bilgisayarlı görü

Tarımda bilgisayarlı görü

Ultralytics YOLO modelleriyle akıllı tarıma görüntü yapay zekâsı kazandır. Daha yüksek ve akıllı verim için mahsul izleme, hayvan takibi ve hassas tarımı destekle.
Daha fazla bilgi edin

Geleceğin yapay zekasını birlikte inşa edelim!

Makine öğreniminin geleceğine yolculuğuna başla