stomp Op decoders gebaseerde grote taalmodellen: een complete gids - Unite.AI
Verbind je met ons

Artificial Intelligence

Op decoders gebaseerde grote taalmodellen: een complete gids

mm
Bijgewerkt on
Op decoders gebaseerde grote taalmodellen: een complete gids

Grote taalmodellen (LLM's) hebben een revolutie teweeggebracht op het gebied van natuurlijke taalverwerking (NLP) door opmerkelijke capaciteiten te demonstreren bij het genereren van mensachtige tekst, het beantwoorden van vragen en het assisteren bij een breed scala aan taalgerelateerde taken. De kern van deze krachtige modellen ligt in de Transformatorarchitectuur met alleen decoders, een variant van de originele transformatorarchitectuur voorgesteld in het baanbrekende artikel “Aandacht is alles wat je nodig hebt”door Vaswani et al.

In deze uitgebreide gids verkennen we de innerlijke werking van op decoders gebaseerde LLM's, waarbij we ons verdiepen in de fundamentele bouwstenen, architecturale innovaties en implementatiedetails die deze modellen naar de voorgrond hebben gebracht van NLP-onderzoek en -toepassingen.

De Transformer-architectuur: een opfriscursus

Voordat we ingaan op de specifieke kenmerken van op decoders gebaseerde LLM's, is het essentieel om opnieuw naar de transformatorarchitectuur te kijken, de basis waarop deze modellen zijn gebouwd. De transformator introduceerde een nieuwe benadering van sequentiemodellering, waarbij hij uitsluitend vertrouwde op aandachtsmechanismen om langeafstandsafhankelijkheden in de gegevens vast te leggen, zonder de noodzaak van terugkerende of convolutionele lagen.

Transformers Architectuur

Transformers Architectuur

De oorspronkelijke transformatorarchitectuur bestaat uit twee hoofdcomponenten: een encoder en een decoder. De encoder verwerkt de invoerreeks en genereert een gecontextualiseerde representatie, die vervolgens door de decoder wordt gebruikt om de uitvoerreeks te produceren. Deze architectuur is in eerste instantie ontworpen voor automatische vertaaltaken, waarbij de encoder de invoerzin in de brontaal verwerkt en de decoder de overeenkomstige zin in de doeltaal genereert.

Zelfaandacht: de sleutel tot het succes van Transformer

In het hart van de transformator schuilt het zelfaandachtsmechanisme, een krachtige techniek waarmee het model informatie uit verschillende posities in de invoerreeks kan wegen en aggregeren. In tegenstelling tot traditionele reeksmodellen, die invoertokens opeenvolgend verwerken, stelt zelfaandacht het model in staat afhankelijkheden tussen elk paar tokens vast te leggen, ongeacht hun positie in de reeks.

Multiquery-aandacht

Multiquery-aandacht

De zelfaandachtsoperatie kan worden opgesplitst in drie hoofdstappen:

  1. Query-, sleutel- en waardeprojecties: De invoerreeks wordt geprojecteerd in drie afzonderlijke weergaven: queries (Q), toetsen (K), en waarden (V). Deze projecties worden verkregen door de invoer te vermenigvuldigen met aangeleerde gewichtsmatrices.
  2. Aandachtsscoreberekening: Voor elke positie in de invoerreeks worden aandachtsscores berekend door het puntproduct tussen de overeenkomstige vraagvector en alle sleutelvectoren te nemen. Deze scores vertegenwoordigen de relevantie van elke positie voor de huidige positie die wordt verwerkt.
  3. Gewogen som van waarden: De aandachtsscores worden genormaliseerd met behulp van een softmax-functie, en de resulterende aandachtsgewichten worden gebruikt om een ​​gewogen som van de waardevectoren te berekenen, waardoor de uitvoerrepresentatie voor de huidige positie wordt geproduceerd.

Multi-head aandacht, een variant van het zelfaandachtsmechanisme, stelt het model in staat verschillende soorten relaties vast te leggen door aandachtsscores te berekenen over meerdere ‘hoofdenParallel daaraan, elk met zijn eigen reeks query-, sleutel- en waardeprojecties.

Architecturale varianten en configuraties

Hoewel de kernprincipes van op decoders gebaseerde LLM's consistent blijven, hebben onderzoekers verschillende architecturale varianten en configuraties onderzocht om de prestaties, efficiëntie en generalisatiemogelijkheden te verbeteren. In deze sectie gaan we dieper in op de verschillende architecturale keuzes en hun implicaties.

Architectuurtypen

Op decoders gebaseerde LLM's kunnen grofweg worden ingedeeld in drie hoofdtypen: encoder-decoder, causale decoder en prefix-decoder. Elk architectuurtype vertoont verschillende aandachtspatronen.

Encoder-decoderarchitectuur

Gebaseerd op het standaard Transformer-model, bestaat de encoder-decoder-architectuur uit twee stapels: een encoder en een decoder. De encoder maakt gebruik van gestapelde zelfaandachtslagen met meerdere koppen om de invoerreeks te coderen en latente representaties te genereren. De decoder voert vervolgens kruisaandacht uit op deze representaties om de doelreeks te genereren. Hoewel effectief in verschillende NLP-taken, zijn er maar weinig LLM's, zoals Vlaai-T5, neem deze architectuur over.

Causale decoderarchitectuur

De causale decoderarchitectuur omvat een unidirectioneel aandachtsmasker, waardoor elk invoertoken alleen rekening kan houden met eerdere tokens en zichzelf. Zowel invoer- als uitvoertokens worden binnen dezelfde decoder verwerkt. Opvallende modellen zoals GPT-1, GPT-2 en GPT-3 zijn op deze architectuur gebouwd, waarbij GPT-3 opmerkelijke leermogelijkheden in de context laat zien. Veel LLM's, waaronder OPT, BLOOM en Gopher, hebben op grote schaal causale decoders toegepast.

Prefix-decoderarchitectuur

De architectuur van de prefixdecoder, ook bekend als de niet-causale decoder, wijzigt het maskeringsmechanisme van causale decoders om bidirectionele aandacht op prefixtokens en unidirectionele aandacht op gegenereerde tokens mogelijk te maken. Net als de encoder-decoder-architectuur kunnen prefix-decoders de prefix-reeks bidirectioneel coderen en uitvoertokens autoregressief voorspellen met behulp van gedeelde parameters. LLM's gebaseerd op prefixdecoders omvatten GLM130B en U-PaLM.

Alle drie de architectuurtypen kunnen worden uitgebreid met behulp van de mengsel van deskundigen (MoE) schaaltechniek, die voor elke invoer spaarzaam een ​​subset van neurale netwerkgewichten activeert. Deze aanpak is toegepast in modellen als Switch Transformer en GLaM, waarbij het vergroten van het aantal experts of de totale parametergrootte aanzienlijke prestatieverbeteringen liet zien.

Decoder-Only Transformer: het omarmen van de autoregressieve aard

Hoewel de oorspronkelijke transformatorarchitectuur is ontworpen voor reeks-tot-reeks-taken zoals machinevertaling, kunnen veel NLP-taken, zoals taalmodellering en tekstgeneratie, worden geframed als autoregressieve problemen, waarbij het model één token tegelijk genereert, afhankelijk van de eerder gegenereerde tokens.

Voer de decoder-only-transformator in, een vereenvoudigde variant van de transformatorarchitectuur die alleen de decodercomponent behoudt. Deze architectuur is bijzonder geschikt voor autoregressieve taken, omdat het één voor één uitvoertokens genereert, waarbij de eerder gegenereerde tokens worden gebruikt als invoercontext.

Het belangrijkste verschil tussen de transformator met alleen een decoder en de originele transformatordecoder ligt in het zelfaandachtsmechanisme. In de instelling alleen voor de decoder wordt de zelfaandachtsbewerking aangepast om te voorkomen dat het model toekomstige tokens in de gaten houdt, een eigenschap die bekend staat als causaliteit. Dit wordt bereikt door een techniek die ‘gemaskeerde zelfaandacht’ wordt genoemd, waarbij aandachtsscores die overeenkomen met toekomstige posities op negatief oneindig worden gezet, waardoor deze effectief worden gemaskeerd tijdens de softmax-normalisatiestap.

Architecturale componenten van op decoders gebaseerde LLM's

Hoewel de kernprincipes van zelfaandacht en gemaskeerde zelfaandacht hetzelfde blijven, hebben moderne op decoders gebaseerde LLM's verschillende architectonische innovaties geïntroduceerd om de prestaties, efficiëntie en generalisatiemogelijkheden te verbeteren. Laten we enkele van de belangrijkste componenten en technieken verkennen die worden gebruikt in de modernste LLM's.

Invoervertegenwoordiging

Voordat de invoerreeks wordt verwerkt, gebruiken op decoders gebaseerde LLM's tokenisatie- en inbeddingstechnieken om de onbewerkte tekst om te zetten in een numerieke representatie die geschikt is voor het model.

vector inbedding

vector inbedding

tokenization: Het tokenisatieproces zet de invoertekst om in een reeks tokens, die woorden, subwoorden of zelfs individuele tekens kunnen zijn, afhankelijk van de gebruikte tokenisatiestrategie. Populaire tokenisatietechnieken voor LLM's zijn onder meer Byte-Pair Encoding (BPE), SentencePiece en WordPiece. Deze methoden zijn gericht op het vinden van een evenwicht tussen de omvang van de woordenschat en de granulariteit van de representatie, waardoor het model effectief kan omgaan met zeldzame of woorden die buiten de woordenschat vallen.

Token-insluitingen: Na tokenisatie wordt elk token toegewezen aan een dichte vectorrepresentatie, een zogenaamde token-inbedding. Deze inbedding wordt geleerd tijdens het trainingsproces en legt semantische en syntactische relaties tussen tokens vast.

Positionele inbedding: Transformer-modellen verwerken de gehele invoerreeks gelijktijdig, zonder het inherente idee van tokenposities dat aanwezig is in terugkerende modellen. Om positionele informatie op te nemen, worden positionele inbeddingen toegevoegd aan de token-inbedding, waardoor het model onderscheid kan maken tussen tokens op basis van hun posities in de reeks. Vroege LLM's gebruikten vaste positionele inbedding op basis van sinusoïdale functies, terwijl recentere modellen leerbare positionele inbedding of alternatieve positionele coderingstechnieken zoals roterende positionele inbedding hebben onderzocht.

Aandachtsblokken met meerdere hoofden

De kernbouwstenen van op decoders gebaseerde LLM's zijn aandachtslagen met meerdere koppen, die de eerder beschreven gemaskeerde zelfaandachtsoperatie uitvoeren. Deze lagen worden meerdere keren gestapeld, waarbij elke laag de uitvoer van de vorige laag verzorgt, waardoor het model steeds complexere afhankelijkheden en representaties kan vastleggen.

Aandachtskoppen: Elke aandachtslaag met meerdere hoofden bestaat uit meerdere 'aandachtskoppen', elk met zijn eigen set query-, sleutel- en waardeprojecties. Hierdoor kan het model tegelijkertijd aandacht besteden aan verschillende aspecten van de invoer, waarbij diverse relaties en patronen worden vastgelegd.

Residuele verbindingen en laagnormalisatie: Om de training van diepe netwerken te vergemakkelijken en het verdwijnende gradiëntprobleem te verzachten, maken op decoders gebaseerde LLM's gebruik van resterende verbindingen en laagnormalisatietechnieken. Resterende verbindingen voegen de invoer van een laag toe aan de uitvoer ervan, waardoor gradiënten gemakkelijker kunnen vloeien tijdens backpropagation. Laagnormalisatie helpt de activeringen en gradiënten te stabiliseren, waardoor de trainingsstabiliteit en -prestaties verder worden verbeterd.

Feed-Forward-lagen

Naast multi-head aandachtslagen bevatten op decoders gebaseerde LLM's feed-forward-lagen, die een eenvoudig feed-forward neuraal netwerk toepassen op elke positie in de reeks. Deze lagen introduceren niet-lineariteiten en stellen het model in staat complexere representaties te leren.

Activeringsfuncties: De keuze van de activeringsfunctie in de feed-forward-lagen kan de prestaties van het model aanzienlijk beïnvloeden. Terwijl eerdere LLM's vertrouwden op de veelgebruikte ReLU-activering, hebben recentere modellen meer geavanceerde activeringsfuncties overgenomen, zoals de Gaussian Error Linear Unit (GELU) of de SwiGLU-activering, die verbeterde prestaties hebben laten zien.

Schaarse aandacht en efficiënte transformatoren

Hoewel het zelfaandachtsmechanisme krachtig is, gaat het gepaard met een kwadratische rekencomplexiteit met betrekking tot de lengte van de reeks, waardoor het rekentechnisch duur wordt voor lange reeksen. Om deze uitdaging aan te pakken, zijn er verschillende technieken voorgesteld om de reken- en geheugenvereisten van zelfaandacht te verminderen, waardoor een efficiënte verwerking van langere reeksen mogelijk wordt.

Schaarse aandacht: Sparse aandachtstechnieken, zoals die welke worden gebruikt in het GPT-3-model, houden zich selectief bezig met een subset van posities in de invoerreeks, in plaats van aandachtsscores voor alle posities te berekenen. Dit kan de rekencomplexiteit aanzienlijk verminderen, terwijl redelijke prestaties behouden blijven.

Schuifraam Let op: Geïntroduceerd in het Mistral 7B-model, is schuifraamaandacht (SWA) een eenvoudige maar effectieve techniek die de aandachtsspanne van elk token beperkt tot een vaste venstergrootte. Deze aanpak maakt gebruik van het vermogen van transformatorlagen om informatie over meerdere lagen te verzenden, waardoor de aandachtsspanne effectief wordt vergroot zonder de kwadratische complexiteit van volledige zelfaandacht.

Rollende buffercache: Om de geheugenvereisten verder te verminderen, vooral voor lange reeksen, maakt het Mistral 7B-model gebruik van een rolling buffer cache. Deze techniek slaat de berekende sleutel- en waardevectoren op en hergebruikt deze voor een vaste venstergrootte, waardoor redundante berekeningen worden vermeden en het geheugengebruik wordt geminimaliseerd.

Gegroepeerde vraagaandacht: Geïntroduceerd in het LLaMA 2-model, is gegroepeerde query-aandacht (GQA) een variant van het multi-query-aandachtsmechanisme dat aandachtshoofden in groepen verdeelt, waarbij elke groep een gemeenschappelijke sleutel en waardematrix deelt. Deze aanpak zorgt voor een evenwicht tussen de efficiëntie van aandacht voor meerdere vragen en de prestaties van standaard zelfaandacht, waardoor verbeterde inferentietijden worden geboden terwijl de resultaten van hoge kwaliteit behouden blijven.

Aandacht voor gegroepeerde vragen

Aandacht voor gegroepeerde vragen

Modelgrootte en schaal

Een van de bepalende kenmerken van moderne LLM's is hun enorme schaal, waarbij het aantal parameters varieert van miljarden tot honderden miljarden. Het vergroten van de modelgrootte is een cruciale factor geweest bij het bereiken van state-of-the-art prestaties, omdat grotere modellen complexere patronen en relaties in de gegevens kunnen vastleggen.

Parametertelling: Het aantal parameters in een op een decoder gebaseerde LLM wordt voornamelijk bepaald door de inbeddingsdimensie (d_model), het aantal aandachtskoppen (n_heads), het aantal lagen (n_layers) en de woordenschatgrootte (vocab_size). Het GPT-3-model heeft bijvoorbeeld 175 miljard parameters d_model = 12288, n_hoofden = 96, n_lagen = 96 en vocab_grootte = 50257.

Modelparallellisme: Het trainen en inzetten van dergelijke enorme modellen vereist aanzienlijke computerbronnen en gespecialiseerde hardware. Om deze uitdaging het hoofd te bieden, zijn modelparallellismetechnieken gebruikt, waarbij het model is verdeeld over meerdere GPU's of TPU's, waarbij elk apparaat verantwoordelijk is voor een deel van de berekeningen.

Mengsel van deskundigen: Een andere benadering voor het schalen van LLM's is de mix-of-experts (MoE)-architectuur, die meerdere expertmodellen combineert, die elk gespecialiseerd zijn in een specifieke subset van de gegevens of taak. Het Mixtral 8x7B-model is een voorbeeld van een MoE-model dat gebruikmaakt van de Mistral 7B als basismodel, waarmee superieure prestaties worden bereikt terwijl de rekenefficiëntie behouden blijft.

Inferentie en tekstgeneratie

Een van de belangrijkste gebruiksscenario's van op decoders gebaseerde LLM's is het genereren van tekst, waarbij het model coherente en natuurlijk klinkende tekst genereert op basis van een bepaalde prompt of context.

Autoregressieve decodering: Tijdens inferentie genereren op decoders gebaseerde LLM's tekst op een autoregressieve manier, waarbij één token tegelijk wordt voorspeld op basis van de eerder gegenereerde tokens en de invoerprompt. Dit proces gaat door totdat aan een vooraf bepaald stopcriterium wordt voldaan, zoals het bereiken van een maximale reekslengte of het genereren van een einde-van-reeks-token.

Bemonsteringsstrategieën: Om gevarieerde en realistische tekst te genereren, kunnen verschillende bemonsteringsstrategieën worden gebruikt, zoals top-k-bemonstering, top-p-bemonstering (ook bekend als kernbemonstering) of temperatuurschaling. Deze technieken beheersen de afweging tussen diversiteit en samenhang van de gegenereerde tekst door de waarschijnlijkheidsverdeling over de woordenschat aan te passen.

Snelle techniek: De kwaliteit en specificiteit van de invoerprompt kunnen een aanzienlijke invloed hebben op de gegenereerde tekst. Prompt engineering, de kunst van het maken van effectieve prompts, is een cruciaal aspect geworden bij het inzetten van LLM's voor verschillende taken, waardoor gebruikers het generatieproces van het model kunnen begeleiden en de gewenste resultaten kunnen bereiken.

Human-in-the-Loop-decodering: Om de kwaliteit en samenhang van de gegenereerde tekst verder te verbeteren, zijn technieken zoals Versterking leren van menselijke feedback (RLHF) zijn ingezet. Bij deze aanpak geven menselijke beoordelaars feedback op de gegenereerde tekst van het model, die vervolgens wordt gebruikt om het model te verfijnen, effectief af te stemmen op menselijke voorkeuren en de resultaten ervan te verbeteren.

Vooruitgang en toekomstige richtingen

Het vakgebied van op decoders gebaseerde LLM's evolueert snel, waarbij nieuw onderzoek en doorbraken voortdurend de grenzen verleggen van wat deze modellen kunnen bereiken. Hier zijn enkele opmerkelijke ontwikkelingen en mogelijke toekomstige richtingen:

Efficiënte transformatorvariantenHoewel schaarse aandacht en 'sliding window'-aandacht aanzienlijke vooruitgang hebben geboekt bij het verbeteren van de efficiëntie van op decoders gebaseerde LLM's, onderzoeken onderzoekers actief alternatieve transformatorarchitecturen en aandachtsmechanismen om de computervereisten verder te verminderen en tegelijkertijd de prestaties te behouden of te verbeteren.

Multimodale LLM's: Door de mogelijkheden van LLM's verder uit te breiden dan alleen tekst, streven multimodale modellen ernaar om meerdere modaliteiten, zoals afbeeldingen, audio of video, te integreren in één enkel uniform raamwerk. Dit opent opwindende mogelijkheden voor toepassingen zoals het ondertitelen van afbeeldingen, het visueel beantwoorden van vragen en het genereren van multimedia-inhoud.

Beheersbare generatie: Het mogelijk maken van fijnmazige controle over de gegenereerde tekst is een uitdagende maar belangrijke richting voor LLM's. Technieken zoals het gecontroleerd genereren van tekst en het afstemmen van prompts zijn bedoeld om gebruikers meer gedetailleerde controle te bieden over verschillende kenmerken van de gegenereerde tekst, zoals stijl, toon of specifieke inhoudsvereisten.

Conclusie

Op decoders gebaseerde LLM's zijn naar voren gekomen als een transformerende kracht op het gebied van natuurlijke taalverwerking, waarbij de grenzen worden verlegd van wat mogelijk is met het genereren en begrijpen van taal. Vanaf hun bescheiden begin als een vereenvoudigde variant van de transformatorarchitectuur zijn deze modellen geëvolueerd naar zeer geavanceerde en krachtige systemen, waarbij gebruik wordt gemaakt van geavanceerde technieken en architectonische innovaties.

Terwijl we doorgaan met het onderzoeken en bevorderen van op decoders gebaseerde LLM's, kunnen we nog meer opmerkelijke prestaties verwachten op het gebied van taalgerelateerde taken, evenals de integratie van deze modellen in een breed scala aan toepassingen en domeinen. Het is echter van cruciaal belang om de ethische overwegingen, uitdagingen op het gebied van interpreteerbaarheid en potentiële vooroordelen aan te pakken die kunnen voortkomen uit de wijdverbreide inzet van deze krachtige modellen.

Door voorop te blijven lopen op het gebied van onderzoek, open samenwerking te bevorderen en ons sterk te blijven inzetten voor verantwoorde AI-ontwikkeling, kunnen we het volledige potentieel van op decoders gebaseerde LLM’s ontsluiten en er tegelijkertijd voor zorgen dat ze op een veilige, ethische en voordelige manier worden ontwikkeld en gebruikt voor maatschappij.

De afgelopen vijf jaar heb ik me verdiept in de fascinerende wereld van Machine Learning en Deep Learning. Door mijn passie en expertise heb ik bijgedragen aan meer dan 50 verschillende software engineering projecten, met een bijzondere focus op AI/ML. Mijn voortdurende nieuwsgierigheid heeft me ook aangetrokken tot Natural Language Processing, een gebied dat ik graag verder wil verkennen.