2 puan yazan GN⁺ 2023-09-07 | 1 yorum | WhatsApp'ta paylaş
  • fast.ai, Kaggle LLM Science Exam modeline ince ayar yaparken, LLM’in veri kümesi örneklerini bir kez gördükten sonra hatırlıyor gibi göründüğü bir kayıp eğrisi gözlemledi
  • Sıradan sinir ağları çoğu zaman birden fazla epoch boyunca kademeli olarak öğrenir; ancak bu deneyde epoch sınırlarında eğitim kaybının basamak gibi aniden düşmesi, önceki deneyimlerden farklıydı
  • Hugging Face Trainer, LoRA ya da tam ince ayar kullanılıp kullanılmamasından bağımsız olarak benzer bir desen ortaya çıkınca, bunu basit bir kütüphane hatası olarak görmek zorlaştı
  • Döngüsel öğrenme oranı ve 1cycle deneylerinde eğitim kaybı, doğrulama kaybı ve MAP@3 değişimleri genel olarak ezberleme hipoteziyle uyumluydu; doğrulama kaybındaki kötüleşme ise doğrudan doğruluk düşüşü anlamına gelmiyordu
  • Önceden eğitilmiş LLM’ler çok hızlı öğreniyorsa catastrophic forgetting, veri artırma, veri karıştırma ve dropout gibi ince ayar stratejilerinin yeniden gözden geçirilmesi gerekiyor

Sıradan sinir ağı eğitiminden farklı olan kayıp eğrisi

  • Sinir ağı sınıflandırıcıları, girdileri ve doğru etiketleri tekrar tekrar görerek çıktı olasılıklarını ayarlar
    • Tüm eğitim verisinin bir kez üzerinden geçilmesine epoch denir
    • Kayıp (loss), modelin ne kadar yanlış yaptığını gösterir ve yüksek güvenle yapılan yanlış tahminlere daha büyük ceza verir
  • Genellikle eğitimin başında eğitim kaybı hızla düşer, sonra düşüş yavaşlar; doğrulama kaybı ise daha yavaş iyileşir
    • Yalnızca kayıp grafiğine bakarak bir epoch’un başlangıcını ve sonunu net biçimde görmek çoğu zaman mümkün değildir
    • Sinir ağlarının belirli bir görüntüyü yeterince öğrenmesi için birden fazla epoch’a ihtiyaç duyduğu yönünde deneyime dayalı bir kısıt vardı
  • fast.ai, Kaggle LLM Science Exam yarışmasında fen bilimleri çoktan seçmeli sorularını çözen bir model eğitirken farklı bir desen keşfetti
    • Radek Osmulski’nin oluşturduğu büyük soru veri kümesi ile 3 epoch eğitim yaptı
    • Her epoch’un sonunda eğitim kaybında ani bir basamak tipi düşüş görüldü

Hata şüphesinden ezberleme hipotezine

  • Başta eğitim sürecinde bir hata olduğundan şüphelenildi
    • Örneğin model doğrulama kümesi değerlendirilirken de öğrenmeye devam ederse, doğrulamadan hemen sonra model birden iyileşmiş gibi görünebilir
    • Öncelikle kullanılan Hugging Face Trainer ile ilgili bir sorun olasılığı incelendi
  • Alignment Lab AI Discord üzerindeki açık kaynak geliştiriciler de benzer kayıp eğrileri gördüklerini söyledi
    • İlk yanıt verenlerin tamamı Trainer kullandığı için kütüphane hatası hipotezi makul görünüyordu
    • Daha sonra özel eğitim döngülerinde de aynı eğrinin ortaya çıktığı örnekler paylaşıldı
  • Bunun yalnızca LoRA’ya özgü bir olgu olup olmadığı da kontrol edildi; ancak tam ince ayarda da aynı desen ortaya çıktı
    • LLM ince ayar topluluğunda bu tür kayıp eğrileri artık oldukça yaygın bir olguya yakındı

