paint-brush
Büyük Dil Modelleri: Transformers'ı Keşfetmek - Bölüm 2ile@shyamganesh
1,533 okumalar
1,533 okumalar

Büyük Dil Modelleri: Transformers'ı Keşfetmek - Bölüm 2

ile Shyam Ganesh S5m2024/05/22
Read on Terminal Reader
Read this story w/o Javascript

Çok uzun; Okumak

Transformatör modelleri, Doğal Dil İşleme (NLP) görevlerinde yaygın olarak kullanılan bir tür derin öğrenme sinir ağı modelidir. Son yıllarda transformatörler birçok Büyük Dil Modelinde (LLM) temel model olarak kullanılmıştır. Bu blogda transformatörleri, bileşenlerini, nasıl çalıştıklarını ve çok daha fazlasını keşfedeceğiz.

People Mentioned

Mention Thumbnail
Mention Thumbnail

Companies Mentioned

Mention Thumbnail
Mention Thumbnail

Coin Mentioned

Mention Thumbnail
featured image - Büyük Dil Modelleri: Transformers'ı Keşfetmek - Bölüm 2
Shyam Ganesh S HackerNoon profile picture


Merhaba okuyucular, Büyük Dil Modellerinin (LLM'ler) büyüleyici dünyasına dalarken bana katılmanızdan heyecan duyuyorum. Yüksek Lisans'ın gelişimi çeşitli alanlardaki insanların ilgisini çekti. Bu konuya yeniyseniz doğru yerdesiniz. Bu blogda transformatörleri, bileşenlerini, nasıl çalıştıklarını ve çok daha fazlasını inceleyeceğiz.


başlamaya hazır mısın? Hadi dalalım!

NLP'deki Transformatörler

Transformatör modelleri, Doğal Dil İşleme (NLP) görevlerinde yaygın olarak kullanılan bir tür derin öğrenme sinir ağı modelidir. Transformatör modelleri, verilen giriş verilerinin bağlamını bir dizi olarak öğrenme ve ondan yeni veriler üretme konusunda uzmandır. Son yıllarda transformatörler birçok Büyük Dil Modelinde (LLM) temel model olarak kullanılmıştır.

Transformers'ın Tarihi

Transformatör mimarisi, Haziran 2017'de " İhtiyacınız Olan Tek Şey Dikkat " başlıklı makalede tanıtıldı. Transformatörlerin tanıtılmasının ardından NLP alanı, transformatör mimarisi etrafında büyük ölçüde gelişti. Birçok Büyük Dil Modeli (LLM) ve önceden eğitilmiş model, omurgası bir transformatör ile piyasaya sürüldü. NLP alanındaki dönüştürücülerin evrimine kısa bir genel bakış görelim.


Transformatörlerin tarihi. (Resim kredisi: HuggingFace)

Haziran 2018'de ilk transformatör tabanlı GPT (Generatif Önceden Eğitimli Transformatörler) tanıtıldı. Aynı yılın sonlarında BERT (Transformatörlerden Çift Yönlü Kodlayıcı Gösterimleri) piyasaya sürüldü. Şubat 2019'da OpenAI tarafından GPT'nin gelişmiş sürümü yani GPT-2 piyasaya sürüldü. Aynı yıl, XLM ve RoBERTa gibi birçok önceden eğitilmiş model uygulamaya konarak NLP alanını daha da rekabetçi hale getirdi.


2020 yılından itibaren NLP alanı, birçok yeni önceden eğitilmiş modelin piyasaya sürülmesiyle patlama yaşadı. Bu modellerin büyümesi büyük ölçüde transformatör mimarisine bağlıydı. Yukarıdakiler listeden sadece birkaç temsilcidir, oysa gerçek dünya senaryolarında trafo mimarisi üzerinde geliştirilen birçok model bile vardır.


Transformatörlerin yapısını incelemeden önce bazı temel kavramları anlayalım.

Ön eğitim

Ön eğitim, bir Makine Öğrenimi (ML) modelini sıfırdan eğitme eylemidir. Eğitim prosedürü başlangıçta modelin ağırlıklarının rastgele seçilmesiyle başlar. Bu aşamada, öğrenme için modele büyük miktarda veri beslenir. Tipik olarak bu eğitim aşaması maliyetli ve zaman alıcıdır.

Ön eğitim ve İnce ayar. (Resim kredisi: Wikipedia)


İnce ayar

İnce ayar, alana özgü bilgilerle önceden eğitilmiş bir model üzerinde gerçekleştirilen bir eğitim prosedürüdür. Önceden eğitilmiş modeller kapsamlı bilgi edinmiş ve bu da onları belirli alanlar için daha az uygun hale getirmiştir. Bu süreçte, önceden eğitilmiş model yeniden eğitilir, ancak bazı kavramları zaten öğrenmiş olduğundan maliyeti düşer.


Önceden eğitilmiş bir model üzerinde ince ayar yapmak için transfer öğrenme tekniğini kullanırız. Transfer öğrenimi, bir modelin bir kullanım senaryosundan öğrendiği bilgileri başka bir kullanım senaryosundaki çıkarımları tahmin etmek için uyguladığı bir makine öğrenme yöntemidir.

Kodlayıcı

Bir transformatördeki kodlayıcı, veri dizisini giriş olarak alır ve verilen giriş dizisi için bir vektör dizisi üretir. Kodlayıcı modelleri bunu, içlerinde bulunan öz-dikkat katmanlarını kullanarak gerçekleştirir. Bu kişisel dikkat katmanlarını daha sonra daha ayrıntılı olarak tartışacağız.


Bu modeller sıklıkla "çift yönlü" dikkate sahip olarak tanımlanır ve sıklıkla otomatik kodlama modelleri olarak anılır. Kodlayıcı modelleri öncelikle Cümle sınıflandırmasında ve Adlandırılmış Varlık Tanıma'da (NER) kullanılır.

Yalnızca kodlayıcılı modeller, mimarisinde yalnızca kodlayıcı bulunan transformatör modelleridir. Modelin metnin altında yatan temsili anlamayı amaçladığı metin sınıflandırma gibi kullanım durumlarında oldukça etkilidirler.


Kodlayıcı ve Kod Çözücü. (Resim kredisi: Orta)


Kod çözücü

Bir transformatördeki kod çözücü, bir dizi vektörü girdi olarak alır ve bir dizi çıktı jetonu üretir. Bu çıktı belirteçleri, oluşturulan metindeki kelimelerdir. Kodlayıcılar gibi kod çözücüler de birçok kişisel dikkat katmanını kullanır. Kod çözücü modellerinin ön eğitimi genellikle cümledeki bir sonraki kelimenin tahmin edilmesi etrafında döner. Bu modeller, metin oluşturmayı içeren görevler için en uygun olanlardır.

Yalnızca kod çözücülü modeller, mimarisinde yalnızca kod çözücülerin bulunduğu transformatör modelleridir. Metin oluşturmada oldukça etkilidirler. Kod çözücüler çıktı belirteçleri (metin) oluşturma konusunda uzmanlaşmıştır. Makine çevirisi ve metin özetleme, yalnızca kod çözücü modellerinin üstün olduğu birkaç kullanım durumudur.

Dikkat Katmanları

Dönüştürücüdeki öz-dikkat katmanları, modelin giriş metnindeki kelimeler arasındaki uzun vadeli bağımlılıkları öğrenmesine olanak tanır.

Başka bir deyişle, bu katman modele verilen giriş metnindeki belirli kelimelere daha fazla dikkat etmesi talimatını verecektir.

Model bunu giriş sırasındaki metin çiftleri arasındaki benzerlik puanını hesaplayarak yapar. Katman daha sonra bu puanı giriş vektörünün ağırlıklarını hesaplamak için kullanır. Bu katmanların çıktısı ağırlıklı girdi vektörleridir.


Artık kodlayıcıların, kod çözücülerin ve dikkat katmanlarının temel kavramları hakkında bir fikriniz olduğuna göre, transformatörlerin mimarisine dalalım.


Transformatörlerin Mimarisi

Transformatör modelinin yapısı aşağıda gösterilen görsele benzemektedir.


Transformatörün mimarisi. (Resim kredisi: HuggingFace)


Kodlayıcılar sol tarafa, kod çözücüler ise sağ tarafa yerleştirilir. Kodlayıcılar metin dizisini girdi olarak kabul eder ve çıktı olarak kod çözücülere girdi olarak beslenen bir dizi vektör üretir. Kod çözücüler bir dizi çıktı jetonu üretecektir. Kodlayıcılar kişisel dikkat katmanlarıyla istiflenir.


Her katman bir girdi vektörü alır ve daha önce tartıştığımız öz-dikkat mekanizmasına dayalı olarak ağırlıklı bir girdi vektörü döndürür. Ağırlıklı toplam, kişisel dikkat katmanının çıktısıdır.


Kod çözücü ayrıca bir dizi kişisel dikkat katmanı ve bir Tekrarlayan Sinir Ağı (RNN) içerir. Öz-dikkat katmanları kodlayıcılarla aynı şekilde çalışır, ancak RNN, vektörlerin ağırlıklı toplamını çıktı belirteçlerine dönüştürme sorumluluğunu üstlenecektir. Bu nedenle, RNN'nin ağırlıklı vektörleri girdi olarak kabul ettiği ve çıktı tokenlarını çıktı olarak ürettiği artık açık olmalıdır. Basit bir ifadeyle çıktı belirteçleri, çıktı cümlesinde bulunan kelimelerdir.


Transformatörleri kod düzeyinde anlamak için, Transformers'ın bu PyTorch uygulamasına göz atmanızı takdir ediyorum.


Çözüm

Transformatörler, büyük miktarda veriyi işlemede mükemmelleşerek Yapay Zeka (AI) ve Doğal Dil İşleme (NLP) alanında devrim yarattı. Google'ın BERT ve OpenAI'nin GPT serisi gibi önde gelen modeller, arama motorları ve metin oluşturma üzerindeki dönüştürücü etkilerini sergiliyor.


Sonuç olarak, yapay zekanın sınırlarını zorlayarak ve teknolojik ilerleme için yeni fırsatlar yaratarak modern makine öğreniminin vazgeçilmezi haline geldiler. Sonuç olarak, modern makine öğreniminin vazgeçilmezi haline geldiler, yapay zekanın sınırlarını ileriye taşıdılar ve teknolojik gelişmelerde yeni yollar açtılar.


Mutlu öğrenme!


Referanslar

Bu serinin Büyük Dil Modelleri (LLM'ler) hakkındaki diğer makalelerine bakın: