výhonek Velké jazykové modely založené na dekodérech: Kompletní průvodce – Unite.AI
Spojte se s námi

Umělá inteligence

Velké jazykové modely založené na dekodéru: Kompletní průvodce

mm
aktualizováno on
Velké jazykové modely založené na dekodéru: Kompletní průvodce

Velké jazykové modely (LLMs) způsobily revoluci v oblasti zpracování přirozeného jazyka (NLP) tím, že prokázaly pozoruhodné schopnosti generovat lidský text, odpovídat na otázky a pomáhat se širokou škálou úloh souvisejících s jazykem. Jádrem těchto výkonných modelů je architektura transformátoru pouze pro dekodér, varianta původní architektury transformátoru navržená v seminární práci “Vše, co potřebujete, je pozornostVaswani et al.

V tomto komplexním průvodci prozkoumáme vnitřní fungování LLM založených na dekodérech, ponoříme se do základních stavebních bloků, architektonických inovací a implementačních detailů, které tyto modely posunuly do popředí výzkumu a aplikací NLP.

The Transformer Architecture: Osvěžovač

Než se ponoříme do specifik LLM založených na dekodérech, je nezbytné znovu se podívat na architekturu transformátoru, základ, na kterém jsou tyto modely postaveny. Transformátor zavedl nový přístup k sekvenčnímu modelování, který se spoléhá pouze na mechanismy pozornosti k zachycení závislostí na dlouhé vzdálenosti v datech, bez potřeby opakujících se nebo konvolučních vrstev.

Architektura Transformers

Architektura Transformers

Původní architektura transformátoru se skládá ze dvou hlavních součástí: kodéru a dekodéru. Kodér zpracovává vstupní sekvenci a generuje kontextualizovanou reprezentaci, která je poté spotřebována dekodérem k vytvoření výstupní sekvence. Tato architektura byla původně navržena pro úlohy strojového překladu, kde kodér zpracovává vstupní větu ve zdrojovém jazyce a dekodér generuje odpovídající větu v cílovém jazyce.

Sebepozornost: Klíč k úspěchu Transformeru

V centru města transformátor spočívá v mechanismu sebepozorování, výkonné technice, která umožňuje modelu vážit a agregovat informace z různých pozic ve vstupní sekvenci. Na rozdíl od tradičních sekvenčních modelů, které zpracovávají vstupní tokeny postupně, vlastní pozornost umožňuje modelu zachytit závislosti mezi libovolným párem tokenů bez ohledu na jejich pozici v sekvenci.

Vícedotazová pozornost

Vícedotazová pozornost

Operaci samopozornosti lze rozdělit do tří hlavních kroků:

  1. Projekce dotazů, klíčů a hodnot: Vstupní sekvence se promítne do tří samostatných reprezentací: dotazy (Q), klíče (K) a hodnoty (PROTI). Tyto projekce se získají vynásobením vstupu naučenými maticemi vah.
  2. Výpočet skóre pozornosti: Pro každou pozici ve vstupní sekvenci se vypočítá skóre pozornosti tak, že se vezme bodový součin mezi odpovídající vektor dotazu a všechny klíčové vektory. Tato skóre představují relevanci každé pozice k aktuálně zpracovávané pozici.
  3. Vážený součet hodnot: Skóre pozornosti jsou normalizovány pomocí funkce softmax a výsledné váhy pozornosti se používají k výpočtu váženého součtu hodnotových vektorů, čímž se získá výstupní reprezentace pro aktuální pozici.

Vícehlavá pozornost, varianta mechanismu sebepozornosti, umožňuje modelu zachytit různé typy vztahů pomocí výpočtu skóre pozornosti napříč několika „hlava“ paralelně, každý s vlastní sadou projekcí dotazů, klíčů a hodnot.

Architektonické varianty a konfigurace

Zatímco základní principy LLM založených na dekodérech zůstávají konzistentní, výzkumníci prozkoumali různé architektonické varianty a konfigurace, aby zlepšili výkon, efektivitu a možnosti zobecnění. V této části se ponoříme do různých architektonických možností a jejich důsledků.