Kaggle deneyinde görülen hızlı ezberleme deseni

  • Açık kaynak çalışma arkadaşlarının yorumu, kayıp eğrisinin overfitting gösterdiği yönündeydi
    • Bu, modelin girdiyi bir-iki kez gördükten sonra tanıyacak düzeyde öğrendiği anlamına geliyordu; başta imkânsız gibi görünüyordu
    • İlk grafikte kayıp, ilk epoch’tan sonra 0,8’den 0,5’e; ikinci epoch’tan sonra ise 0,5’ten 0,2’nin altına düştü
    • İkinci ve üçüncü epoch’ların ortasında neredeyse hiç yeni öğrenme yokmuş gibi görünüyordu
  • Bu yorum doğruysa model, her satırı yalnızca 3 kez görerek eğitim kümesini neredeyse ezberlemiş demekti
    • Modelin her soruda aldığı sinyal, doğru etiket ile kendi seçiminin karşılaştırılmasından ibaretti
    • Buna rağmen eğitim kaybı ciddi biçimde azaldı

Döngüsel öğrenme oranıyla görülen kayıp değişimi

  • Kaggle modeli 2 epoch boyunca eğitilirken Leslie Smith’in 2015 tarihli Cyclical Learning Rates for Training Neural Networks makalesine dayanan döngüsel öğrenme oranı zamanlaması kullanıldı
  • İlk epoch’un eğrisi sıradan eğitim desenine benziyordu
    • İlk %10’luk kısımda öğrenme oranı ısıtıldı
    • Ardından kosinüs zamanlamasına göre öğrenme oranı düşürüldü
    • Öğrenme oranı yeterince yükseldikten sonra eğitim kaybı ve doğrulama kaybı hızla azaldı, sonra yavaşladı
  • İkinci epoch’ta veri kümesi yeniden karıştırılmadığı için ilk partiler düşük öğrenme oranında yeniden ortaya çıktı
    • Bu partiler ilk epoch’ta da yalnızca düşük öğrenme oranında görülmüştü, bu yüzden model bunlardan fazla öğrenememişti
    • İlk %10’luk bölümün sonuna doğru, ilk epoch’ta yüksek öğrenme oranıyla görülen partiler yeniden gelince eğitim kaybı aniden düştü
  • Aynı aralıkta doğrulama kaybı kötüleşti
    • Bu, modelin daha iyi genelleme yapmasından ziyade, eğitim verisini ezberlemiş ve doğru yanıtlardan çok emin hale gelmiş olması olarak görülebilir
    • Kayıp fonksiyonu, yüksek güvenli yanlış cevaplara daha büyük ceza verdiği için doğrulama kaybı kötüleşir
  • Eğrinin son bölümünde eğitim kaybı yeniden kötüleşti
    • Makul bir öğrenme oranında eğitim kaybının kötüleşmesi olağan bir durum değildir
    • Ezberleme hipotezine göre bu, modelin düşük öğrenme oranında gördüğü partileri etkili biçimde ezberleyememesi ve hemen önceki partilerde oluşan aşırı yüksek güven durumunun sürmesiyle açıklanır
    • Daha sonra model daha makul bir güven düzeyine yeniden ayarlanırken doğrulama kaybı tekrar düştü

1cycle deneyi ve değerlendirme metriklerindeki fark

  • Sonraki deneyde 3 epoch boyunca 1cycle training kullanıldı
    • Öğrenmenin başlangıcındaki partilerin %10’unda öğrenme oranı yalnızca bir kez ısıtıldı
    • Kalan partilerde öğrenme oranı kosinüs zamanlamasıyla düşürüldü
    • Önceki deneyde olduğu gibi her epoch’ta ayrı bir ısıtma ve azalma tekrarlanmadı
    • Öğrenme hızını yavaşlatmak için LoRA rank’i yükseltildi
  • Sonuç eğrisi önceki yorumla genel olarak uyumluydu; ancak doğrulama kaybındaki artış epoch 2’de değil epoch 3’te görüldü
    • Önceki deneyde ikinci epoch’ta eğitim kaybı yaklaşık 0,2’ye inmiş ve çok yüksek güvenli tahminler mümkün olmuştu
    • 1cycle deneyinde bu güven düzeyine ancak üçüncü epoch’ta ulaşıldı; doğrulama kaybındaki artış da o zaman görüldü
  • Doğrulama kaybındaki kötüleşme gerçek overfitting anlamına gelmez
    • Kaggle liderlik tablosu metriği, ilk 3 çoktan seçmeli tahminin sırasına dayalı doğruluk olan Mean Average Precision @ 3 idi
    • 1cycle eğitiminde parti bazlı doğrulama MAP@3, son epoch’ta doğrulama kaybı kötüleşmesine rağmen iyileşmeye devam etti
  • Ek loglar ve yeniden üretim not defteri Johno’nun raporunda görülebilir

