Generated Knowledge Prompting (SV)

From Systems analysis Wiki
Jump to navigation Jump to search

Generated Knowledge Prompting (GKP, prompting med kunskapsgenerering) — är en metod inom prompt engineering, utvecklad för att förbättra stora språkmodellers (LLM) förmåga att lösa uppgifter som kräver resonemang och stöd av faktakunskaper[1]. Grundidén med GKP är att få modellen att utföra uppgiften i två steg: först generera en uppsättning relevanta fakta om ämnet för förfrågan, och sedan, med stöd av dessa kunskaper, formulera det slutliga svaret[2].

Detta tillvägagångssätt gör det möjligt för LLM att aktivera och använda sina interna, parametriserade kunskaper, som är implicit kodade i miljarder parametrar men ofta inte är tillgängliga vid standardförfrågningar. GKP löser problemet när modeller "inte vet vad de vet", och hjälper dem att koppla samman spridda fakta för att bygga korrekta slutledningar[2].

Historia och ursprung

Metoden Generated Knowledge Prompting presenterades för första gången i den vetenskapliga artikeln "Generated Knowledge Prompting for Commonsense Reasoning", utarbetad av en forskargrupp under ledning av Jiacheng Liu. Den ursprungliga versionen av arbetet publicerades i preprint-arkivet arXiv den 15 oktober 2021, och den slutliga versionen presenterades vid den prestigefyllda konferensen Association for Computational Linguistics (ACL) år 2022[1].

GKP blev en av de första och mest betydelsefulla metoderna som föreslog en förändring av paradigmet för interaktion med LLM, genom att flytta fokus från omedelbar svarsgenerering till en tvåstegsbaserad kognitiv process.

Tvåstegsmekanismens funktion

GKP:s mekanism delar upp en komplex uppgift i två enklare delprocesser: extraktion av relevant information och dess efterföljande användning för slutledning.

Steg 1: Kunskapsgenerering (Knowledge Generation)

I det första steget används en språkmodell ("kunskapsgeneratorn") för att skapa flera (M) kunskapsfragment som är relevanta för den ursprungliga frågan. Denna process initieras med hjälp av tekniken few-shot prompting, där modellen förses med några exempel för inlärning "i kontext".

Prompten för kunskapsgenerering har en strikt definierad struktur:

  1. Instruktion: En allmän anvisning, till exempel: "Generera några fakta om ämnet".
  2. Demonstrationsexempel: Några par av "fråga–kunskap" skrivna av en människa. Dessa exempel spelar en kritiskt viktig roll, eftersom de lär modellen vilken typ av information som anses användbar. Därvid bör den genererade kunskapen inte innehålla svaret direkt.
  3. Ny fråga: Användarens ursprungliga förfrågan, för vilken kunskaper ska genereras.

För en fråga genereras M varianter av kunskaper (i det ursprungliga arbetet M=20), för att få en varierad uppsättning fakta till det andra steget[1].

Steg 2: Kunskapsintegration och svarsgenerering (Knowledge Integration)

I det andra steget används en annan språkmodell ("inferensmodellen"), som kan arbeta antingen i zero-shot-läge eller vara finjusterad för en specifik uppgift.

Integrationsprocessen sker på följande sätt:

  1. Förfrågningsaugmentering: Den ursprungliga frågan (q) kombineras sekventiellt med var och en av de M genererade kunskapsfragmenten (km). Som resultat skapas M+1 augmenterade förfrågningar (inklusive den ursprungliga frågan utan kunskaper).
  2. Utvärdering och sval av svar: Inferensmodellen utvärderar den villkorliga sannolikheten för varje möjligt svarsalternativ (a) för varje augmenterad förfrågan. Det slutliga svaret blir det alternativ som fått den högsta sannolikhetsbedömningen för minst en av förfrågningarna.

Denna tvåstegsmekanik introducerar en slags metakognitiv process: "Innan du svarar, tänk igenom och formulera vad du vet om detta ämne".

Effektivitet och testresultat

GKP:s effektivitet testades på ett antal akademiska benchmark för utvärdering av resonemang baserat på sunt förnuft. Metoden visade en betydande prestandaförbättring jämfört med grundläggande tillvägagångssätt.

Sammanfattning av GKP:s resultat på de viktigaste benchmarken (data från Liu et al., 2022)[1]
Benchmarknamn Uppgift Grundmodellens noggrannhet (%) Noggrannhet med GKP (%) Förbättring (%)
NumerSense Numeriskt sunt förnuft 64.05 72.47 +8.42
CommonsenseQA Allmänt sunt förnuft 39.89 47.26 +7.37
CommonsenseQA 2.0 Allmänt sunt förnuft 70.20 73.03 +2.83
QASC Vetenskapligt sunt förnuft 76.74 80.33 +3.59

Den största förbättringen observeras i zero-shot-läget, vilket bevisar GKP:s förmåga att effektivt aktivera modellens interna kunskaper utan ytterligare finjustering.

Jämförande analys med andra tekniker

GKP vs. Chain-of-Thought (CoT)

