stub Avkodarbaserade stora språkmodeller: En komplett guide - Unite.AI
Anslut dig till vårt nätverk!

Artificiell intelligens

Avkodarbaserade stora språkmodeller: En komplett guide

mm
Uppdaterad on
Avkodarbaserade stora språkmodeller: En komplett guide

Stora språkmodeller (LLMs) har revolutionerat området för naturlig språkbehandling (NLP) genom att visa anmärkningsvärda möjligheter att generera mänsklig text, svara på frågor och hjälpa till med ett brett utbud av språkrelaterade uppgifter. Kärnan i dessa kraftfulla modeller ligger transformatorarkitektur endast avkodare, en variant av den ursprungliga transformatorarkitekturen som föreslagits i tidningen "Uppmärksamhet är allt du behöver” av Vaswani et al.

I den här omfattande guiden kommer vi att utforska det inre arbetet hos avkodarbaserade LLM:er, gräva ner oss i de grundläggande byggstenarna, arkitektoniska innovationer och implementeringsdetaljer som har drivit dessa modeller till framkanten av NLP-forskning och -applikationer.

The Transformer Architecture: A Refresher

Innan du dyker in i detaljerna hos dekoderbaserade LLM:er är det viktigt att återvända till transformatorarkitekturen, grunden på vilken dessa modeller är byggda. Transformatorn introducerade ett nytt tillvägagångssätt för sekvensmodellering, som enbart förlitar sig på uppmärksamhetsmekanismer för att fånga långväga beroenden i data, utan behov av återkommande eller faltningslager.

Transformers arkitektur

Transformers arkitektur

Den ursprungliga transformatorarkitekturen består av två huvudkomponenter: en kodare och en avkodare. Kodaren bearbetar inmatningssekvensen och genererar en kontextualiserad representation, som sedan konsumeras av avkodaren för att producera utmatningssekvensen. Denna arkitektur designades ursprungligen för maskinöversättningsuppgifter, där kodaren bearbetar den inmatade meningen på källspråket och avkodaren genererar motsvarande mening på målspråket.

Självuppmärksamhet: Nyckeln till Transformers framgång

I hjärtat av transformator ligger självuppmärksamhetsmekanismen, en kraftfull teknik som gör att modellen kan väga och aggregera information från olika positioner i inmatningssekvensen. Till skillnad från traditionella sekvensmodeller, som behandlar inmatningstokens sekventiellt, gör självuppmärksamhet det möjligt för modellen att fånga beroenden mellan vilket par av token som helst, oavsett deras position i sekvensen.

Multiquery uppmärksamhet

Multiquery uppmärksamhet

Självuppmärksamhetsoperationen kan delas upp i tre huvudsteg:

  1. Fråge-, nyckel- och värdeprognoser: Inmatningssekvensen projiceras i tre separata representationer: sökfrågor (Q), nycklar (K), och värden (V). Dessa projektioner erhålls genom att multiplicera inmatningen med inlärda viktmatriser.
  2. Beräkning av uppmärksamhetspoäng: För varje position i inmatningssekvensen beräknas uppmärksamhetspoäng genom att ta punktprodukten mellan motsvarande frågevektor och alla nyckelvektorer. Dessa poäng representerar relevansen av varje position för den aktuella positionen som bearbetas.
  3. Vägd summa av värden: Uppmärksamhetspoängen normaliseras med hjälp av en softmax-funktion, och de resulterande uppmärksamhetsvikterna används för att beräkna en viktad summa av värdevektorerna, vilket ger utmatningsrepresentationen för den aktuella positionen.

Multi-head uppmärksamhet, en variant av självuppmärksamhetsmekanismen, tillåter modellen att fånga olika typer av relationer genom att beräkna uppmärksamhetspoäng över flera "huvuden” parallellt, var och en med sin egen uppsättning av fråge-, nyckel- och värdeprojektioner.

Arkitektoniska varianter och konfigurationer

Medan kärnprinciperna för dekoderbaserade LLM:er förblir konsekventa, har forskare utforskat olika arkitektoniska varianter och konfigurationer för att förbättra prestanda, effektivitet och generaliseringsförmåga. I det här avsnittet kommer vi att fördjupa oss i de olika arkitektoniska valen och deras konsekvenser.

