Ek B — Matematik Hatırlatıcısı
Kitap, konusunun ima ettiğinden daha az matematik varsayıyor. Varsaydığı şey burada ve her madde, sonucu türetmeye değil bölümü okumaya yetecek kadar yazıldı.
B.1 Doğrusal cebir
Bir vektör bir sayı listesidir ve burada uzayda bir noktadır. Bir kelime, bir cümle ya da bir belge, benzerin yakın anlamına gelebilmesi için bir vektöre dönüşüyor. Bölüm 3’ün tamamı bu tek hamle.
İç çarpım (dot product) hizalanmayı ölçer. İki vektör \(\mathbf{a}\) ve \(\mathbf{b}\) için \(\mathbf{a} \cdot \mathbf{b} = \sum_i a_i b_i\). İkisi aynı yöne baktığında büyük, dik olduklarında sıfır, zıt olduklarında negatiftir. İkisinin de uzunluğuna bölün, kosinüs benzerliğini elde edersiniz; büyüklüğü çıkarılmış iç çarpımdır ve Bölüm 3’ten Bölüm 19’a her yerde kullanılıyor — uzun bir belgenin otomatik olarak her şeye benzer görünmemesinin nedeni de o.
Matris çarpımı aynı anda birçok iç çarpımdır. Bir matrisi bir vektörle çarpmak, vektörün her satırla iç çarpımını alıyor. Bir yapay sinir ağı katmanının yaptığı işin ağırlığı bu — üstüne bir bias (sabit terim) vektörü ekleyip sonucu doğrusal olmayan bir aktivasyon fonksiyonundan geçirin, tam bir katman elde edersiniz — ve GPU’ların önemli olmasının nedeni de bu: iç çarpımlar bağımsız, dolayısıyla paralel koşuyorlar. Bölüm 31’in prefill’e karşı decode ayrımı bunun doğrudan sonucu — bir prompt’u okumak aynı anda birçok iç çarpım, bir token yazmak ise arka arkaya bir tane.
Boyut indirgeme, en çok sinyali taşıyan yönleri buluyor. Tekil değer ayrışımı bir matrisi, her birinin matrisin karesel büyüklüğünün ne kadarını karşıladığına göre sıralanmış yönlere ayırıyor ve ilk birkaçından sonra kesmek, var olan en iyi düşük ranklı yaklaşımı veriyor — Frobenius ve spektral normlarda — bu Eckart–Young teoremidir ve “en üstteki bileşenleri tut”un bir sezgisel yöntem değil bir teorem olmasının nedeni de budur. O normlar için optimal, “yakın”ın her ölçüsü için değil. Pratikte önemli bir çekince: o yönler, sütunları önce merkezlediyseniz varyansı tarif eder — PCA’nın yaptığı budur. Ham sayımlarda başat yön genellikle ortalamaya yakındır ve belge uzunluğuyla korele çıkan bir ilk bileşen bunun sonucudur. LSA tam da bu merkezlenmemiş kesik SVD’yi bilerek kullanır; yani bu otomatik bir hata değil, bilerek verilecek bir karardır. Bölüm 3 bunu kullanıyor; Bölüm 11 sezgisine dayanıyor.
Bu bölümden tek bir olgu kalacaksa: benzerlik geometridir. Bu kitaptaki neredeyse her erişim, kümeleme ve embedding (gömme) kararı hangi noktaların yakın olduğuna dair bir iddia ve tartışmalar geometrinin anlamla örtüşüp örtüşmediği üzerine.
B.2 Olasılık
Koşullu olasılık, bir şeyi bildikten sonraki olasılıktır. \(P(A \mid B)\), \(B\) gerçekleştiği verildiğinde \(A\)’nın şansı. Bir dil modeli tam da bu: \(P(\text{sonraki token} \mid \text{şimdiye kadarki her şey})\).
Zincir kuralı bir cümleyi bir çarpıma çeviriyor. Bir dizinin olasılığı, her token’ın kendinden öncekiler verildiğindeki olasılığının çarpımı — \(P(w_1 \ldots w_n) = \prod_i P(w_i \mid w_{<i})\). Bölüm 6 konunun tamamını bu satır üzerine kuruyor.
Beklenti, uzun vadede alacağınız ortalamadır; her sonucu olasılığıyla ağırlıklandırarak. Aynı metriğin 30 maddede ve 1.000 maddede ölçüldüğünde farklı nesneler olmasının nedeni bu: ikisi de aynı beklentinin tahmini, ama belirsizlikleri çok farklı. Bölüm 22 bunu örneklem boyutu aritmetiğine çeviriyor.
Çapraz entropi, modelinizin doğru cevap karşısında ne kadar şaşırdığını ölçüyor, veri üzerinde ortalanmış hâlde: model gerçekte olana yüksek olasılık verdiğinde düşük. Perplexity onun üsteli ve “model etkin olarak kaç seçenek arasından seçiyordu” diye okunuyor. 20’lik bir perplexity, token başına kabaca yirmi seçenek arasından bir tahmin demek.
Softmax, keyfî puanları üsselleştirip normalleştirerek olasılığa çeviriyor: \(\text{softmax}(z)_i = e^{z_i} / \sum_j e^{z_j}\). Aşağı akışta iki özellik önemli. Üstel farkları abartıyor, ama ne kadar abarttığı farkın küçük olmasına değil puan birimindeki büyüklüğüne bağlı: 0 ile 0,1 puanları 0,475 ile 0,525 çıkıyor, 0 ile 3 ise 0,047 ile 0,953. Öncelik, olasılıkta büyük olmadan önce logit ölçeğinde büyük olmak zorunda. Ve üstelden önce puanları bir sıcaklığa bölmek bunun ne kadar olacağını denetliyor — yüksek sıcaklık dağılımı düzleştiriyor, sıfıra yaklaşan sıcaklık ise azamiyi seçtiriyor. Bölüm 18’in ve Bölüm 15’in aynı ayarın sohbet için doğru, çeviri için yanlış olduğu ölçümünün ardındaki tek parametre bu.
B.3 Ölçümler üzerinde çıkarım
Bu kitabın en çok yaslandığı matematik burası, çünkü neredeyse her bölüm küçük bir örneklemde ölçülmüş bir oranla bitiyor. Dört araç bunun neredeyse tamamını karşılıyor.
Bir oran bir aralık ister ve kullanılacak olan Wilson’ınki. Ders kitabındaki \(\hat{p} \pm z\sqrt{\hat{p}(1-\hat{p})/n}\) tam da bu kitabın yaşadığı yerde bozuluyor: \(\hat{p} = 1\)’de sıfır genişlik veriyor ve 0’a yakın negatif sınırlar üretiyor. Wilson aralığı aynı problemi ters yönden çözüyor ve uçlarda düzgün davranıyor:
\[\frac{\hat{p} + \frac{z^2}{2n}}{1 + \frac{z^2}{n}} \;\pm\; \frac{z}{1 + \frac{z^2}{n}}\sqrt{\frac{\hat{p}(1-\hat{p})}{n} + \frac{z^2}{4n^2}}\]
Otuzda otuz, %100 ± 0 değil; [88,6, 100]. Gerekçeyi Bölüm 22 kuruyor ve ondan sonraki bölümlerin çoğu bir aralık raporluyor.
Eşleştirilmiş ikili sonuçlar McNemar testiyle karşılaştırılabilir. İki sistem aynı maddelerde koştuğunda bilgiyi taşıyan şey uyuşmazlıklar: birincinin doğru ikincinin yanlış yaptığı \(b\) madde, tersi olan \(c\) madde. İkisinin de doğru ya da ikisinin de yanlış yaptığı maddeler hangisinin daha iyi olduğu hakkında hiçbir şey söylemiyor. Kesin test (exact test), o uyumsuz çiftler üzerinde bir binom işaret testi: \(X \sim \text{Binom}(b+c, 0{,}5)\) için \(\min\bigl(1,\ 2\,P(X \le \min(b,c))\bigr)\). Sınır önemli: \(b = c\) iken ikiye katlanmış kuyruk biri aşar ve hiç uyumsuz çift yoksa iki yönde de kanıt yoktur (\(p = 1\)). Örtüşen iki marjinal aralığın sonuçsuz sayacağı farkları rutin olarak buluyor; Bölüm 17 ile Bölüm 22’nin ikisi de buna dayanıyor. İkili olmayan eşleştirilmiş skorlar için — madde başına bir ROUGE, bir derecelendirme — eşleştirilmiş karşılığı madde başına farklar üzerinde çalışır.
Ortalama bir skor için bootstrap çoğu zaman pratik seçimdir. Maddeleri yerine koyarak birkaç bin kez yeniden örnekleyin, her seferinde istatistiği yeniden hesaplayın ve 2,5. ile 97,5. yüzdelikleri alın. Skorlar için parametrik bir model gerektirmiyor, ama her varsayımdan da kurtulmuyor — yeniden örnekleme birimi verinin nasıl örneklendiğiyle eşleşmeli ve yüzdelik aralığı bazı istatistiklerde kötü davranır; bir ROUGE ortalaması ya da ortalama bir derecelendirme için yaygın bir varsayılan olmasının nedeni de bu. Verinin kümelendiği düzeyde yeniden örnekleyin: aynı belgenin iki yargısı iki bağımsız olgu değildir.
İstatistiksel güç, örneklemin ne kadar büyük olması gerektiğine karar veriyor ve bunu hiçbir şey toplamadan önce cevaplayabilirsiniz. İki oran için, \(\alpha\) anlamlılığında ve \(1-\beta\) gücünde, saptanabilir en küçük fark \(\Delta\) şunu gerektiriyor:
\[n \;\approx\; \frac{\left(z_{1-\alpha/2}\sqrt{2\bar{p}\bar{q}} + z_{1-\beta}\sqrt{p_1 q_1 + p_2 q_2}\right)^2}{\Delta^2}\]
Burada \(n\) iki bağımsız grubun her birindeki madde sayısı; \(p_1\) ile \(p_2\) iki oran, \(q_i = 1 - p_i\), \(\bar{p} = (p_1 + p_2)/2\) ve \(\bar{q} = 1 - \bar{p}\). \(z_{1-\alpha/2}\) iki yönlü kritik değer, \(z_{1-\beta}\) ise hedef güç için tek yönlü değerdir; ikisi de standart normal dağılımın kuantilleridir. Aynı maddeler üzerinde eşleştirilmiş bir tasarım, beklenen ayrışma oranına dayanan farklı bir hesap ister. Yukarıdaki formül, Bölüm 22’nin “yüz maddelik bir değerlendirme kümesi beş puanlık bir iyileşmeyi göremez” bulgusunun arkasındaki aritmetik. Yararlı yön tersi: bir kararı değiştirecek farktan başlayın ve \(n\) için çözün.
Dördünün de karşı durduğu kusur biçimi aynı: güven aralığı olmadan raporlanmış bir sayının, yine güven aralığı olmadan raporlanmış başka bir sayıyla, ikisini ayıramayacak kadar küçük bir örneklemde karşılaştırılması. Bu alanın yayımlanmış sonuçlarındaki en yaygın hata ve istatistikten çok aritmetik.
B.4 Eniyileme
Kayıp, küçük olmasını istediğiniz bir sayıdır; modelin şu anda ne kadar yanlış olduğunu ölçüyor. Eğitim, onu küçülten parametrelerin aranması.
Gradyan inişi yokuş aşağı yürümektir. Gradyan en dik artış yönünü gösteriyor, dolayısıyla öğrenme oranının belirlediği bir mesafe kadar diğer yöne adım atın. Fazla büyükse hedefi aşarsınız; fazla küçükse yakınsama pratik olmayacak kadar yavaşlar. Eğitimdeki diğer her şey — momentum, Adam, çizelgeler — bu temel kuralın geliştirilmiş biçimleri.
Geri yayılım, gradyanı elde etmek için uygulanan zincir kuralıdır; ağın içinde geriye doğru çalışılarak verimli biçimde hesaplanıyor. Kullanmak için onu türetmenize gerek yok; ne olup ne olmadığını bilmeniz gerekiyor. Gradyanı hesaplar — eniyilemeyi kendisi yapmaz ve eğitimin parametre uzayında bir arama olmasını ortadan kaldırmaz. Ucuzlattığı şey, hangi yöne adım atılacağını bilmektir.
Düzenlileştirme (regularization), eğitim uyumundan ödün verip karşılığında genelleme kazandıran her şeydir. İstatistiksel okuması en temiz olan biçimi, büyük ağırlıklara konan bir ceza — daha basit açıklamalar daha büyük olasılıkla doğrudur der ve parametreler üzerinde bir önsele karşılık gelir. Tek biçimi o değil: erken durdurma, dropout, veri artırma ve — bu kitabın sürekli döndüğü — düpedüz daha çok veri, aynı işi başka yollarla yapar.
Aşırı uyum, eğitim örneklemine, geldiği evrenden daha yakından uymaktır. Model gördüğü veride iyileşiyor, görmediğinde kötüleşiyor — ve düpedüz ezberleme yalnızca uç durum; örnekleminizde geçerli olup genelde olmayan gerçek bir örüntü öğrenmek yaygın olanı. Bu kitaptaki her sayının ayrılmış veride raporlanmasının nedeni bu ve Bölüm 13’ün bir ölçütün test kümesinin %13,06’sının kendi eğitim bölümünde birebir durduğu bulgusunun bu kadar önemli olmasının nedeni de bu: ayrılan küme ayrılmamıştı.
B.5 Gösterim
Kitabın kullandığı gösterim ve her sembolün kabaca ilk nerede geçtiği.
| sembol | anlamı | ilk kullanım |
|---|---|---|
| \(\mathbf{v}\), \(\mathbf{x}\) | bir vektör (kalın) | Bölüm 2 |
| \(v_i\) | \(\mathbf{v}\)’nin \(i\)’nci bileşeni (düz) | Bölüm 2 |
| \(\mathbf{A}\), \(\mathbf{W}\) | bir matris (kalın büyük harf) | Bölüm 7 |
| \(\mathbf{a} \cdot \mathbf{b}\) | iç çarpım | Bölüm 2 |
| \(\lVert \mathbf{v} \rVert\) | bir vektörün uzunluğu (norm) | Bölüm 2 |
| \(\cos(\mathbf{a}, \mathbf{b})\) | kosinüs benzerliği | Bölüm 2 |
| \(\lvert V \rvert\) | sözlük boyutu | Bölüm 2 |
| \(d\) | embedding boyutu | Bölüm 3 |
| \(n\) | madde sayısı ya da n-gram derecesi | Bölüm 22 |
| \(\theta\) | model parametreleri, topluca | Bölüm 6 |
| \(P(A \mid B)\) | \(B\) verildiğinde \(A\)’nın olasılığı | Bölüm 6 |
| \(w_i\), \(w_{<i}\) | \(i\)’nci token; ondan önceki tüm token’lar | Bölüm 6 |
| \(\mathbb{E}[\cdot]\) | beklenti | Bölüm 22 |
| \(\text{softmax}(\cdot)\) | puanlardan olasılıklara | Bölüm 7 |
| \(T\) | sıcaklık | Bölüm 18 |
| \(\sum_i\), \(\prod_i\) | \(i\) üzerinden toplam ve çarpım | Bölüm 6 |
| \(\mathcal{L}\) | bir kayıp işlevi | Bölüm 6 |
| \(Q\), \(K\), \(V\) | sorgu, anahtar ve değer matrisleri | Bölüm 7 |
| \(k\) | tutulan şeylerin sayısı — ışınlar, komşular, belgeler | Bölüm 19 |
Daha geniş literatürde tutarsız oldukları için dile getirilmeye değen iki uzlaşım ve uyarılmaya değen bir çakışma.
Kalın bir vektör ya da matris, düz bir skaler anlamına geliyor — \(\mathbf{v}\) bir vektör, \(v_i\) onun içindeki bir sayı. Seçilmiş değil literatürden devralınmış tek istisna: attention’ın (dikkat mekanizması) \(Q\), \(K\) ve \(V\)’si matris olduğu hâlde düz yazılır, çünkü konuyla ilgili her makale öyle yazıyor ve onları kalınlaştırmak bu kitabı tuhaf olan taraf yapardı.
\(k\) genellikle tutulan şeylerin sayısıdır — ışın genişliği (Bölüm 15), komşu (Bölüm 19), belge (Bölüm 20). İki yerde indis: ikisi de bir vektörün bileşenleri üzerinde değil, sınıflar ya da örnekler üzerinde toplam. Bölüm 4’ün macro-\(F_1\)’i \(K\) sınıf üzerinden ortalama alıyor, Bölüm 3’ün negatif örnekleme kaybı \(K\) negatif üzerinden topluyor. Akılda tutulacak ayrım şu: \(i\) bileşenleri indeksliyor, \(k\) ise boyutu kendisi bir parametre olan bir kümeyi.
\(V\) iki anlam taşıyor ve aralarında bir bölüm var. \(\lvert V \rvert\), Bölüm 2’den itibaren söz varlığı büyüklüğü; süssüz \(V\) ise Bölüm 7’deki attention’ın değer matrisi. İkisini bağlamdan başka hiçbir şey ayırmıyor; bu, literatürün yerleştiği uzlaşım ve bu kitabın tek başına düzeltebileceği bir şey değil.