In-Context Learning (TR)
Bağlam içi öğrenme (İng. In-Context Learning, ICL) — büyük dil modellerinin (LLM) temel bir yeteneğidir; modeller bu yetenek sayesinde yalnızca sorgu bağlamında (prompt'ta) sunulan örnekleri (gösterimler) kullanarak yeni görevleri "anında" öğrenebilir. Bu sürecin temel özelliği, uyum sürecinin model ağırlıklarının (parametrelerinin) güncellenmesi olmaksızın, yani geleneksel fine-tuning yapılmadan gerçekleşmesidir[1][2].
Bu mekanizma, modellerin özellikle eğitilmedikleri görevleri de çözebilmesini sağlayarak şaşırtıcı bir esneklik sergilemelerine olanak tanır. ICL, büyük dil modellerini bu denli güçlü ve çok yönlü kılan kilit atılımlardan biri hâline gelmiştir[3].
Çalışma Mekanizmaları
ICL'nin tam olarak nasıl çalıştığı aktif bir araştırma alanı olmayı sürdürmektedir; ancak bu olguyu açıklamaya yönelik birkaç önde gelen kuram mevcuttur.
Transformer - Meta-Optimizer Olarak Transformer
Popüler kuramlardan birine göre Transformer mimarisi, ön eğitim sırasında ileri geçişlerinde (forward passes) öğrenme algoritmalarını uygulamayı öğrenir. Model, örnekler içeren bir prompt aldığında ağırlıklarını değil, iç durumlarını (aktivasyonlarını) ayarlayarak sunulan görevi çözmek için örtük bir optimizasyon gerçekleştirir[4].
Bayesian Inference - Bayes Çıkarımı
Bir diğer kuram ise ICL'yi Bayes çıkarımının bir biçimi olarak ele alır. Devasa veri kümeleri üzerinde ön eğitimden geçmiş model, pek çok kavram için önsel (priori) bir temsile sahiptir. Bağlamdaki örnekler, modelin gizli kavramlar üzerindeki sonsal (posteriori) olasılık dağılımını iyileştirmesine olanak tanıyan kanıtlar işlevi görür. Başka bir deyişle örnekler, modelin o an hangi görevi çözmesi gerektiğini "anlamasına" yardımcı olur[5].
In-Context Learning Türleri
Sağlanan örnek sayısına bağlı olarak ICL üç temel türe ayrılır.
- Few-shot Learning (birkaç örnekle öğrenme): En yaygın ve dengeli yaklaşımdır. Modele birkaç (genellikle 2 ile 10 arasında) gösterim örneği sunulur.
Örnek (duygu sınıflandırması):
Текст: "Какой прекрасный день!" Тональность: Позитивная Текст: "Я ненавижу стоять в пробках." Тональность: Негативная Текст: "Этот фильм был довольно средним." Тональность:
Beklenen yanıt:
Нейтральная
- One-shot Learning (tek örnekle öğrenme): Modele yalnızca bir örnek verilir. Bu çoğunlukla yanıt biçimini belirlemek ve zero-shot yaklaşıma kıyasla performansı önemli ölçüde artırmak için yeterlidir.
- Zero-shot Learning (örneksiz öğrenme): Modele örnek sunulmaz; yalnızca bir talimat veya görev açıklaması verilir. Bu durumda model, tamamen ön eğitim sırasında edindiği bilgilere dayanır.
Pratik Uygulama
ICL'nin doğru uygulanması, maliyetli geliştirme ve fine-tuning gerektirmeksizin geniş bir görev yelpazesini çözmeye olanak tanır.
- Yaratıcı ve üslupsal görevler için (belirli bir tarzda kod üretme, belirli bir yazarın üslubunda metin yazma):
- Few-shot Learning önerilir.
- Örnekler, modelin istenen üslubu, biçimi ve çıktı yapısını kavramasına yardımcı olur.
- Net talimatlara sahip basit görevler için (çeviri, özetleme, basit sorulara yanıt verme):
- Çoğunlukla Zero-shot Learning yeterlidir.
- Modern modeller, ön eğitimlerinin parçası olan bu tür görevleri oldukça iyi yerine getirmektedir.
- Çıktı biçiminin önem taşıdığı görevler için (JSON üretimi, varlık çıkarımı):
- One-shot veya Few-shot Learning önerilir.
- Tek bir örnek bile biçimlendirme hatalarını önleyerek istenen yanıt yapısını açıkça ortaya koyabilir.
Avantajlar ve Dezavantajlar
| Avantajlar | Dezavantajlar |
|---|---|
|
|
Diğer Paradigmalarla Karşılaştırma
ICL vs. Fine-tuning
Fine-tuning, yeni bilgileri modele "işleyerek" model ağırlıklarını değiştirir. Bu, modeli dar bir alanda uzmanlaştırır; ancak genel esnekliğini azaltır. ICL ise ağırlıkları değiştirmez ve daha esnek bir yapı sunar; bununla birlikte derin alan bilgisi gerektiren dar uzmanlık görevlerinde performans açısından geride kalabilir.
ICL vs. RAG (Retrieval-Augmented Generation)
Her iki yöntem de modelin bağlamını genişletir; ancak farklı amaçlara hizmet eder:
- ICL, modele bir görevi nasıl yerine getireceğini öğretmek için örnekler kullanır (beceri gösterimi).
- RAG, modele yanıt vermek için gereken gerçekleri bildirmek amacıyla çıkarılan bilgileri kullanır (bilgi sağlama).
Pratikte ICL ve RAG, en iyi sonuçları elde etmek için sıklıkla birlikte kullanılır.
Kaynakça
- Brown, T. B. et al. (2020). Language Models are Few-Shot Learners. arXiv:2005.14165.
- Dai, D. et al. (2022). Why Can GPT Learn In-Context? Language Models Implicitly Perform Gradient Descent as Meta-Optimizers. arXiv:2212.10559.
- Panwar, M.; Ahuja, K.; Goyal, N. (2024). In-Context Learning through the Bayesian Prism. arXiv:2306.04891.
- Müller, S. et al. (2021). Transformers Can Do Bayesian Inference. arXiv:2112.10510.
- Garg, S. et al. (2022). What Can Transformers Learn In-Context? A Case Study of Simple Function Classes. arXiv:2208.01066.
- Min, S. et al. (2022). Rethinking the Role of Demonstrations: What Makes In-Context Learning Work?. arXiv:2202.12837.
- Wang, X. et al. (2023). Explaining and Finding Good Demonstrations for In-Context Learning. arXiv:2302.13971.
- Xie, S. et al. (2024). A Survey on In-Context Learning. arXiv:2301.00234.
- Yu, Z.; Ananiadou, S. (2024). How Do Large Language Models Learn In-Context? Query and Key Matrices of In-Context Heads Are Two Towers for Metric Learning. arXiv:2402.02872.
- Wibisono, K. C.; Wang, Y. (2024). From Unstructured Data to In-Context Learning: Exploring What Tasks Can Be Learned and When. arXiv:2406.00131.
- Chan, J. K. et al. (2022). Data Distributional Properties Drive Emergent In-Context Learning in Transformers. arXiv:2205.05055.
- Hahn, M.; Goyal, N. (2023). A Theory of Emergent In-Context Learning as Implicit Structure Induction. arXiv:2303.07971.
Notlar
- ↑ What is In-Context Learning (ICL)? // Lakera.ai
- ↑ In-Context Learning (ICL) // Hopsworks.ai
- ↑ In-Context Learning, In Context // The Gradient
- ↑ Why Can GPT Learn In-Context? Language Models Secretly Perform Gradient Descent as Meta-Optimizers // arXiv, 2022.
- ↑ Understanding In-Context Learning // Stanford Human-Centered AI, 2023.