Arkitekturtyper

Avkodarbaserade LLM:er kan brett klassificeras i tre huvudtyper: kodare-avkodare, kausal avkodare och prefixavkodare. Varje arkitekturtyp uppvisar distinkta uppmärksamhetsmönster.

Encoder-Decoder Architecture

Baserat på vanilla Transformer-modellen består kodar-avkodararkitekturen av två staplar: en kodare och en avkodare. Kodaren använder staplade självuppmärksamhetsskikt med flera huvuden för att koda inmatningssekvensen och generera latenta representationer. Avkodaren utför sedan korsuppmärksamhet på dessa representationer för att generera målsekvensen. Även om de är effektiva i olika NLP-uppgifter, är det få LLM:er, som t.ex Flan-T5, anta den här arkitekturen.

Causal Decoder Architecture

Den kausala avkodararkitekturen innehåller en enkelriktad uppmärksamhetsmask, vilket gör att varje inmatningstoken endast kan ta hänsyn till tidigare tokens och sig själv. Både ingångs- och utmatningstoken bearbetas i samma avkodare. Anmärkningsvärda modeller som GPT-1, GPT-2 och GPT-3 är byggda på denna arkitektur, med GPT-3 som visar upp anmärkningsvärda inlärningsmöjligheter i sammanhanget. Många LLMs, inklusive OPT, BLOOM och Gopher, har allmänt antagit kausala avkodare.

Prefix Decoder Architecture

Även känd som den icke-kausala avkodaren, modifierar prefixavkodararkitekturen maskeringsmekanismen för kausala avkodare för att möjliggöra dubbelriktad uppmärksamhet över prefixtokens och enkelriktad uppmärksamhet på genererade tokens. Precis som kodar-avkodararkitekturen kan prefixavkodare koda prefixsekvensen dubbelriktat och förutsäga utdatatokens autoregressivt med hjälp av delade parametrar. LLM:er baserade på prefixavkodare inkluderar GLM130B och U-PaLM.

Alla tre arkitekturtyperna kan utökas med hjälp av blandning av experter (MoE) skalningsteknik, som sparsamt aktiverar en delmängd av neurala nätverksvikter för varje ingång. Detta tillvägagångssätt har använts i modeller som Switch Transformer och GLaM, med ett ökat antal experter eller total parameterstorlek som visar betydande prestandaförbättringar.

Transformator med endast dekoder: Omfamna den autoregressiva naturen

Medan den ursprungliga transformatorarkitekturen designades för sekvens-till-sekvens-uppgifter som maskinöversättning, kan många NLP-uppgifter, såsom språkmodellering och textgenerering, ramas in som autoregressiva problem, där modellen genererar en token i taget, beroende på tidigare genererade tokens.

Ange transformatorn endast för avkodare, en förenklad variant av transformatorarkitekturen som bara behåller avkodarkomponenten. Den här arkitekturen är särskilt väl lämpad för autoregressiva uppgifter, eftersom den genererar utdatatoken en efter en, och utnyttjar de tidigare genererade tokens som indatakontext.

Den viktigaste skillnaden mellan transformatorn med endast avkodare och den ursprungliga transformatoravkodaren ligger i självuppmärksamhetsmekanismen. I inställningen endast för avkodare, modifieras självuppmärksamhetsoperationen för att förhindra att modellen tar hand om framtida tokens, en egenskap som kallas kausalitet. Detta uppnås genom en teknik som kallas "maskerad självuppmärksamhet", där uppmärksamhetspoäng som motsvarar framtida positioner sätts till negativ oändlighet, vilket effektivt maskerar dem under softmax-normaliseringssteget.

Arkitektoniska komponenter i dekoderbaserade LLM:er

Medan kärnprinciperna för självuppmärksamhet och maskerad självuppmärksamhet förblir desamma, har moderna dekoderbaserade LLM:er introducerat flera arkitektoniska innovationer för att förbättra prestanda, effektivitet och generaliseringsmöjligheter. Låt oss utforska några av nyckelkomponenterna och teknikerna som används i toppmoderna LLM:er.

