In-Context Learning (SV)

From Systems analysis Wiki
Jump to navigation Jump to search

Kontextuellt lärande (eng. In-Context Learning, ICL) — är en grundläggande förmåga hos stora språkmodeller (LLM) att lära sig nya uppgifter "på flygande fot", med hjälp av enbart exempel (demonstrationer) som tillhandahålls i kontexten (prompten) för en förfrågan. Den viktigaste egenskapen är att denna anpassningsprocess sker utan uppdatering av modellens vikter (parametrar), det vill säga utan traditionell fine-tuning[1][2].

Denna mekanism gör det möjligt för modeller att uppvisa anmärkningsvärd flexibilitet och lösa uppgifter som de inte har tränats specifikt för. ICL har blivit ett av de viktigaste genombrotten som har gjort stora språkmodeller så kraftfulla och mångsidiga[3].

Arbetsprinciper

En exakt förståelse av hur ICL fungerar är fortfarande ett aktivt forskningsområde, men det finns flera ledande teorier som förklarar detta fenomen.

Transformer som meta-optimerare

En populär teori hävdar att Transformer-arkitekturen under förträningen lär sig att implementera inlärningsalgoritmer i sina forward passes. När modellen tar emot en prompt med exempel utför den implicit en slags optimering för att lösa den presenterade uppgiften, genom att justera sina interna tillstånd (aktiveringar) snarare än vikterna[4].

Bayesiansk slutledning

En annan teori betraktar ICL som en form av bayesiansk slutledning. En modell som förtränas på enorma datamängder har en förhandsinställning (prior) om ett stort antal koncept. Exemplen i kontexten fungerar som bevis som gör det möjligt för modellen att förfina sin posteriora sannolikhetsfördelning över latenta koncept. Med andra ord hjälper exemplen modellen att "förstå" exakt vilken av de tusentals uppgifter den känner till som behöver lösas vid det aktuella tillfället[5].

Typer av In-Context Learning

Beroende på antalet tillhandahållna exempel delas ICL in i tre huvudtyper.

  • Few-shot Learning (inlärning på några få exempel): Detta är det vanligaste och mest balanserade tillvägagångssättet. Modellen ges några få (vanligtvis 2 till 10) demonstrationsexempel.

Exempel (sentimentklassificering):

Текст: "Какой прекрасный день!"
Тональность: Позитивная

Текст: "Я ненавижу стоять в пробках."
Тональность: Негативная

Текст: "Этот фильм был довольно средним."
Тональность:

Förväntat svar:

Нейтральная
  • One-shot Learning (inlärning på ett enda exempel): Modellen ges bara ett enda exempel. Detta är ofta tillräckligt för att definiera svarsformatet och avsevärt förbättra prestandan jämfört med zero-shot-metoden.
  • Zero-shot Learning (inlärning utan exempel): Modellen ges inga exempel, utan enbart en instruktion eller uppgiftsbeskrivning. I detta fall förlitar sig modellen helt på kunskaper som förvärvats under förträningen.

Praktisk tillämpning

Korrekt tillämpning av ICL gör det möjligt att lösa ett brett spektrum av uppgifter utan kostsam utveckling och fine-tuning.

  • För kreativa och stilistiska uppgifter (kodgenerering i en viss stil, skrivande i en specifik authors manér):
    • Few-shot Learning rekommenderas.
    • Exempel hjälper modellen att fånga den önskade stilen, formatet och utdatastrukturen.
  • För enkla uppgifter med tydliga instruktioner (översättning, sammanfattning, svar på enkla frågor):
    • Zero-shot Learning räcker ofta.
    • Moderna modeller klarar sådana uppgifter tillräckligt bra om de ingick i deras förträning.
  • För uppgifter där utdataformatet är viktigt (JSON-generering, entitetsextraktion):
    • One-shot eller Few-shot Learning rekommenderas.
    • Redan ett enda exempel kan tydligt definiera den önskade svarsstrukturen och förhindra formateringsfel.

Fördelar och nackdelar

Jämförelse av ICL:s fördelar och nackdelar
Fördelar Nackdelar
  • Flexibilitet och hastighet: Omedelbar anpassning till nya uppgifter utan behov av omträning.
  • Resursbesparing: Kräver ingen datainsamling, märkning eller beräkningsresurser för fine-tuning.
  • Tillgänglighet: Gör det möjligt för användare utan ML-expertis att anpassa modeller med hjälp av enkla textexempel.
  • Begränsningar i kontextfönstret: Antalet exempel begränsas av modellens maximala kontextlängd.
  • Känslighet för exempel: Resultatet beror starkt på kvaliteten, ordningen och formatet på de tillhandahållna demonstrationerna.
  • Höga kostnader vid inferens: Långa promptar med många exempel ökar kostnaden och genereringstiden.
  • Säkerhetsrisker: Att skicka konfidentiell information som exempel kan vara osäkert.

Jämförelse med andra paradigm

ICL vs. Fine-tuning

Fine-tuning förändrar modellens vikter och "bränner in" ny kunskap i den. Detta gör modellen till en expert inom ett smalt område, men minskar dess övergripande flexibilitet. ICL å andra sidan ändrar inte vikterna och är mer flexibelt, men kan prestera sämre på smalt specialiserade uppgifter där djup domänkunskap krävs.

ICL vs. RAG (Retrieval-Augmented Generation)

Båda metoderna utökar modellens kontext, men för olika syften:

  • ICL använder exempel för att lära modellen hur man utför en uppgift (demonstration av en färdighet).
  • RAG använder hämtad information för att meddela modellen fakta som behövs för svaret (tillhandahållande av kunskap).

I praktiken kombineras ICL och RAG ofta för att uppnå bästa möjliga resultat.

Litteratur

  • 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.

Noter