ݺߣ

ݺߣShare a Scribd company logo
Geniş Dil
Modelleri ve
Uygulamaları
Alper Nebi Kanlı
Hepsiburada
2024
www.alpernebikanli.com
Giriş
• Geniş dil modelleri, son yıllarda hızlıca hayatımıza girdi.
• ChatGPT, Claude, GitHub Copilot gibi araçları kullanmak
gittikçe sıradanlaştı.
• Modeller basitçe metin üretmek veya metin üzerinde klasik
NLP görevleri icra etmekten çok daha ileriye gitti.
Peki buraya nasıl
geldik?
• Makine öğrenmesi modelleri, matematiksel işlemler yaparak
veri içerisindeki örüntüleri öğrenirler.
• Haliyle, verinin tamamı buna uygun hale getirilmelidir.
• Bunu yapmaya basit yöntemlerle başladık:
• Ancak bu yöntemde bir problem vardı: kelimeler arasında
aslında var olmayan bir sayısal ilişki kuruluyordu.
• Bu durumu ortadan kaldıracak farklı yöntemler (mesela one-
hot encoding) denemeliydik:
Bu yöntemde ise iki önemli problem vardı:
• Kelimeler arasındaki ilişki herhangi bir şekilde ifade
edilemiyordu
• Büyük ve seyrek veri, model eğitimini zorlaştırıyordu
Bu problemler bir yanda beklerken, en azından dökümanlar
arası anlamsal ilişkileri çözmeye yönelik adımlar atılıyordu.
• Bag-of-Words, TF-IDF, LSA, LDA.
Tüm bu yöntemlere rağmen, bazı önemli problemler hala
çözülemiyordu:
• Kelimeler arasında anlamsal ilişki gösterilemiyordu.
Kelimeler hala birer «atom»du.
• Kelimelerın sıralaması anlamı etkiler. Bu yöntemlerde
kelime sırasının herhangi bir önemi yoktu.
• Hala seyrek vektörlerle uğraşıyorduk, makine öğrenmesi
verimli bir şekilde gerçekleştirilemiyordu.
Sonrasında çok
önemli bir adım
atıldı…
• «You shall know a word by
the company it keeps.»
John Rupert Firth
• Word2Vec modeliyle
doğal dil işleme alanında
yeni bir çağ başladı.
• Word Embeddings.
KING – MAN + WOMAN = QUEEN
WALKED - WALKING + SWIMMING = SWAM
HANOI – VIETNAM + TURKEY = ANKARA
Word2Vec, GloVe ve benzeri yöntemlerin de bazı problemleri
vardı:
• Statik vektörler üretiyorlardı. Yani işin sonunda her kelimenin
bağlamından bağımsız, değişmeyen vektörleri oluyordu.
• Kelime sırası hala önemli değildi.
• Sabit bir kelime seti üzerinde çalışılabiliyordu. Yeni kelimeler
tanınamıyordu.
• Kelimeler ve cümleler arasındaki derin ve uzak ilişkiler
yakalanamıyordu.
Bir yandan out-of-
vocabulary (eğitim
datasında bulunmayan
kelimeler) sorunu
çözülmeye çalışılıyordu.
Bir yandan da kelime
sırası problemi çeşitli
yöntemlerle çözülmeye
çalışılıyordu (çözülüyordu
da!)
Bazı problemler hala çözülememişti:
• Hala statik vektörler üretiliyordu. Yani işin sonunda her
kelimenin bağlamından bağımsız, değişmeyen vektörleri
oluyordu.
• RNN ve LSTM’ler yapıları gereği paralelleştirmeye uygun değildi.
• Giriş ve çıkış verileri farklı uzunlukta olduğunda sorunlar
yaşanıyordu.
• Kelimeler ve cümleler arasındaki derin ve uzak ilişkiler
yakalanmasında hala sorunlar yaşanıyordu.
Girdi ve çıktının farklı uzunluklarda olması problemi «Encoder-Decoder»
mimarisiyle çözüldü.
Bununla birlikte, «Attention» mekanizmasıyla, verinin (cümlelerin) hangi
parçasının daha önemli olduğu bilgisi de modeller tarafından öğrenilmeye
ve kullanılmaya başlandı.
«Attention is All You Need»
«Transformer» Mimarisi
• Artık RNN ve LSTM gibi mimariler bir
kenara bırakılıp, daha kolay
paralelleştirilebilen yapılar
kullanılabilirdi.
• 2018’de, kelime vektörlerinin bağlama
göre değişebildiği bir modelin (ELMo)
makalesi yayınlandı, ancak o modelde
hala RNN’ler kullanılıyordu.
• Ancak önemli bir problem vardı:
vektörler hala statikti, yani kelimelerin
anlamları bulundukları yerlere göre
değişemiyordu.
İki önemli fikir bir
araya gelmeliydi…
BERT ve GPT
• 2018’de yayınlanan BERT (Bidirectional Encoder
Representations from Transformers) ve GPT (Generative Pre-
trained Transformer) modelleri, doğal dil işleme alanında
büyük bir çığır açıp yeni bir dönem başlattı: Geniş Dil
Modelleri Dönemi.
• BERT anlama işlerinde iyiyken, GPT metin üretme işlerinde
iyiydi.
• Her ikisi de Transformer mimarisini kullanmakta, aynı
zamanda bağlamsal vektörlerden de yararlanmaktalardı.
• 2020’lerde, Transformer
temelli modellerin
gelişimiyle ilgili iki önemli
keşif yapıldı.
• Bunlardan biri, modeller
büyüdükçe doğal dil işleme
yeteneğinin öngörülebilir
bir biçimde artacağının
anlaşılmasıydı. (Scaling
Laws)
• Bir diğeri ise, Few-Shot/Zero-Shot Learning’di. Bu keşif, GPT-3 modeliyle
birlikte olgunlaştı.
• Fine-tuning’e ihtiyaç duyulmadan modellere özelleşmiş işler yaptırılabiliyordu.
• Prompt engineering hayatımıza girdi.
Post-GPT Dönemi
• Bütün bu keşifler, bizi bugünkü geniş dil modeli tabanlı
uygulamalara getirdi.
• Dil modelleri, kelimeler arası bağlantıları öğrenirken,
ölçekleri büyüdükçe aslında kelimeler aracılığıyla fiziksel
gerçeklerin bir modelini öğreniyorlardı.
• Kelimeleri bir notasyon gibi düşünebiliriz. Aslında modellere
bu notasyonu öğrettik, ve bu notasyon aracılığıyla da
dünyayı.
Peki neler
yapabiliyoruz?
Soru Cevap ve RAG
• Şu an belki pek çoğumuzun kullanıyor olduğu ChatGPT,
Claude, Grok ve benzeri ürünler geniş bir kapsamda
sorularımızı cevaplayabilmekteler.
• Hatta, zero-shot ve few-shot learning yetenekleri sayesinde
sorgu içerisinde verdiğimiz bilgilerden yararlanarak mantık
yürütebilmekteler.
• Ve hatta, Retrieval Augmented Generation (RAG)
sistemleri sayesinde spesifik işlere özel dil modeli sistemleri
kurabilmekteyiz.
https://qdrant.tech/articles/what-is-rag-in-
ai/
Kodlama Asistanları
• Dil modelleri, metin üretiminde olduğu gibi kod üretiminde
de iyiler.
• 2024’ün Eylül ayında yapılmış olan bir araştırmaya göre (The
Effects of Generative AI on High Skilled Work, Cui et al., 2024),
yapay zeka asistanları yazılım geliştirme sürecinde %26’lık bir
verimlilik artışı sağlamaktadır.
• GitHub Copilot, Cursor gibi yapay zeka destekli IDEler, v0
gibi arayüz geliştiriciler.
İş ve Araştırma Araçları
• Gün geçtikçe yapay zeka araçları daha fazla iş akışına dahil oluyor.
• Perplexity ve Phind gibi araçlar araştırma süreçlerini hızlandırıyor.
• Sağlık ve hukuk gibi kritik alanlarda verimlilik artışı sağlamayı
hedefleyen araçlar gün geçtikçe gelişiyor ve artıyor.
• Bu araçların küçük etkileri büyük faydalar sağlayabilir.
Farklı neler
yapabiliriz?
Yapay Zeka Aracıları
• RAG’den bir adım ötesine geçmek.
• Yapay zeka aracıları, AI agents, son günlerde gittikçe
popülerliği artan bir alan.
• Dil modelleri, potansiyelleri metin üretmeyi aşan yapılardır.
• OpenAI Swarm, Claude, Langchain
• Dil modellerinin
kapasitelerinden etkin bir
şekilde yararlanamıyor olabiliriz.
• Ve bu aslında bir UI/UX
problemi olabilir.
https://thesephist.com/posts/
synth/
https://wattenberger.com/thoughts/yay-embeddings-math
https://thesephist.com/posts/spc/
https://www.etched.com/blog-posts/oasis
Teşekkür
Ederim
www.alpernebikanli.com
www.superpeer.com/alpernkanli
alperonai.substack.com

