Blog tanıtımı
- Sebastian Raschka'nın "Build a Large Language Model (from Scratch)" kitabını temel alan blog serisinin sekizinci yazısıdır.
- Bu yazıda "trainable self-attention"ın nasıl uygulanacağı ele alınıyor.
GPT türü yalnızca decoder kullanan transformer tabanlı LLM'lerin çalışma şekli
- Metin dizisi token'lara bölünür ve her token bir vektör dizisine eşlenerek token embedding'leri oluşturulur.
- Konumsal embedding'ler üretilerek giriş embedding dizisi oluşturulur.
- Giriş embedding'leri kullanılarak her token için attention score'ları üretilir.
- Attention score'ları normalize edilerek attention weight'leri oluşturulur.
- Her token için context vector'leri oluşturulur.
Scaled dot-product attention mekanizması
- Giriş dizisi üç matrise (query, key, value) yansıtılarak attention score'ları hesaplanır.
- Attention score'ları normalize edilerek attention weight'leri oluşturulur ve bunlar kullanılarak context vector'leri hesaplanır.
- Tüm bu süreç verimli matris çarpımlarıyla gerçekleştirilir.
Matrislerle uzaylar arası projeksiyon
- Matrisler, vektörleri farklı boyutlardaki uzaylara yansıtmak için kullanılır.
- Giriş embedding'leri query, key ve value uzaylarına yansıtılarak attention score'ları hesaplanır.
Attention score'larının normalizasyonu
- Attention score'larını normalize etmek için softmax fonksiyonu kullanılır.
- Küçük gradyan sorununu çözmek için boyutun kareköküne bölünerek normalizasyon yapılır.
Context vector'lerinin oluşturulması
- Attention weight'leri kullanılarak her token'ın context vector'ü hesaplanır.
- Giriş embedding'leri value uzayına yansıtılır ve attention weight'leriyle ağırlıklı toplam alınarak context vector'leri oluşturulur.
Sonraki adımlar
- Causal self-attention ve multi-head attention ele alınacak.
- Self-attention mekanizmasının "neden"ine dair bir inceleme planlanıyor.
Sonuç
- Bu blog yazısı, self-attention mekanizmasını anlamaya yardımcı olabilir.
- Ek sorular veya görüşler yorumlarda paylaşılabilir.
Henüz yorum yok.