Connect with us

NLP Yükselişi ile Transformer Modelleri | T5, BERT ve GPT’nin Kapsamlı Analizi

Yapay Zekâ

NLP Yükselişi ile Transformer Modelleri | T5, BERT ve GPT’nin Kapsamlı Analizi

mm
Guide on NLP

Doğal Dil İşleme (NLP), son yıllarda transformer mimarisi sayesinde en önemli atılımlarından bazılarını deneyimledi. Bu atılımlar, makinelerin insan dilini anlaması ve üretmesi yeteneklerini yalnızca geliştirmekle kalmadı, aynı zamanda arama motorlarından konuşma AI’lerine kadar birçok uygulamanın peyzajını yeniden tanımladı.

Transformerlerin önemini tam olarak takdir etmek için, bu devrimci mimarinin temelini oluşturan öncüller ve yapı taşlarına geri bakmamız必要.

Erken NLP Teknikleri: Transformerlerden Önceki Temeller

Kelime Gömme: One-Hot’tan Word2Vec’e

Geleneksel NLP yaklaşımlarında, kelimelerin temsil edilmesi genellikle literal ve herhangi bir anlamsal veya sentaktik anlama sahip değildi. One-hot kodlama, bu sınırlamanın başlıca bir örneğidir.

One-hot kodlama, kategorik değişkenlerin bir ikili vektör temsiline dönüştürülmesi sürecidir, burada yalnızca bir bit “sıcak” (1’e ayarlanır), diğerleri ise “soğuk” (0’a ayarlanır). NLP bağlamında, sözcüklerin her biri, her bir sözcüğün ilgili sözcük listesindeki dizine karşılık gelen bir vektörde 1 ve diğerlerinde 0 ile temsil edilir.

One-Hot Kodlamanın Örneği

Diyelim ki sadece beş kelimeden oluşan küçük bir sözlüğümüz var: [“kral”, “kraliçe”, “adam”, “kadın”, “çocuk”]. Her kelimenin one-hot kodlama vektörleri şöyle görünür:

  • “kral” -> [1, 0, 0, 0, 0]
  • “kraliçe” -> [0, 1, 0, 0, 0]
  • “adam” -> [0, 0, 1, 0, 0]
  • “kadın” -> [0, 0, 0, 1, 0]
  • “çocuk” -> [0, 0, 0, 0, 1]

Matematiksel Temsil

Eğer olarak sözlüğümüzün boyutunu ve olarak i. kelimenin one-hot vektör temsilini belirtirsek, matematiksel temsilini şöyle yazabiliriz:

i. konum 1 ve diğer tüm konumlar 0’dır.

One-hot kodlamanın büyük bir dezavantajı, her kelimeyi diğer kelimelerle ilişkisi olmayan bir varlık olarak ele almasıdır. Bu, anlamsal veya sentaktik bilgi içermez ve yüksek boyutlu vektörler oluşturur.

Word2Vec’in tanıtılması, özellikle 2013 yılında Google’daki bir ekip tarafından Tomas Mikolov liderliğinde geliştirilen, NLP’de önemli bir andı. Word2Vec, kelimeleri büyük metin koleksiyonlarındaki bağlamlarına dayanarak sentaktik ve anlamsal kelime ilişkilerini yakalayan yoğun bir vektör uzayında temsil etti.

One-hot kodlamanın aksine, Word2Vec yoğun vektörler üretir, genellikle yüzlerce boyutu vardır. Benzer bağlamlarda görünen kelimeler, vektör uzayında birbirlerine daha yakın olacaktır.

Örneğin, diyelim ki Word2Vec modelini eğittik ve şimdi kelimeleri üç boyutlu bir uzayda temsil ediyoruz (gerçekte daha fazla boyut içerebilir, ancak basitlik için üç boyutlu olarak ele alıyoruz). Gömme (embbeding) ler (genellikle 3 boyutlu olmasa da basitleştirme için böyle ele alıyoruz) şöyle görünür:

  • “kral” -> [0.2, 0.1, 0.9]
  • “kraliçe” -> [0.21, 0.13, 0.85]
  • “adam” -> [0.4, 0.3, 0.2]
  • “kadın” -> [0.41, 0.33, 0.27]
  • “çocuk” -> [0.5, 0.5, 0.1]

Bu sayılar uydurmadır, ancak benzer kelimelerin benzer vektörleri nasıl sahip olduğunu gösterir.

Matematiksel Temsil

Eğer bir kelimenin Word2Vec gömme temsilini , ve gömme uzayımız boyutuna sahipse, o zaman şöyle temsil edilebilir:

Anlamsal İlişkiler

Word2Vec, analogi gibi karmaşık ilişkileri bile yakalayabilir. Örneğin, Word2Vec gömme lerinin yakaladığı ünlü ilişki:

vector(“kral”) – vector(“adam”) + vector(“kadın”)≈vector(“kraliçe”)

Bu, Word2Vec’in kelime vektörlerini, kelimelerin ortak bağlamlarını paylaşmaları durumunda, eğitim sırasında vektör uzayında birbirlerine yakın konumlarda olmasını sağlar.

Word2Vec, kelimelerin dağıtılmış temsilini üretmek için iki ana mimari kullanır: Sürekli Kelime Torbası (CBOW) ve Atla-Gram. CBOW, bir hedef kelimeyi çevreleyen bağlamsal kelimelerden öngörür, Atla-Gram ise bunun tersini yapar, bir hedef kelimeyi öngörür ve bağlamsal kelimeleri öngörür. Bu, makinelerin kelime kullanımını ve anlamını daha nüanslı bir şekilde anlamalarına olanak tanıdı.

… (devam ediyor)

Son beş yıldır Makine Öğrenimi ve Derin Öğrenme dünyasına kendimi daldırmış bulunuyorum. Tutkum ve uzmanlığım, özellikle AI/ML odaklı 50'den fazla çeşitli yazılım mühendisliği projesine katkıda bulunmama yol açtı. Süregelen meraklılığım ayrıca beni Doğal Dil İşleme'ye doğru çekti, bu alanda daha fazla keşfetmeye hevesliyim.