Den viktigaste skillnaden mellan GKP och Chain-of-Thought (CoT) ligger i typen av information som genereras:

  • GKP genererar deklarativa kunskaper — fakta, definitioner, påståenden om världen ("vad"). Det ger modellen ytterligare kontext.
  • CoT genererar procedurella kunskaper — logiska steg, beräkningar, en sekvens av slutledningar ("hur"). Det ger modellen en resonemangsväg.

Således tillhandahåller GKP en faktamässig grund, medan CoT tillhandahåller en logisk slutledningsstruktur[3].

GKP vs. Retrieval-Augmented Generation (RAG)

Till skillnad från GKP använder metoden Retrieval-Augmented Generation (RAG) externa, icke-parametriska kunskapskällor.

  • GKP använder interna kunskaper som modellen tillägnat sig under träningen. Det får modellen att "minnas" vad den redan vet.
  • RAG använder externa kunskaper från databaser, dokument eller internet. Det får modellen att "söka" information i den yttre världen.

Valet mellan GKP och RAG beror på uppgiften: GKP är effektivt om de nödvändiga kunskaperna är allmänt kända och väl representerade i träningsdata, medan RAG är oumbärligt för högspecialiserade, aktuella eller proprietära data.

Begränsningar och risker

  • Problemet med "hallucinationer": Den huvudsakliga risken med GKP är möjligheten att generera felaktiga fakta. Om modellen i det första steget genererar ett falskt påstående, kommer det i det andra steget att uppfattas som sant, vilket leder till ett säkert men fullständigt felaktigt svar.
  • Beräkningskostnader: Metoden kräver upprepade anrop till LLM (M+1 anrop för en förfrågan), vilket avsevärt ökar svarstiden (latency) och användningskostnaden jämfört med standardprompting.
  • Svårigheter med promptutveckling: GKP:s effektivitet beror starkt på kvaliteten hos few-shot-exemplen, vars skapande är en icke-trivial och tidskrävande uppgift.

Utveckling och hybrida tillvägagångssätt

Idéerna inbyggda i GKP fungerade som katalysator för utvecklingen av mer komplexa och robusta promptingtekniker, såsom:

  • Hint-before-Solving (HSP): En direkt idémässig efterföljare till GKP, som tillämpar tvåstegspr principen ("kunskap först, sedan handling") inte på ett enkelt svar, utan på en mer komplex resonemangsprocess i CoT[4].
  • Verify-and-Edit (VE): Ett hybridt ramverk som är ett svar på problemet med "hallucinationer" i GKP och CoT. VE genererar först en resonemangskedja (som CoT), verifierar sedan automatiskt nyckelfall med hjälp av extern sökning (som RAG) och redigerar resonemanget innan det slutliga svaret genereras[5].

Referenser

  • Generated Knowledge Prompting i Prompt Engineering Guide

Litteratur

  • Liu, J. et al. (2021). Generated Knowledge Prompting for Commonsense Reasoning. arXiv:2110.08387
  • Liu, J. et al. (2022). Generated Knowledge Prompting for Commonsense Reasoning. In *Proc. ACL 2022*. ACL:2022
  • Wei, J. et al. (2022). Chain-of-Thought Prompting Elicits Reasoning in Large Language Models. arXiv:2201.11903
  • Wang, X. et al. (2022). Self-Consistency Improves Chain-of-Thought Reasoning in Language Models. arXiv:2203.11171
  • Fu, J. et al. (2024). Hint-before-Solving Prompting: Guiding LLMs to Effectively Utilize Encoded Knowledge. arXiv:2402.14310
  • Zhao, R. et al. (2023). Verify-and-Edit: A Knowledge-Enhanced Chain-of-Thought Framework. arXiv:2305.03268
  • Lin, B. et al. (2020). NumerSense: Probing Numerical Commonsense Knowledge of Pre-trained Language Models. Dataset page
  • Talmor, A. et al. (2019). CommonsenseQA: A Question-Answering Challenge Targeting Commonsense Knowledge. ACL paper
  • Khot, T. et al. (2019). QASC: A Dataset for Question Answering via Sentence Composition. arXiv:1910.11473
  • Mu, J. et al. (2023). Learning to Compress Prompts with Gist Tokens. arXiv:2304.08467

Noter

  1. 1.0 1.1 1.2 1.3 Liu, J., Liu, A., Lu, X., et al. (2022). «Generated Knowledge Prompting for Commonsense Reasoning». Proceedings of the 60th Annual Meeting of the Association for Computational Linguistics. [1]
  2. 2.0 2.1 Liu, J., Liu, A., Lu, X., et al. (2021). «Generated Knowledge Prompting for Commonsense Reasoning». arXiv preprint arXiv:2110.08387. [2]
  3. Wei, J., Wang, X., Schuurmans, D., et al. (2022). «Chain-of-Thought Prompting Elicits Reasoning in Large Language Models». arXiv preprint arXiv:2201.11903. [3]
  4. Katz, O., Maman, Y., et al. (2024). «Hint-before-Solving Prompting: Guiding LLMs to Effectively Utilize Scaffolding». arXiv preprint arXiv:2402.14310. [4]
  5. Zhao, R., Zhang, J., et al. (2023). «Verify-and-Edit: A Knowledge-Enhanced Chain-of-Thought Framework». arXiv preprint arXiv:2305.03268. [5]