Tek örnekten öğrenmenin mümkün olabilmesinin nedeni

  • Bir sinir ağının tek bir örnekle girdiyi tanıyamayacağını söyleyen temel bir yasa yoktur
    • Araştırmacılar ve uygulayıcılar yalnızca deneyime dayanarak sinir ağlarının çok sayıda örneğe ihtiyaç duyduğunu düşünüyordu
    • Stokastik gradyan inişinin (SGD) araştırdığı kayıp yüzeyi engebeliyse tek seferde büyük bir hareket yapmak zordur
  • Kayıp yüzeyini daha pürüzsüz hale getiren unsurlar biliniyor
  • Önceden eğitilmiş LLM’ler, minimum kayba yakın bölgelerde çok pürüzsüz bir kayıp yüzeyine sahip olabilir
    • Açık kaynak topluluğundaki birçok ince ayar çalışmasının bu tür bölgelerde yapılıyor olması muhtemeldir
    • Bu, 2018 tarihli ULMFiT makalesinin varsayımıyla da bağlantılıdır
  • ULMFiT’in temel fikri, dil modellemede iyi olan bir modelin içeride zengin soyutlamalar ve yetenek katmanları oluşturduğuydu
    • Bu katmanlar az miktarda ince ayarla başka görevlere uygulanabilir
    • Günümüz LLM’leri, ULMFiT’te ele alınan modellerden çok daha büyük olduğu için daha zengin soyutlama katmanlarına sahip olabilir
  • Fen bilimleri çoktan seçmeli soru ince ayarı, modelin içinde zaten bulunan yetenek ve bilgiyi kullanıma açmaya daha yakın bir iş olabilir
    • Gerekli ağırlık ayarı çok fazla olmayabilir
    • Küçük, rastgele bir sınıflandırma head’i eklenmiş önceden eğitilmiş bir dil modeli, iyi ağırlık ayarlarına doğru pürüzsüzce hareket edebileceği bir konumda olabilir
    • Adam optimizer’da tutarlı ve pürüzsüz gradyanlar, etkin dinamik öğrenme oranını büyüterek büyük adımlara yol açabilir

İnce ayar stratejileri için doğan sorular

  • Model çok hızlı öğreniyorsa mevcut eğitim yöntemlerinin temel varsayımları sarsılabilir
    • Yavaş öğrenen modeller, çeşitli verileri birçok epoch boyunca uzun süre görerek genellenebilir bilgiyi kademeli olarak çıkarabilir
    • Hızlı öğrenen modeller ise gördükleri örneği hemen hatırlayarak farklı olgular yaratabilir
  • Catastrophic forgetting daha belirgin hale gelebilir
    • Çok yaygın bir ilişkiye ait 10 örneği gördükten sonra daha az yaygın 1 karşı örnek görülürse, model önceki 10 örneğin belleğini biraz zayıflatmak yerine karşı örneği hatırlayabilir
  • Data augmentation yönteminin overfitting’i önleme etkisi de zayıflayabilir
    • LLM girdi bilgisinin temsilini iyi çıkarabiliyorsa, paraphrasing ya da back-translation ile karıştırılsa bile aslında aynı bilgiyi alıyor olabilir
  • Olası hafifletme yöntemleri arasında dropout ve stochastic depth var
    • Dropout, LoRA gibi ince ayar yöntemlerinde zaten bir miktar kullanılıyor
    • Stochastic depth’in NLP’de anlamlı düzeyde kullanıldığı bir örnek henüz yok gibi görünüyor
  • Bir başka yöntem de eğitim boyunca zengin bir veri kümesi karışımını korumaktır
    • Llama Code, kod performansı iyileşirken diğer yeteneklerin ciddi biçimde kötüleştiği catastrophic forgetting yaşadı
    • O dönemde kod dışı verilerin oranı %10’du
    • Karışım 50/50’ye yakın olsaydı, mevcut yetenekler kaybedilmeden kodlama performansı elde edilebilirdi