Input representation

Innan inmatningssekvensen bearbetas använder avkodarbaserade LLM:er tokeniserings- och inbäddningstekniker för att konvertera den råa texten till en numerisk representation som är lämplig för modellen.

vektor inbäddning

vektor inbäddning

tokenization: Tokeniseringsprocessen omvandlar den inmatade texten till en sekvens av tokens, som kan vara ord, underord eller till och med enskilda tecken, beroende på vilken tokeniseringsstrategi som används. Populära tokeniseringstekniker för LLM inkluderar Byte-Pair Encoding (BPE), SentencePiece och WordPiece. Dessa metoder syftar till att hitta en balans mellan ordförrådsstorlek och representationsgranularitet, vilket gör att modellen kan hantera sällsynta ord eller ord utanför ordförrådet effektivt.

Tokeninbäddningar: Efter tokenisering mappas varje token till en tät vektorrepresentation som kallas en token-inbäddning. Dessa inbäddningar lärs in under träningsprocessen och fångar semantiska och syntaktiska relationer mellan tokens.

Positionella inbäddningar: Transformatormodeller bearbetar hela inmatningssekvensen samtidigt, utan den inneboende uppfattningen om tokenpositioner som finns i återkommande modeller. För att införliva positionsinformation läggs positionsinbäddningar till i tokeninbäddningarna, vilket gör att modellen kan skilja mellan tokens baserat på deras positioner i sekvensen. Tidiga LLM:er använde fasta positionsinbäddningar baserade på sinusformade funktioner, medan nyare modeller har utforskat inlärbara positionsinbäddningar eller alternativa positionskodningstekniker som roterande positionsinbäddningar.

Uppmärksamhetsblock med flera huvuden

De centrala byggstenarna i avkodarbaserade LLM:er är uppmärksamhetslager med flera huvuden, som utför den maskerade självuppmärksamhetsoperationen som beskrivits tidigare. Dessa lager staplas flera gånger, där varje lager tar hand om resultatet från det föregående lagret, vilket gör att modellen kan fånga allt mer komplexa beroenden och representationer.

Uppmärksamhetshuvud: Varje uppmärksamhetslager med flera huvuden består av flera "uppmärksamhetshuvuden", var och en med sin egen uppsättning av fråge-, nyckel- och värdeprojektioner. Detta gör att modellen kan ta hänsyn till olika aspekter av input samtidigt, och fånga olika relationer och mönster.

Resterande anslutningar och lagernormalisering: För att underlätta träningen av djupa nätverk och mildra problemet med försvinnande gradienter, använder avkodarbaserade LLM:er kvarvarande anslutningar och skiktnormaliseringstekniker. Resterande anslutningar lägger till ingången av ett lager till dess utdata, vilket gör att gradienter kan flyta lättare under backpropagation. Lagernormalisering hjälper till att stabilisera aktiveringarna och gradienterna, vilket ytterligare förbättrar träningens stabilitet och prestation.

Frammatningslager

Förutom multi-head uppmärksamhetslager, innehåller dekoderbaserade LLM:er frammatningslager, som applicerar ett enkelt frammatningsneuralt nätverk på varje position i sekvensen. Dessa lager introducerar icke-linjäriteter och gör det möjligt för modellen att lära sig mer komplexa representationer.

Aktiveringsfunktioner: Valet av aktiveringsfunktion i frammatningsskikten kan avsevärt påverka modellens prestanda. Medan tidigare LLM:er förlitade sig på den allmänt använda ReLU-aktiveringen, har nyare modeller antagit mer sofistikerade aktiveringsfunktioner som Gaussian Error Linear Unit (GELU) eller SwiGLU-aktiveringen, som har visat förbättrad prestanda.

Sparsam uppmärksamhet och effektiva transformatorer

Även om självuppmärksamhetsmekanismen är kraftfull, kommer den med en kvadratisk beräkningskomplexitet med avseende på sekvenslängden, vilket gör den beräkningsmässigt dyr för långa sekvenser. För att möta denna utmaning har flera tekniker föreslagits för att minska beräknings- och minneskraven för självuppmärksamhet, vilket möjliggör effektiv bearbetning av längre sekvenser.