Typy architektury

LLM založené na dekodéru lze obecně rozdělit do tří hlavních typů: kodér-dekodér, kauzální dekodér a dekodér prefixů. Každý typ architektury vykazuje odlišné vzorce pozornosti.

Architektura kodéru a dekodéru

Na základě modelu vanilla Transformer se architektura kodéru a dekodéru skládá ze dvou vrstev: kodéru a dekodéru. Kodér používá vrstvené vícehlavé samopozorné vrstvy ke kódování vstupní sekvence a generování latentních reprezentací. Dekodér pak provede křížovou pozornost na tyto reprezentace, aby vygeneroval cílovou sekvenci. I když je efektivní v různých úkolech NLP, jen málo LLM, jako např Flan-T5, přijmout tuto architekturu.

Architektura kauzálního dekodéru

Architektura kauzálního dekodéru zahrnuje jednosměrnou masku pozornosti, která umožňuje každému vstupnímu tokenu věnovat se pouze minulým tokenům a sobě samému. Vstupní i výstupní tokeny jsou zpracovávány ve stejném dekodéru. Pozoruhodné modely jako GPT-1, GPT-2 a GPT-3 jsou postaveny na této architektuře, přičemž GPT-3 předvádí pozoruhodné možnosti učení v kontextu. Mnoho LLM, včetně OPT, BLOOM a Gopher, široce přijalo kauzální dekodéry.

Architektura dekodéru prefixů

Architektura prefixového dekodéru, známá také jako nekauzální dekodér, upravuje maskovací mechanismus kauzálních dekodérů tak, aby umožňovala obousměrnou pozornost přes předponové tokeny a jednosměrnou pozornost na generované tokeny. Stejně jako architektura kodér-dekodér mohou dekodéry prefixů kódovat sekvenci prefixů obousměrně a předpovídat výstupní tokeny autoregresně pomocí sdílených parametrů. LLM založené na prefixových dekodérech zahrnují GLM130B a U-PaLM.

Všechny tři typy architektury lze rozšířit pomocí směs odborníků (MŽP) škálovací technika, která řídce aktivuje podmnožinu vah neuronové sítě pro každý vstup. Tento přístup byl použit v modelech, jako je Switch Transformer a GLaM, se zvyšujícím se počtem odborníků nebo celkovou velikostí parametrů, které vykazují významné zlepšení výkonu.

Transformátor pouze s dekodérem: Přijetí autoregresivní povahy

Zatímco původní architektura transformátoru byla navržena pro úlohy sekvencí po sekvencích, jako je strojový překlad, mnoho úloh NLP, jako je jazykové modelování a generování textu, lze zarámovat jako autoregresivní problémy, kdy model generuje vždy jeden token v závislosti na dříve vygenerované tokeny.

Zadejte transformátor pouze pro dekodér, zjednodušenou variantu architektury transformátoru, která zachovává pouze součást dekodéru. Tato architektura je zvláště vhodná pro autoregresivní úlohy, protože generuje výstupní tokeny jeden po druhém, přičemž využívá dříve vygenerované tokeny jako vstupní kontext.

Klíčový rozdíl mezi transformátorem určeným pouze pro dekodér a původním dekodérem transformátoru spočívá v mechanismu samopozornosti. V nastavení pouze pro dekodér je operace sebepozorování upravena tak, aby zabránila modelu obsluhovat budoucí tokeny, což je vlastnost známá jako kauzalita. Toho je dosaženo pomocí techniky zvané „maskovaná sebepozornost“, kde skóre pozornosti odpovídající budoucím pozicím je nastaveno na záporné nekonečno, čímž je účinně maskováno během kroku normalizace softmax.

Architektonické komponenty LLM založených na dekodéru

Zatímco základní principy sebepozorování a maskované sebepozorování zůstávají stejné, moderní LLM založené na dekodérech zavedly několik architektonických inovací ke zlepšení výkonu, efektivity a možností zobecnění. Pojďme prozkoumat některé klíčové komponenty a techniky používané v nejmodernějších LLM.

