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

Prompt Tuning

İstem ayarlama, girdisine eklenen birkaç yumuşak istem vektörünü eğiterek dondurulmuş bir modeli bir göreve uyarlar; böylece tek bir model birçok görevi yerine getirebilir.

İstem ayarı, önceden eğitilmiş bir temel modeli yeni bir göreve uyarlamak için yumuşak istem adı verilen küçük bir vektör kümesini eğitir. Her model ağırlığı sabit kalırken bu vektörler girdinin önüne yerleştirilir. Yumuşak istem, modelin belirteç gömmeleriyle aynı uzayda yer alır; ancak vektörleri geri yayılım yoluyla öğrenilir ve gerçek bir sözcüğe karşılık gelmeleri gerekmez. Google'dan Brian Lester, Rami Al-Rfou ve Noah Constant, yöntemi EMNLP 2021'de sunulan Parametre Verimli İstem Ayarı için Ölçeğin Gücü çalışmasında tanıttı. 11 milyar parametreli T5-XXL modeli için beş belirteçli bir istemin görev başına yalnızca 20.480 parametre gerektirdiğini belirttiler ve modeller milyarlarca parametreyi aştıkça istem ayarının tüm modeli ayarlamayla aynı doğruluğa ulaştığını gösterdiler.

İstem Ayarı Nasıl Çalışır#

Bir büyük dil modeli (LLM) her girdi belirtecini Transformer katmanlarının göreceği bir gömme vektörüne dönüştürür. İstem ayarı bu dizinin başına k ek vektör ekler; Lester ve arkadaşları 1 ile 150 arasındaki uzunlukları test etti ve varsayılan olarak 100 kullandı. Eğitim sırasında görevin kayıp fonksiyonu dondurulmuş ağ boyunca girişe kadar geri yayılır ve optimizasyon algoritması yalnızca istem vektörlerini günceller. Sonuç, görev başına küçük bir tensördür. Modelin kendisi hiç değişmediği için istemi kaldırmak yıkıcı unutma riski olmadan modelin özgün davranışını geri getirir; ayrıca Lester ve arkadaşlarının karma görev çıkarımı adını verdiği bu düzende, dağıtıma alınmış tek bir model kopyası aynı anda birçok göreve hizmet edebilir ve bir toplu işteki her istek kendi yumuşak istemini taşır.

Aşağıdaki PyTorch örneği, Hugging Face Transformers ile alınan sabit GPT-2 modelinde duygu analizine yönelik 8 vektörlü bir yumuşak istemi, dört eğitim incelemesi ve eğitimde kullanılmayan sekiz inceleme üzerinde ayarlar:

import torch
from torch.nn.functional import cross_entropy
from transformers import AutoModelForCausalLM, AutoTokenizer

tokenizer = AutoTokenizer.from_pretrained("gpt2")
model = AutoModelForCausalLM.from_pretrained("gpt2").requires_grad_(False)  # freeze all 124M weights
embed = model.get_input_embeddings()

# Soft prompt: 8 trainable vectors in GPT-2's embedding space, initialized from the word " review"
soft_prompt = torch.nn.Parameter(embed.weight[tokenizer.encode(" review")].repeat(8, 1).clone())
optimizer = torch.optim.Adam([soft_prompt], lr=0.01)
labels = tokenizer.encode(" positive negative")  # token ids for label 0 and label 1

# Reviews alternate between positive (label 0) and negative (label 1)
train = ["Loved every minute.", "A waste of time.", "Great story and acting.", "Boring and slow."]
test = ["What a wonderful film.", "I fell asleep halfway.", "A fantastic ending.", "Terrible dialogue."]
test += ["A joy to watch.", "Dull and predictable.", "Superb from start to end.", "I want my money back."]


def label_scores(text):
    """Score both label tokens after the soft prompt and the review."""
    ids = tokenizer.encode(f"{text} Sentiment:", return_tensors="pt")
    return model(inputs_embeds=torch.cat([soft_prompt[None], embed(ids)], dim=1)).logits[0, -1, labels]


def correct():
    """Count held-out reviews whose higher-scoring label is right."""
    with torch.no_grad():
        return sum(int(label_scores(text).argmax()) == i % 2 for i, text in enumerate(test))