Gles uppmärksamhet: Spara uppmärksamhetstekniker, som den som används i GPT-3-modellen, tar selektivt hänsyn till en undergrupp av positioner i inmatningssekvensen, snarare än att beräkna uppmärksamhetspoäng för alla positioner. Detta kan avsevärt minska beräkningskomplexiteten samtidigt som rimlig prestanda bibehålls.

Skjutfönster Uppmärksamhet: Introducerad i Mistral 7B-modellen, är skjutfönster uppmärksamhet (SWA) en enkel men effektiv teknik som begränsar uppmärksamhetsintervallet för varje token till en fast fönsterstorlek. Detta tillvägagångssätt utnyttjar transformatorskiktens förmåga att överföra information över flera lager, vilket effektivt ökar uppmärksamhetsspannet utan den kvadratiska komplexiteten av full självuppmärksamhet.

Rolling Buffer Cache: För att ytterligare minska minneskraven, särskilt för långa sekvenser, använder Mistral 7B-modellen en rullande buffertcache. Denna teknik lagrar och återanvänder de beräknade nyckel- och värdevektorerna för en fast fönsterstorlek, vilket undviker redundanta beräkningar och minimerar minnesanvändningen.

Uppmärksamhet på grupperad fråga: Introducerad i LLaMA 2-modellen, grouped query attention (GQA) är en variant av multi-query uppmärksamhetsmekanismen som delar upp uppmärksamhetshuvuden i grupper, där varje grupp delar en gemensam nyckel- och värdematris. Detta tillvägagångssätt uppnår en balans mellan effektiviteten av uppmärksamhet med flera frågor och prestanda för standard självuppmärksamhet, vilket ger förbättrade slutledningstider samtidigt som resultat av hög kvalitet bibehålls.

Uppmärksamhet på grupperad fråga

Uppmärksamhet på grupperad fråga

Modellstorlek och skalning

En av de definierande egenskaperna hos moderna LLM:er är deras stora skala, med antalet parametrar som sträcker sig från miljarder till hundratals miljarder. Att öka modellstorleken har varit en avgörande faktor för att uppnå toppmodern prestanda, eftersom större modeller kan fånga mer komplexa mönster och samband i data.

Parameterräkning: Antalet parametrar i en avkodarbaserad LLM bestäms primärt av inbäddningsdimensionen (d_model), antalet uppmärksamhetshuvuden (n_heads), antalet lager (n_layers) och vokabulärstorleken (vocab_size). Till exempel har GPT-3-modellen 175 miljarder parametrar, med d_model = 12288, n_heads = 96, n_lager = 96och vocab_size = 50257.

Modell Parallellism: Utbildning och distribution av sådana enorma modeller kräver betydande beräkningsresurser och specialiserad hårdvara. För att övervinna denna utmaning har modellparallellismtekniker använts, där modellen är uppdelad över flera GPU:er eller TPU:er, där varje enhet ansvarar för en del av beräkningarna.

Blandning av experter: Ett annat tillvägagångssätt för att skala LLM är mix-of-experts (MoE)-arkitekturen, som kombinerar flera expertmodeller, var och en specialiserad på en specifik delmängd av data eller uppgift. Mixtral 8x7B-modellen är ett exempel på en MoE-modell som utnyttjar Mistral 7B som basmodell, vilket uppnår överlägsen prestanda med bibehållen beräkningseffektivitet.

Slutledning och textgenerering

Ett av de primära användningsfallen för dekoderbaserade LLM:er är textgenerering, där modellen genererar sammanhängande och naturligt klingande text baserat på en given uppmaning eller kontext.

Autoregressiv avkodning: Under slutledning genererar avkodarbaserade LLM:er text på ett autoregressivt sätt, och förutsäger en token i taget baserat på de tidigare genererade tokens och inmatningsprompten. Denna process fortsätter tills ett förutbestämt stoppkriterium är uppfyllt, såsom att nå en maximal sekvenslängd eller generera en slut-av-sekvens-token.

