Model Collapse
Model çökmesi, üretken modellerin önceki modellerin çıktılarıyla nesiller boyunca eğitilmesi sonucunda nadir verilerin ve çeşitliliğin kaybolmasıdır.
Model çökmesi, önceki modellerin ürettiği verilerle eğitilen üretici modellerin, nesiller ilerledikçe özgün veri dağılımı hakkındaki bilgiyi yitirdiği yozlaşma sürecidir. Dağılımın uçlarındaki nadir durumlar önce kaybolur; yeterince çok turdan sonra çıktılar en yaygın örüntülerin dar ve tekrarlayan bir biçimine yakınsar. Shumailov ve çalışma arkadaşları, 2024'te Nature'da yayımlanan bir makalede büyük dil modellerinde (LLM'ler), varyasyonel otomatik kodlayıcılarda ve Gauss karışım modellerinde bu etkiyi gösterdi. Gelecekteki modellerin eğitileceği web verilerinin daha büyük bölümünü yapay zekâ tarafından üretilen metinler ve görseller oluşturdukça risk artar.
Çökme Neden Olur?#
Her nesil, sonlu bir örneklem üzerinden bir model uyarlar ve ardından bu uyumdan örnekler alarak bir sonraki neslin verilerini üretir. Shumailov ve çalışma arkadaşları, nesiller boyunca biriken üç hata belirledi: sonlu bir örneklemin nadir olayları kaçırmasından kaynaklanan istatistiksel yaklaştırma hatası; modelin gerçek dağılımı tam olarak temsil edememesinden kaynaklanan işlevsel ifade gücü hatası; stokastik gradyan inişi gibi eğitim süreçlerinin kusurlu olmasından kaynaklanan işlevsel yaklaştırma hatası. Nadir bir olay bir neslin verisinden kaybolduğunda, sonraki model bu olaya sıfır olasılık atar ve olay bir daha geri dönmez. Yazarlar, dağılımın uçlarının kaybolduğu erken çökmeyi, dağılımın az çeşitlilikle birkaç yaygın çıktıya doğru daraldığı geç çökmeden ayırır.
Aşağıdaki simülasyon, sözcük sıklığı tablosunu model olarak ele alıyor. Her nesil, önceki modelden örneklenen 10.000 sözcüğü sayıyor; önceki verilerin yerine yenilerini koyuyor veya yeni örnekleri mevcut verilere ekliyor:
import torch
torch.manual_seed(0)
vocab = 1000
human = 1 / torch.arange(1, vocab + 1) # Zipf-like word frequencies: a few common words, a long tail
human = human / human.sum()
real = torch.multinomial(human, 10_000, replacement=True) # human-written training text
print(f"Human data: {real.unique().numel()} distinct words")
for mode in ("replace", "accumulate"):
data = real
for generation in range(20):
# "Train" a model by counting word frequencies, then sample the next generation's text from it
model = torch.bincount(data, minlength=vocab) / len(data)
samples = torch.multinomial(model, 10_000, replacement=True)
data = samples if mode == "replace" else torch.cat([data, samples])
print(f"{mode}: {data.unique().numel()} distinct words after 20 generations")İnsanlardan alınan örneklem 1.000 sözcüğün 916'sını içeriyor. Her biri yalnızca önceki neslin çıktısıyla eğitilen 20 nesilden sonra 302 sözcük kalıyor; çoğunluğu uzun kuyruğa ait diğer 614 sözcük tamamen kayboluyor. Her neslin örnekleri insan verilerine eklendiğinde ise 916 sözcüğün tümü varlığını koruyor; çünkü gerçek veriler her eğitim kümesinde bulunmaya devam ediyor.
Kanıtlar ve Sınırlamalar#
Yerine koyma ile biriktirme arasındaki fark gerçek modeller için de geçerlidir. Gerstgrasser ve çalışma arkadaşları (2024), art arda gelen dil modeli nesillerini önceden eğitti ve gerçek verilerin her neslin sentetik verileriyle değiştirilmesinin çöküşe yol açtığını, sentetik verilerin özgün gerçek verilerle birlikte biriktirilmesinin ise çöküşü önlediğini buldu; difüzyon modellerinde ve varyasyonel otomatik kodlayıcılarda da benzer sonuçlar elde edildi. Görüntü üreticileri üzerinde Alemohammad ve çalışma arkadaşları, kendini besleyen bir döngünün her neslinde yeterince yeni gerçek veri olmadığında kalite veya çeşitliliğin giderek azaldığını; en iyi çıktıları seçmek gibi örnekleri kaliteye göre yanlı hâle getirmenin ise çeşitlilik pahasına kaliteyi koruduğunu buldu. Daha güçlü bir öğretmen modelden bilgi damıtma örneğinde olduğu gibi, kasıtlı biçimde üretilip filtrelenmiş sentetik veriler yaygın olarak kullanılmaya devam ediyor; çöküş, bir modelin kendi filtrelenmemiş çıktılarını ayrım gözetmeden ve yinelemeli biçimde yeniden kullanmasından kaynaklanıyor.
Model Çökmesi ve İlgili Kavramlar#
- Mod çökmesi: Bir üretici çekişmeli ağ (GAN) içindeki üretici, tek bir eğitim çalışmasında yalnızca birkaç tür çıktı üretmeyi öğrenir; örneğin sürekli aynı yüzü üretir. Model çökmesi ise birbirlerinin verileriyle eğitilen ardışık modeller boyunca gerçekleşir.
- Felaket düzeyinde unutma: Bir model, yeni bir görev üzerinde eğitim aldıktan sonra önceki bir görevi unutur. Model çökmesinde görev aynı kalır, ancak eğitim verileri bozulur.
- Aşırı uyum: Bir model eğitim kümesini ezberler ve genelleme başarısı düşüktür. Çökmüş bir model eğitim verilerine iyi uyum sağlayabilir; ancak bu veriler artık gerçek dağılımı temsil etmiyordur.
- Yapay zekâ çöp içeriği: İnternette yayımlanan düşük kaliteli yapay zekâ üretimi içerik; eğitim kümelerine kazınarak aktarıldığında çöküşü besleyebilecek kaynaklardan biridir.
Model Çökmesini Önleme#
Web ölçeğinde eğitim, modellerle onları eğiten veriler arasındaki döngüyü kapatır:
Kanıtların işaret ettiği başlıca savunma önlemleri şunlardır: her eğitim kümesinde özgün insan verilerini korumak ve bu verileri sentetik verilerle değiştirmek yerine eğitim kümesine sentetik veri eklemek; üretilen örneklerin tanımlanabilmesi için veri kökenini yapay zekâ filigranlaması ve C2PA içerik kimlik bilgileri gibi sinyallerle izlemek; sentetik örnekleri eğitimde kullanmadan önce filtrelemek veya doğrulamak. Ultralytics Platform biriktirme yaklaşımını görüntü veri kümelerine uygular: Benzer görüntüler oluştur eylemi mevcut bir görüntünün 1 ila 16 varyasyonunu üretir; kullanıcının sakladığı varyasyonlar gerçek görüntülerin yanına yeni ve etiketlenmemiş görüntüler olarak eklenir ve etiketleme için hazır hâle gelir.