print(f"Held-out reviews correct before tuning: {correct()}/8")
for step in range(30):
    loss = sum(cross_entropy(label_scores(text), torch.tensor(i % 2)) for i, text in enumerate(train))
    optimizer.zero_grad()
    loss.backward()
    optimizer.step()
print(f"After tuning: {correct()}/8, training {soft_prompt.numel():,} of {model.num_parameters():,} parameters")

Önce Held-out reviews correct before tuning: 5/8, ardından After tuning: 7/8, training 6,144 of 124,439,808 parameters çıktısını verir. Dört örnek üzerinde Adam ile yapılan otuz adım yalnızca 6.144 sayıyı, yani modelin %0,005'ini değiştirdi; sabit GPT-2, görülmemiş iki incelemeyi daha doğru sınıflandırdı.

Önek Ayarı ve Görsel İstem Ayarı#

İstem ayarı, parametre verimli ince ayar (PEFT) kapsamındaki sürekli istem yöntemleri ailesine dahildir. Xiang Lisa Li ve Percy Liang'ın önek ayarı, her Transformer katmanının önüne eklenen vektörleri öğrenir; bu vektörler GPT-2 veya BART'ın parametrelerinin yaklaşık %0,1'ini oluşturur ve tablo-metin üretimi ile özetleme görevlerinde tam ince ayarla aynı başarıyı elde etmiştir. İstem ayarı bunu basitleştirerek yalnızca girdi katmanındaki vektörleri öğrenir.

Bu fikir görsel alana da taşınır. Menglin Jia ve çalışma arkadaşlarının geliştirdiği Görsel İstem Ayarı (VPT), öğrenilebilir belirteçleri sabit bir Görme Transformer'ının (ViT) yama belirteçlerinin önüne ekler; parametrelerin %1'inden azını eğitir ve birçok görüntü sınıflandırma ayarında tam ince ayardan daha iyi sonuç verir. Görme-dil modellerinde Kaiyang Zhou ve çalışma arkadaşlarının geliştirdiği Bağlam Optimizasyonu (CoOp), "a photo of a" gibi bir CLIP istemindeki elle yazılmış sözcükleri öğrenilmiş vektörlerle değiştirir. CoOp, 11 veri kümesinde sınıf başına bir veya iki etiketli örnekle elle hazırlanmış istemlerden daha iyi sonuç verdi; sınıf başına 16 örnekle ise ortalama yaklaşık %15 iyileşme sağladı.

Açık sözcük dağarcıklı algılayıcılar benzer biçimde uyarlanır. Ultralytics YOLOE, sınıf adlarını metin istemi gömülerine dönüştürür. Özel veri kümelerine yönelik doğrusal yoklama tarifinde, veri kümesinin sınıf adlarına ait gömüler her sınıflandırma dalının son evrişim katmanında birleştirilir; ardından omurga, boyun ve başın geri kalanı sabit tutulurken yalnızca bu katmanlar eğitilir.

  • İstem mühendisliği: Bir kişi istemi metin olarak yazar; buna bazen sert istem denir ve hiçbir şey eğitilmez. İstem ayarı, istemi etiketli verilerden öğrenir ve modelin gradyanlarına erişim gerektirir; bu nedenle açık ağırlıklı modellere uygulanır.
  • Tam ince ayar: Her ağırlığı günceller, görev başına modelin tam bir kopyasını üretir ve önceki becerilerin felaket düzeyinde unutulması riskini doğurur. Lester ve çalışma arkadaşları, istemle ayarlanan modellerin alan kaymasına karşı tam ayarlanan modellerden daha dayanıklı olduğunu da buldu.
  • LoRA: Modelin ağırlık katmanlarına eğitilebilir düşük dereceli matrisler ekler. İstem ayarı katmanlara dokunmaz, yalnızca girdiyi değiştirir.
  • İstemde az örnekli öğrenme: Etiketli örnekleri her istekte metin olarak bağlam penceresine ekler. Ayarlanmış bir yumuşak istem, örneklerin öğrettiklerini birkaç vektörde saklar ve yalnızca k ek girdi konumu gerektirir.

Çö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