1 yorum

 
GN⁺ 2023-09-07
Hacker News yorumları
  • Bu yazıyı HN’ye taşıdığınız için teşekkürler. Yazının ortak yazarlarından biriyim; Johno ile birlikte LLM’lerin hızlı ezberleme denen bu tuhaf olgusunu kurcalamak gerçekten ilginçti.
    30 yıldır sinir ağlarıyla uğraşıyorum ve 2017’den beri dil modellerine ince ayar yapıyorum, ama bu davranış beni epey şaşırttı. Başkaları da LLM’lerde benzer olgular görmüş, ancak böyle bir analiz henüz görmedim; gözden kaçırdığımız şeyler de olabilir.

    • Palm-E makalesinde (https://palm-e.github.io/), LLM’in dondurmasını kaldırıp yalnızca yeni görüntü verileriyle eğittiğinizde beklendiği gibi doğal dil işleme görevlerinde ciddi yıkıcı unutma oluşması, fakat eğitim öncesi LLM ölçeği büyüdükçe bu etkinin büyük ölçüde azalması ilginç.
      12B modelde ortalama %-87,3, 84B’de %-61,6, 562B’de ise yalnızca %-3,9 performans düşüşü vardı. Bir içgörüye neredeyse varmışız gibi hissettirdi; yıkıcı unutmanın önlenmesinin basitçe bir ölçek meselesi olup olamayacağını merak ediyorum.
    • Temel modelin ne olduğunun eksik bırakılması büyük bir hata gibi geliyor; bunu genel olarak LLM’lere özgü bir olguya bağlamamak gerektiğini düşünüyorum.
      Araştırmacı değilim ama tüm LLM’lerin aynı mimariye sahip olmadığı açık; benzer mimariler bile aynı girdilerde işlevsel olarak oldukça farklı davranacak şekilde evrilebilir. Buna rağmen pek çok yazı LLM’leri sanki tek bir mimari ve tek bir modelmiş gibi ele alıyor.
    • Jeremy, çalışmalarını her zaman seviyorum. Uzmanlık alanım astronomi olduğu için teknik bir ekleme yapayım: burada açıklanan MOND örneğinde aslında doğru yanıt seçenek (E) olmalı.
    • Jeremy, bir batch’in kaybını bir kez hesaplayıp gradyanı güncelledikten sonra aynı batch’in kaybını no_grad ile tekrar hesaplarsan, modelin tek adımda ne kadar öğrendiğini tam olarak hesaplayabilirsin gibi görünüyor.
      Batch veya gözlem/soru düzeyinde ilk kayıpla ikinci kayıp arasındaki farkı grafiğe dökmek ilginç sonuçlar verebilir.
    • Çok ilginç. Daha önce Hugging Face transformers issue’sunda da benzer bir konu gündeme gelmişti ve o zaman da ezberlemenin güçlü bir açıklama olduğuna karar vermiştik. Başka tarafta da aynı sonuca varıldığını görmek güzel.
      https://github.com/huggingface/transformers/issues/18730
  • İnsanların “over confident” ifadesini gerçekten bu anlamda kullanıp kullanmadığını bilmiyorum. Epey yanlış anlaşılmaya açık bir ifade; burada olan şeye aşırı uyum demek daha doğru.
    Verileri noktalar olarak düşünürsek, iyi genelleme yapan bir model eğitim veri noktalarına oldukça iyi uyan en basit fonksiyonu oluşturmaya çalışır. Ama eğitime devam ederseniz, parametreler çok büyür ve fonksiyon eğrisi eğitim verilerinin tam üzerinden geçmeye çalışırken gerçek veri aralığının çok dışına taşarak büyük salınımlar yapabilir.
    Böylece eğitim verilerine teknik olarak daha iyi uyar, fakat yeni verilerde uç çıktılar üreten tuhaf bir fonksiyona dönüşür ve genellemesi neredeyse en kötü hale gelir. Ancak aşırı uyum ezberleme ile aynı şey değildir. Büyük bir model küçük bir veri kümesini aşırı uyum yapmadan da ezberleyebilir; parametre sayısı çok fazla olduğundan eğitim verilerini tutturmak için yalnızca küçük değişiklikler yeterlidir. Bu durumda eğitim durur ama genelleme gerçekleşmez; buna eksik belirlenmişlik denir.
    Hem çıktı hem de güven değeri üreten modeller de var; bu yüzden “aşırı güven”, modelin yüksek güveni, yani düşük hata varyansını yanlış tahmin ettiği anlamında da kullanılabilir.

    • Çıkış olasılıklarına argmax uygulanmış bir sinir ağını fonksiyon olarak görürsek, bu kesinlikle aşırı uyum değil. Görülmemiş verilerde, yani doğrulama kümesindeki sınıflandırma doğruluğu artmaya devam ediyor.
      Buradaki kilit konu kalibrasyon: https://en.m.wikipedia.org/wiki/Calibration_(statistics). Sinir ağının çıkış olasılıklarının gerçek gözlenen olasılıkları yansıtmadığı anlamına gelir. Olasılıkları sistematik olarak düşük tahmin ediyorsa “düşük güven”, yüksek tahmin ediyorsa “aşırı güven” denir.
      Bu durumda kalibrasyon kötüleşip doğrulama kaybı artsa bile, görülmemiş veriler üzerindeki sınıflandırıcı yine de iyileşebilir.
    • Doğruluğu artan bir model için aşırı uyum ifadesini kullanmayız. Yanlış anlaşılmaya yol açtığını düşünüyorum.
    • Eğitim kümesi kaybı iyileşirken doğrulama kümesi kaybı kötüleştiğine göre bunun bir tür aşırı uyum olduğunu düşünüyorum. Ancak doğrulama kümesi doğruluğunun kötüleştiği yaygın aşırı uyumdan farklı.
      Burada doğrulama verisi doğruluğu artmaya devam etti, fakat model yanıldığında eskisine göre daha yüksek güvenle yanılıyor. Örneğin eskiden yanıtın X olduğuna %60 güvenerek yanılıyorsa, şimdi yine X diyerek yanılıyor ama %70 gibi daha yüksek güven gösteriyor. Bu yüzden tuhaf bir aşırı uyum biçimi ve “aşırı güven” daha spesifik bir ifade olarak uygun görünüyor.
  • LLM uzmanı değilim, ama genel makine öğrenmesi açısından bu o kadar şaşırtıcı değil.
    Zaten ince ayar örneğine bir miktar olasılık kütlesi atamış, milyarlarca parametreli bir üretici model var. Şimdi bu olasılık kütlesini artıran gradyanı hesaplayıp o yönde bir adım atıyorsunuz. Sonuçta yazarın şaşırdığı şey, bu tek adımın örneğin olasılık kütlesini ciddi biçimde artırması.
    Ama üretici modeller inanılmaz derecede aşırı parametreleştirilmiş durumda ve ince ayar örneklerine zaten bir miktar olasılık kütlesi veriyorlar. Milyarlarca boyutlu parametre uzayında görece az sayıdaki örneğin olasılığını hızla artıracak bir yön olmasaydı, asıl bu şaşırtıcı olurdu.

    • Ben de aynı şeyi düşündüm. Hiç şaşırmadım; bu yüzden acaba bir şey mi kaçırıyorum diye düşündüm.
  • Çoğu LLM’in şu anda yalnızca bir epoch eğitildiği gerçeğinden zaten bir ölçüde açıkça çıkan bir sonuç değil miydi, diye düşünüyorum.
    Yalnızca bir epoch eğitiliyorsa, veriyi ikinci kez taramanın bile aşırı uyum riski taşıdığı anlamına gelir. Ancak eski verilerin en az 4 epoch’a kadar yeni veriler kadar iyi olduğunu gösteren şu makalenin [0] sonuçlarıyla biraz çelişiyor gibi görünüyor.
    [0]: https://arxiv.org/abs/2305.16264

    • Küçük bir düzeltme: halka açık LLM’lerin önemli bir kısmı en azından bir epoch’tan biraz fazla eğitiliyor ve genelde Wikipedia gibi belirli veri alt kümelerinde birden fazla epoch çalıştırılıyor.
    • Yalnızca bir epoch eğitilmiyorlar. Yüksek kaliteli veriler üzerinde birden fazla epoch çalıştırılıyor. Meta’nın Llama ekibi de daha fazla ve daha çok token ile eğitildiğinde kaybın azalmaya devam ettiğini gösterdi.
  • Alakasız olabilir ama ChatGPT’ye PowerShell’de bir Excel elektronik tablosunun sütun filtre ayrıntılarını programatik olarak kontrol eden kod yazdırmayı denedim.
    Denediği şeylerin hiçbiri çalışmadı; çok yaklaşmıştı ama çalışmıyordu. Sonunda sorunu düzelten bir C# kodu bulup ChatGPT’ye yapıştırdım, okumasını ve ardından PowerShell’de sorunu düzeltmesini istedim; çözümü anladığını söyleyip betiği değiştirdi ve kusursuz çalıştı.
    Nedense bu davranış oldukça ufuk açıcı bir deneyimdi. Soru içinde eğitiminde olmayan materyali sağlayınca çözebildi. Dil öğrenimi açısından bunun nasıl mümkün olduğunu anlıyorum ama bir LLM’in bunu yapabiliyor olması gerçekten harika geldi.

    • İlginç bir anekdot. Şu anda LLM’ler hakkında insanların modeldeki bilgi aramaya fazla odaklandığı, “dil modeli” kısmını ise küçümsediği ortak bir eğilim olduğunu düşünüyorum.
      Bunlar konuşma ve açıklama konusunda iyi oldukları için kolayca insanlaştırılıyor. O kadar iyiler ki, istatistiksel mühendisliğin devasa, sihir gibi başarısını sıradan bir temel blok gibi kabul etmemize yol açıyorlar. Ama o blok altından yapılmış bir tuğla.
      Doğal dilden koda, metinden sese, görüntüden görüntüye, bir doğal dilden başka bir doğal dile çeviri yapmak; düzenlemek, özetlemek, genişletmek ve ekstrapolasyon yapmak bu modellerin yaptığı şey. İçkin “bilgi” yalnızca bağlamdan ibaret.
      Vektör gömmelere biraz farklı bakıyorum; Dewey ondalık sistemi gibi bir anlamsal kataloglama biçimi oldukları için aramayı mümkün kılıyorlar. Ama “1984’te ABD başkanı kimdi?” gibi veri aramasını doğrudan modelden yapmak kişisel olarak pek ilgimi çekmiyor.
  • LLM’lerin kendi eğitim verilerini zenginleştirmek için kullanılıp kullanılmadığını merak ediyorum.
    Bir LLM’i az miktarda girdiyle eğitip sonra çok sayıda sentetik girdi üreterek bunları eğitim verisine eklersek ne olur diye merak ediyorum. Bunu bir tür “rüya görme” gibi düşünüyorum. Sadece gürültü ekleyecekmiş gibi de geliyor ama LLM kendi bağlamını güçlendirip “sesli düşünerek” çıktısını iyileştirebildiğine göre, aynı şeyi eğitim verisi için de yapamaz mı diye düşünüyorum.

    • Evet. Son dönemdeki araştırmaların önemli bir kısmı LLM çıktısını eğitim verisi olarak kullanıyor ve bu çok başarılı bir araştırma yönü oldu.
    • Aslında RLHF tam olarak böyle bir şey. İyi çıktı ile kötü çıktının ne olduğunu söyleyen, insanlarca seçilmiş küçük bir veri kümesini kılavuz alarak LLM’in yalnızca kendi çıktılarıyla kendi kendini eğitmesini sağlayan bir yöntem.
    • İlginç biçimde bu sonuç, insanlarca seçilmiş küçük bir derlemin büyük bir sentetik veri kümesinden daha etkili olabileceğini söyleyen kardeş yorumun tam tersi.
    • Model kendi ürettiği aynı verilerle eğitilirse sisteme yeni bilgi eklenmez. Zaten doğru bildiklerini de yanlış bildiklerini de pekiştirir; bu yüzden iyileşme olmaz.
      Ancak büyük bir modelle sentetik eğitim verisi üretip daha küçük başka bir modeli eğitmek yaygındır. Böylece bir modelin bilgisi başka bir modele aktarılabilir.
    • Şunu bizzat deneyerek yanıtı bulabilirsiniz: Bir modele göre rastgele veri üretin, doğrusal regresyon ya da başka bir dağılım uydurun, sonra o dağılımdan örnekler çekip eğitim kümesine ekleyin.
  • Başlığın yanlış anlaşılmaya yol açtığını düşünüyorum.
    Eğitim bağlamında tek bir örnekten öğrenmek arzu edilen, ezberlemek ise arzu edilmeyen şey değil mi? İlki hayvanların öğrenme biçimine yaklaşmak için hedeflediğimiz şey; ikincisi ise sık görülen bir başarısızlık modu. Yazı, öğrenmeden çok açıklanmamış bir ezberleme örneği gösteriyor gibi görünüyor.

  • ViT’yi sıfırdan eğitirken benzer bir kayıp eğrisi gördüm; hep aklıma takılmıştı ama daha büyük endişelerim olduğu için derinine inmedim.
    Fark, her epoch sırasında eğitim kaybının yükselmesiydi. Epoch’lar arasındaki ani düşüş yeterince büyük olduğu için genel olarak eğitim kaybı azalıyor, doğrulama kaybı da düşmeye devam ediyordu. Model güncel en iyi seviyeye oldukça yaklaştığından “normal” gibi görünüyordu.
    Bu ölçekte evrişimli sinir ağı eğitmişliğim yok, o tarafta da benzer bir olgu görülür müydü bilmiyorum; ama olsaydı birilerinin bundan bahsetmiş olacağını düşünüyorum. Bu yüzden böyle garip kayıp eğrilerinin özellikle Transformer tabanlı modellerin bir özelliği olabileceğini düşünüyorum.

    • Orijinal metinde LLM’lerin güçlü soyutlamaya ihtiyaç duyduğunu söylüyordu; Transformer ağları temelde böyle bir durum ve sıfırdan eğitirken bu açıkça görülüyor.
      Model uzun süre neredeyse hiçbir yere varamaz ve tamamen işe yaramaz görünür; sonra bir noktada, birkaç eğitim döngüsünden sonra ağırlıklar hata yüzeyinde bir minimum bulduğunda birden düzgün çalışmaya başlar. Çünkü Transformer, dikkat mekanizması açısından tüm girdi verilerine uygulanabilen bir soyutlama öğrenmiştir. Okurken cümleleri gözden geçirme biçiminizi düşünün. Bunu daha önce HN’de gördüğüm bir yazıyı hatırlayarak açıklıyorum, bu yüzden kusursuz bir açıklama değil.
    • Başkalarının eğitim kaybı eğrilerinde de epoch içinde yükselip epoch sonunda birden düştüğünü gördüğüm oldu. Kendim yaşamadım ve nedeni hakkında hiçbir fikrim yok.
    • İlk epoch’tan sonra, mevcut veri öğesinin eğitimde en son kullanıldığı andan bu yana geçen ortalama süre epoch başında kısa, epoch ilerledikçe giderek daha uzun olur. Bu sürenin mevcut yinelemenin kaybıyla pozitif korelasyona sahip olmasını beklerim.
    • İlk epoch’ta da kayıp yükseliyorsa bu biraz tuhaf görünüyor.
  • Bunun, mevcut sohbet bağlamı gibi bilgileri model ağırlıklarının bir parçası olarak anında öğrenmenin ya da ezberlemenin hesaplama açısından verimli olduğu anlamına gelip gelmediğini merak ediyorum.
    Hipokampusun çok iyi yaptığı tek seferlik kodlama, deneyimleri daha önce öğrenilmiş anlamsal kavramlarla bağlantılı, aranabilir anılara dönüştürmeyi sağlıyor. Hatta çocukluktan yetişkinliğe geçtikçe olaylara dair anlamsal kavramsallaştırma zenginleştikçe bu gerçekten daha iyi hale geliyor.
    LLM’lerin olayları ezberlemesi bu derin anlamsal çerçeve sayesinde hızlanıyorsa, bu uzun bağlam penceresine giden bir yol sunabilir mi?

    • Mümkün olabilir ama bilmediğimiz çok şey var. Anında ezberlemenin diğer bilgilerin felaket düzeyinde unutulmasına yol açıp açmadığı ve yakın zamandaki içerikleri ezberlemekle eski içerikleri hatırlamayı nasıl kontrol edeceğimiz mesele.
    • Sadece acemi bir düşünce ama fikir hoşuma gidiyor. Kendinize ait değiştirilebilir bir model kopyasına ihtiyaç var ve bu genellikle devasa olur. Ayrıca geri yayılım gerekeceği için hesaplama da biraz daha artar.
      GPT-3.5/4’ten daha küçük yerel modellerde mümkün olabilir. Ayrıca neyin uzun süreli bellekte kalacağına, neyin kısa süreli bellekte tutulacağına karar vermek gerekir.
  • Eğer bu doğruysa, LLM’lerin ürettiği sentetik veri kümelerinden çok daha küçük olan insanlarca seçilmiş veri kümelerinin değerinin çok daha yüksek olduğu fikrini destekler

    • En fazla bilgiye sahip olan taraf kazanır. Bilginin bir yapısı varsa, bundan güçlü biçimde yararlanarak sentetik veri üretilebilir
      Buna Apple Sim örnek verilebilir. İç mekân 3D model deposudur; renderer’ı kontrol ederek çeşitli katmanlarda bilgi üretip ardından gerçek fotoğraflarda kullanılmasını sağlar. Görseller genelinde bu yöntem kullanıldığı için vektör uzayı embedding’ler için oldukça doğaldır. Cebirsel olarak söylersek, fazla yapı eklemeye gerek yoktur
      Alanın cebirsel niteliği güçlüyse doğru örnekleri rastgele de üretebilirsiniz; böyle bir durumu herkese öneririm
    • Google yaklaşık 2 yıl önce bu sonuca vardı, ancak henüz belirgin bir sonuç gösteremedi. Yukarıdaki kilit kelime seçilmiş
    • Miktar ile kalite arasında denge kuran bir tür değer metriği olacaktır; teknolojinin nasıl çalıştığını şu anki gibi orta düzeyde anladığımız bir dönemde bu metrikten yararlanılabilir gibi görünüyor. Yani sentetik veriden elde edilebilecek potansiyel bir kazanç var
      Ancak bir gün “bedava öğle yemeği yoktur” kuralının devreye gireceğini düşünüyorum; ayrıca sentetik veri her zaman aykırı değerlerin veri üretim sürecini de önemsemez
    • Katılmak zor. Aksine, ULMFiT dönemindeki yapay zekanın insan seçimiyle hazırlanmış veriye duyulan ihtiyacı nihayet sona erdirdiğini düşünüyorum
      ChatGPT 4 zaten gündelik yapay zeka modellerini eğitmek için oracle model olarak kullanılıyor. Gerçekten devasa bir oracle model, çok küçük insan girdileri dışında çoğu şeyi gereksiz kılacaktır
    • Neden bu tür şeyleri yalnızca teorileştirebiliyoruz? Neden bunların nasıl ve neden çalıştığını bilemiyoruz?