Vstupní reprezentace

Před zpracováním vstupní sekvence využívají LLM založené na dekodéru techniky tokenizace a vkládání, aby převedly nezpracovaný text na číselnou reprezentaci vhodnou pro model.

vektorové vkládání

vektorové vkládání

Tokenizace: Proces tokenizace převádí vstupní text na sekvenci tokenů, což mohou být slova, podslova nebo dokonce jednotlivé znaky, v závislosti na použité strategii tokenizace. Populární techniky tokenizace pro LLM zahrnují Byte-Pair Encoding (BPE), SentencePiece a WordPiece. Tyto metody mají za cíl dosáhnout rovnováhy mezi velikostí slovní zásoby a granularitou reprezentace, což modelu umožňuje efektivně zpracovávat vzácná slova nebo slova mimo slovní zásobu.

Vložení tokenů: Po tokenizaci je každý token namapován na hustou vektorovou reprezentaci nazývanou vložení tokenu. Tato vložení se učí během tréninkového procesu a zachycují sémantické a syntaktické vztahy mezi tokeny.

Polohové vložení: Transformátorové modely zpracovávají celou vstupní sekvenci současně, postrádají inherentní představu o pozicích tokenů přítomnou v rekurentních modelech. Aby bylo možné začlenit poziční informace, poziční vložení jsou přidána k vložení tokenů, což umožňuje modelu rozlišovat mezi tokeny na základě jejich pozic v sekvenci. Dřívější LLM používaly pevné polohové vnoření založené na sinusových funkcích, zatímco novější modely zkoumaly naučitelné polohové vnoření nebo alternativní techniky pozičního kódování, jako je rotační polohové vložení.

Vícehlavé bloky pozornosti

Základními stavebními bloky LLM založených na dekodérech jsou vícehlavé vrstvy pozornosti, které provádějí operaci maskované samopozornosti popsanou dříve. Tyto vrstvy jsou naskládány vícekrát, přičemž každá vrstva se stará o výstup předchozí vrstvy, což umožňuje modelu zachytit stále složitější závislosti a reprezentace.

Pozornost hlavy: Každá vrstva pozornosti s více hlavami se skládá z několika „hlaví pozornosti“, z nichž každá má vlastní sadu dotazů, klíčů a hodnotových projekcí. To umožňuje modelu věnovat se různým aspektům vstupu současně a zachytit různé vztahy a vzory.

Zbytková připojení a normalizace vrstev: Pro usnadnění trénování hlubokých sítí a zmírnění problému mizejícího gradientu využívají LLM na bázi dekodéru zbytková spojení a techniky normalizace vrstev. Zbytková připojení přidávají vstup vrstvy k jejímu výstupu, což umožňuje snazší tok gradientů během zpětného šíření. Normalizace vrstev pomáhá stabilizovat aktivace a gradienty, dále zlepšuje stabilitu tréninku a výkon.

Feed-Forward Layers

Kromě vrstev pozornosti s více hlavami obsahují LLM na bázi dekodéru dopředné vrstvy, které aplikují jednoduchou dopřednou neuronovou síť na každou pozici v sekvenci. Tyto vrstvy zavádějí nelinearity a umožňují modelu naučit se složitější reprezentace.

Aktivační funkce: Volba aktivační funkce v dopředných vrstvách může výrazně ovlivnit výkon modelu. Zatímco dřívější LLM se spoléhaly na široce používanou aktivaci ReLU, novější modely přijaly sofistikovanější aktivační funkce, jako je Gaussian Error Linear Unit (GELU) nebo aktivace SwiGLU, které prokázaly lepší výkon.

Řídká pozornost a účinné transformátory

Mechanismus sebepozorování je sice výkonný, ale přichází s kvadratickou výpočetní složitostí s ohledem na délku sekvence, takže je u dlouhých sekvencí výpočetně nákladný. K vyřešení tohoto problému bylo navrženo několik technik, které snižují výpočetní a paměťové požadavky na vlastní pozornost, což umožňuje efektivní zpracování delších sekvencí.