More Related Content

Geniş Dil Modelleri ve Uygulamaları_final.pptx

  • 1. Geniş Dil Modelleri ve Uygulamaları Alper Nebi Kanlı Hepsiburada 2024 www.alpernebikanli.com
  • 2. Giriş • Geniş dil modelleri, son yıllarda hızlıca hayatımıza girdi. • ChatGPT, Claude, GitHub Copilot gibi araçları kullanmak gittikçe sıradanlaştı. • Modeller basitçe metin üretmek veya metin üzerinde klasik NLP görevleri icra etmekten çok daha ileriye gitti.
  • 4. • Makine öğrenmesi modelleri, matematiksel işlemler yaparak veri içerisindeki örüntüleri öğrenirler. • Haliyle, verinin tamamı buna uygun hale getirilmelidir. • Bunu yapmaya basit yöntemlerle başladık:
  • 5. • Ancak bu yöntemde bir problem vardı: kelimeler arasında aslında var olmayan bir sayısal ilişki kuruluyordu. • Bu durumu ortadan kaldıracak farklı yöntemler (mesela one- hot encoding) denemeliydik:
  • 6. Bu yöntemde ise iki önemli problem vardı: • Kelimeler arasındaki ilişki herhangi bir şekilde ifade edilemiyordu • Büyük ve seyrek veri, model eğitimini zorlaştırıyordu Bu problemler bir yanda beklerken, en azından dökümanlar arası anlamsal ilişkileri çözmeye yönelik adımlar atılıyordu. • Bag-of-Words, TF-IDF, LSA, LDA.
  • 7. Tüm bu yöntemlere rağmen, bazı önemli problemler hala çözülemiyordu: • Kelimeler arasında anlamsal ilişki gösterilemiyordu. Kelimeler hala birer «atom»du. • Kelimelerın sıralaması anlamı etkiler. Bu yöntemlerde kelime sırasının herhangi bir önemi yoktu. • Hala seyrek vektörlerle uğraşıyorduk, makine öğrenmesi verimli bir şekilde gerçekleştirilemiyordu.
  • 8. Sonrasında çok önemli bir adım atıldı…
  • 9. • «You shall know a word by the company it keeps.» John Rupert Firth • Word2Vec modeliyle doğal dil işleme alanında yeni bir çağ başladı. • Word Embeddings.
  • 10. KING – MAN + WOMAN = QUEEN WALKED - WALKING + SWIMMING = SWAM HANOI – VIETNAM + TURKEY = ANKARA
  • 11. Word2Vec, GloVe ve benzeri yöntemlerin de bazı problemleri vardı: • Statik vektörler üretiyorlardı. Yani işin sonunda her kelimenin bağlamından bağımsız, değişmeyen vektörleri oluyordu. • Kelime sırası hala önemli değildi. • Sabit bir kelime seti üzerinde çalışılabiliyordu. Yeni kelimeler tanınamıyordu. • Kelimeler ve cümleler arasındaki derin ve uzak ilişkiler yakalanamıyordu.
  • 12. Bir yandan out-of- vocabulary (eğitim datasında bulunmayan kelimeler) sorunu çözülmeye çalışılıyordu.
  • 13. Bir yandan da kelime sırası problemi çeşitli yöntemlerle çözülmeye çalışılıyordu (çözülüyordu da!)
  • 14. Bazı problemler hala çözülememişti: • Hala statik vektörler üretiliyordu. Yani işin sonunda her kelimenin bağlamından bağımsız, değişmeyen vektörleri oluyordu. • RNN ve LSTM’ler yapıları gereği paralelleştirmeye uygun değildi. • Giriş ve çıkış verileri farklı uzunlukta olduğunda sorunlar yaşanıyordu. • Kelimeler ve cümleler arasındaki derin ve uzak ilişkiler yakalanmasında hala sorunlar yaşanıyordu.
  • 15. Girdi ve çıktının farklı uzunluklarda olması problemi «Encoder-Decoder» mimarisiyle çözüldü.
  • 16. Bununla birlikte, «Attention» mekanizmasıyla, verinin (cümlelerin) hangi parçasının daha önemli olduğu bilgisi de modeller tarafından öğrenilmeye ve kullanılmaya başlandı.
  • 17. «Attention is All You Need» «Transformer» Mimarisi • Artık RNN ve LSTM gibi mimariler bir kenara bırakılıp, daha kolay paralelleştirilebilen yapılar kullanılabilirdi. • 2018’de, kelime vektörlerinin bağlama göre değişebildiği bir modelin (ELMo) makalesi yayınlandı, ancak o modelde hala RNN’ler kullanılıyordu. • Ancak önemli bir problem vardı: vektörler hala statikti, yani kelimelerin anlamları bulundukları yerlere göre değişemiyordu.
  • 18. İki önemli fikir bir araya gelmeliydi…
  • 19. BERT ve GPT • 2018’de yayınlanan BERT (Bidirectional Encoder Representations from Transformers) ve GPT (Generative Pre- trained Transformer) modelleri, doğal dil işleme alanında büyük bir çığır açıp yeni bir dönem başlattı: Geniş Dil Modelleri Dönemi. • BERT anlama işlerinde iyiyken, GPT metin üretme işlerinde iyiydi. • Her ikisi de Transformer mimarisini kullanmakta, aynı zamanda bağlamsal vektörlerden de yararlanmaktalardı.
  • 20. • 2020’lerde, Transformer temelli modellerin gelişimiyle ilgili iki önemli keşif yapıldı. • Bunlardan biri, modeller büyüdükçe doğal dil işleme yeteneğinin öngörülebilir bir biçimde artacağının anlaşılmasıydı. (Scaling Laws)
  • 21. • Bir diğeri ise, Few-Shot/Zero-Shot Learning’di. Bu keşif, GPT-3 modeliyle birlikte olgunlaştı. • Fine-tuning’e ihtiyaç duyulmadan modellere özelleşmiş işler yaptırılabiliyordu. • Prompt engineering hayatımıza girdi.
  • 22. Post-GPT Dönemi • Bütün bu keşifler, bizi bugünkü geniş dil modeli tabanlı uygulamalara getirdi. • Dil modelleri, kelimeler arası bağlantıları öğrenirken, ölçekleri büyüdükçe aslında kelimeler aracılığıyla fiziksel gerçeklerin bir modelini öğreniyorlardı. • Kelimeleri bir notasyon gibi düşünebiliriz. Aslında modellere bu notasyonu öğrettik, ve bu notasyon aracılığıyla da dünyayı.
  • 24. Soru Cevap ve RAG • Şu an belki pek çoğumuzun kullanıyor olduğu ChatGPT, Claude, Grok ve benzeri ürünler geniş bir kapsamda sorularımızı cevaplayabilmekteler. • Hatta, zero-shot ve few-shot learning yetenekleri sayesinde sorgu içerisinde verdiğimiz bilgilerden yararlanarak mantık yürütebilmekteler. • Ve hatta, Retrieval Augmented Generation (RAG) sistemleri sayesinde spesifik işlere özel dil modeli sistemleri kurabilmekteyiz.
  • 26. Kodlama Asistanları • Dil modelleri, metin üretiminde olduğu gibi kod üretiminde de iyiler. • 2024’ün Eylül ayında yapılmış olan bir araştırmaya göre (The Effects of Generative AI on High Skilled Work, Cui et al., 2024), yapay zeka asistanları yazılım geliştirme sürecinde %26’lık bir verimlilik artışı sağlamaktadır. • GitHub Copilot, Cursor gibi yapay zeka destekli IDEler, v0 gibi arayüz geliştiriciler.
  • 27. İş ve Araştırma Araçları • Gün geçtikçe yapay zeka araçları daha fazla iş akışına dahil oluyor. • Perplexity ve Phind gibi araçlar araştırma süreçlerini hızlandırıyor. • Sağlık ve hukuk gibi kritik alanlarda verimlilik artışı sağlamayı hedefleyen araçlar gün geçtikçe gelişiyor ve artıyor. • Bu araçların küçük etkileri büyük faydalar sağlayabilir.
  • 29. Yapay Zeka Aracıları • RAG’den bir adım ötesine geçmek. • Yapay zeka aracıları, AI agents, son günlerde gittikçe popülerliği artan bir alan. • Dil modelleri, potansiyelleri metin üretmeyi aşan yapılardır. • OpenAI Swarm, Claude, Langchain
  • 30. • Dil modellerinin kapasitelerinden etkin bir şekilde yararlanamıyor olabiliriz. • Ve bu aslında bir UI/UX problemi olabilir. https://thesephist.com/posts/ synth/