Samplingsstrategier: För att generera mångsidig och realistisk text kan olika samplingsstrategier användas, såsom top-k-sampling, top-p-sampling (även känd som nucleus sampling) eller temperaturskalning. Dessa tekniker kontrollerar avvägningen mellan mångfald och koherens i den genererade texten genom att justera sannolikhetsfördelningen över ordförrådet.

Snabb ingenjörskonst: Kvaliteten och specificiteten hos inmatningsuppmaningen kan avsevärt påverka den genererade texten. Snabb ingenjörskonst, konsten att skapa effektiva uppmaningar, har dykt upp som en avgörande aspekt av att utnyttja LLM:er för olika uppgifter, vilket gör det möjligt för användare att vägleda modellens genereringsprocess och uppnå önskade resultat.

Human-in-the-loop-avkodning: För att ytterligare förbättra kvaliteten och koherensen i genererad text, tekniker som Förstärkning Lärande av mänsklig feedback (RLHF) har anställts. I detta tillvägagångssätt ger mänskliga bedömare feedback på modellens genererade text, som sedan används för att finjustera modellen, effektivt anpassa den till mänskliga preferenser och förbättra dess utdata.

Framsteg och framtida riktningar

Området för dekoderbaserade LLM:er utvecklas snabbt, med ny forskning och genombrott som kontinuerligt tänjer på gränserna för vad dessa modeller kan åstadkomma. Här är några anmärkningsvärda framsteg och potentiella framtida riktningar:

Effektiva transformatorvarianter: Även om sparsam uppmärksamhet och skjutfönster har gjort betydande framsteg i att förbättra effektiviteten hos avkodarbaserade LLM:er, undersöker forskare aktivt alternativa transformatorarkitekturer och uppmärksamhetsmekanismer för att ytterligare minska beräkningskraven samtidigt som prestanda bibehålls eller förbättras.

Multimodala LLM: Multimodala modeller utökar möjligheterna för LLM:er bortom text och syftar till att integrera flera modaliteter, såsom bilder, ljud eller video, i ett enda enhetligt ramverk. Detta öppnar upp spännande möjligheter för applikationer som bildtextning, visuella frågor och generering av multimediainnehåll.

Kontrollerbar generation: Att möjliggöra finkornig kontroll över den genererade texten är en utmanande men viktig riktning för LLM:er. Tekniker som kontrollerad textgenerering och snabbjustering syftar till att ge användarna mer detaljerad kontroll över olika attribut för den genererade texten, såsom stil, ton eller specifika innehållskrav.

Slutsats

Avkodarbaserade LLM:er har dykt upp som en transformativ kraft inom området för naturlig språkbehandling, och tänjer på gränserna för vad som är möjligt med språkgenerering och språkförståelse. Från sin ödmjuka början som en förenklad variant av transformatorarkitekturen har dessa modeller utvecklats till mycket sofistikerade och kraftfulla system, som utnyttjar banbrytande tekniker och arkitektoniska innovationer.

När vi fortsätter att utforska och avancera avkodarbaserade LLM:er kan vi förvänta oss att bevittna ännu mer anmärkningsvärda prestationer i språkrelaterade uppgifter, såväl som integrationen av dessa modeller i ett brett utbud av applikationer och domäner. Det är dock avgörande att ta itu med de etiska överväganden, tolkningsutmaningar och potentiella fördomar som kan uppstå från den utbredda användningen av dessa kraftfulla modeller.

Genom att ligga i framkanten av forskningen, främja öppet samarbete och upprätthålla ett starkt engagemang för ansvarsfull AI-utveckling kan vi frigöra den fulla potentialen hos dekoderbaserade LLM:er samtidigt som vi säkerställer att de utvecklas och används på ett säkert, etiskt och fördelaktigt sätt för samhälle.

Jag har ägnat de senaste fem åren åt att fördjupa mig i den fascinerande världen av Machine Learning och Deep Learning. Min passion och expertis har lett mig till att bidra till över 50 olika programvaruutvecklingsprojekt, med särskilt fokus på AI/ML. Min pågående nyfikenhet har också dragit mig mot Natural Language Processing, ett område som jag är ivrig att utforska vidare.