Řídká pozornost: Techniky řídké pozornosti, jako je ta používaná v modelu GPT-3, se selektivně věnují podmnožině pozic ve vstupní sekvenci, místo aby počítaly skóre pozornosti pro všechny pozice. To může výrazně snížit výpočetní náročnost při zachování přiměřeného výkonu.

Posuvné okno Pozor: Pozornost posuvného okna (SWA), představená v modelu Mistral 7B, je jednoduchá, ale účinná technika, která omezuje rozsah pozornosti každého tokenu na pevnou velikost okna. Tento přístup využívá schopnost vrstev transformátoru přenášet informace přes více vrstev, čímž se efektivně zvyšuje rozsah pozornosti bez kvadratické složitosti plné sebepozorování.

Rolling Buffer Cache: Pro další snížení požadavků na paměť, zejména u dlouhých sekvencí, model Mistral 7B využívá pohyblivou vyrovnávací paměť. Tato technika ukládá a znovu používá vypočítané vektory klíčů a hodnot pro pevnou velikost okna, čímž se vyhne nadbytečným výpočtům a minimalizuje se využití paměti.

Seskupený dotaz Pozor: Skupinová pozornost dotazů (GQA) představená v modelu LLaMA 2 je variantou mechanismu pozornosti s více dotazy, který rozděluje hlavy pozornosti do skupin, přičemž každá skupina sdílí společný klíč a matici hodnot. Tento přístup vytváří rovnováhu mezi efektivitou vícedotazové pozornosti a výkonem standardní samopozornosti, poskytuje vylepšené časy odvození při zachování vysoce kvalitních výsledků.

Pozornost seskupeného dotazu

Pozornost seskupeného dotazu

Velikost modelu a měřítko

Jednou z definujících charakteristik moderních LLM je jejich pouhý rozsah s počtem parametrů v rozmezí od miliard do stovek miliard. Zvětšení velikosti modelu bylo zásadním faktorem pro dosažení nejmodernějšího výkonu, protože větší modely mohou zachytit složitější vzory a vztahy v datech.

Počet parametrů: Počet parametrů v LLM založeném na dekodéru je primárně určen rozměrem vkládání (d_model), počtem hlav pozornosti (n_heads), počtem vrstev (n_layers) a velikostí slovní zásoby (vocab_size). Například model GPT-3 má 175 miliard parametrů, s d_model = 12288, n_heads = 96, n_vrstev = 96, a vocab_size = 50257.

Modelový paralelismus: Školení a nasazení takových masivních modelů vyžaduje značné výpočetní zdroje a specializovaný hardware. K překonání tohoto problému byly použity techniky paralelního modelu, kdy je model rozdělen mezi více GPU nebo TPU, přičemž každé zařízení odpovídá za část výpočtů.

Směs odborníků: Dalším přístupem ke škálování LLM je architektura mix-of-experts (MoE), která kombinuje několik expertních modelů, z nichž každý se specializuje na určitou podmnožinu dat nebo úkolu. Model Mixtral 8x7B je příkladem modelu MoE, který využívá Mistral 7B jako jeho základní model, dosahující vynikajícího výkonu při zachování výpočetní efektivity.

Inference a generování textu

Jedním z primárních případů použití LLM založených na dekodéru je generování textu, kdy model generuje koherentní a přirozeně znějící text na základě dané výzvy nebo kontextu.

Autoregresivní dekódování: Během vyvozování generují LLM založené na dekodéru text autoregresivním způsobem, přičemž předpovídají vždy jeden token na základě dříve vygenerovaných tokenů a vstupní výzvy. Tento proces pokračuje, dokud není splněno předem určené kritérium zastavení, jako je dosažení maximální délky sekvence nebo vygenerování tokenu konce sekvence.

Strategie vzorkování: Pro generování různorodého a realistického textu lze použít různé strategie vzorkování, jako je top-k vzorkování, top-p vzorkování (také známé jako nucleus sampling) nebo teplotní škálování. Tyto techniky řídí kompromis mezi rozmanitostí a koherencí generovaného textu úpravou rozložení pravděpodobnosti ve slovní zásobě.

Prompt Engineering: Kvalita a specifičnost vstupní výzvy může významně ovlivnit generovaný text. Prompt engineering, umění vytvářet efektivní výzvy, se ukázalo jako zásadní aspekt využití LLM pro různé úkoly, což uživatelům umožňuje řídit proces generování modelu a dosahovat požadovaných výstupů.

Human-in-the-Loop dekódování: Pro další zlepšení kvality a koherence generovaného textu, techniky jako Posílení učení z lidské zpětné vazby (RLHF). Lidští hodnotitelé v tomto přístupu poskytují zpětnou vazbu k vygenerovanému textu modelu, který je následně použit k doladění modelu, jeho efektivnímu sladění s lidskými preferencemi a zlepšení jeho výstupů.

Pokroky a budoucí směry

Oblast LLM založených na dekodérech se rychle vyvíjí a nový výzkum a průlomy neustále posouvají hranice toho, čeho mohou tyto modely dosáhnout. Zde jsou některé pozoruhodné pokroky a potenciální budoucí směry:

Varianty efektivního transformátoru: Zatímco řídká pozornost a pozornost posuvných oken učinily významný pokrok ve zlepšení účinnosti LLM založených na dekodérech, výzkumníci aktivně zkoumají alternativní architektury transformátorů a mechanismy pozornosti, aby dále snížili výpočetní požadavky při zachování nebo zlepšení výkonu.

Multimodální LLM: Multimodální modely rozšiřují možnosti LLM nad rámec textu a jejich cílem je integrovat více modalit, jako jsou obrázky, zvuk nebo video, do jediného jednotného rámce. To otevírá vzrušující možnosti pro aplikace, jako je popisování obrázků, vizuální zodpovězení otázek a generování multimediálního obsahu.

Ovladatelné generování: Povolení jemné kontroly nad generovaným textem je náročný, ale důležitý směr pro LLM. Techniky jako řízené generování textu a rychlé ladění mají za cíl poskytnout uživatelům podrobnější kontrolu nad různými atributy generovaného textu, jako je styl, tón nebo specifické požadavky na obsah.

Proč investovat do čističky vzduchu?

LLM založené na dekodérech se objevily jako transformační síla v oblasti zpracování přirozeného jazyka a posouvají hranice toho, co je možné s generováním a porozuměním jazyka. Od svých skromných začátků jako zjednodušené varianty architektury transformátorů se tyto modely vyvinuly ve vysoce sofistikované a výkonné systémy využívající nejmodernější techniky a architektonické inovace.

Jak pokračujeme ve zkoumání a vylepšování LLM založených na dekodérech, můžeme očekávat, že budeme svědky ještě pozoruhodnějších úspěchů v úlohách souvisejících s jazykem, stejně jako integrace těchto modelů do široké škály aplikací a domén. Je však zásadní zabývat se etickými ohledy, problémy s interpretovatelností a potenciálními předsudky, které mohou vyplynout z rozsáhlého zavádění těchto výkonných modelů.

Tím, že zůstaneme v popředí výzkumu, budeme podporovat otevřenou spolupráci a zachováváme pevné odhodlání k zodpovědnému vývoji umělé inteligence, můžeme uvolnit plný potenciál LLM založených na dekodérech a zároveň zajistit, aby byly vyvíjeny a využívány bezpečným, etickým a prospěšným způsobem. společnost.

Posledních pět let jsem strávil ponořením se do fascinujícího světa strojového učení a hlubokého učení. Moje vášeň a odborné znalosti mě vedly k tomu, abych se podílel na více než 50 různých projektech softwarového inženýrství se zvláštním zaměřením na AI/ML. Moje neustálá zvědavost mě také přivedla ke zpracování přirozeného jazyka, což je obor, který bych rád dále prozkoumal.