Refresh

This website www.unite.ai/hr/mamba-redefining-sequence-modeling-and-outforming-transformers-architecture/ is currently offline. Cloudflare's Always Online™ shows a snapshot of this web page from the Internet Archive's Wayback Machine. To check for the live version, click Refresh.

škrbina Mamba: Redefiniranje sekvencijskog modeliranja i nadjačavanje transformatorske arhitekture - Unite.AI
Povežite se s nama

Umjetna inteligencija

Mamba: Redefiniranje modeliranja sekvenci i nadjačavanje arhitekture transformatora

mm

Objavljeno

 on

Mamba AI model

U ovom članku o Mamba, istražit ćemo kako ovaj inovativni model prostora stanja (SSM) revolucionira modeliranje sekvenci. Razvili Albert Gu i Tri Dao, Mamba se ističe svojom učinkovitošću u obradi složenih sekvenci u poljima kao što su obrada jezika, genomika i audio analiza. Njegovo modeliranje linearnog vremenskog slijeda sa selektivnim prostorima stanja osigurava iznimne performanse u ovim različitim modalitetima.

Zadubit ćemo se u sposobnost Mambe da prevlada računalne izazove s kojima se suočavaju tradicionalni Transformersi, posebno s dugim sekvencama. Njegov selektivni pristup u modelima prostora stanja omogućuje brže zaključivanje i linearno skaliranje s duljinom niza, značajno poboljšavajući propusnost.

Jedinstvenost Mambe leži u njenoj sposobnosti brze obrade, selektivnom SSM sloju i dizajnu prilagođenom hardveru inspiriranom FlashAttentionom. Ove značajke omogućuju Mambi da nadmaši mnoge postojeće modele, uključujući one koji se temelje na pristupu transformatora, čineći je značajnim napretkom u stroj za učenje.

Transformers vs Mamba 

Transformatori, poput GPT-4, postavili su mjerila obrada prirodnog jezika. Međutim, njihova učinkovitost opada s duljim sekvencama. Ovdje Mamba skače naprijed, sa svojom sposobnošću učinkovitije obrade dugih nizova i svojom jedinstvenom arhitekturom koja pojednostavljuje cijeli proces.

Transformatori vješti u rukovanju nizovima podataka, kao što je tekst za jezične modele. Za razliku od prethodnih modela koji su podatke obrađivali sekvencijalno, Transformers obrađuje cijele sekvence istovremeno, omogućujući im da zabilježe složene odnose unutar podataka.

Oni koriste mehanizam pažnje koji omogućuje modelu da se usredotoči na različite dijelove niza prilikom predviđanja.

Ova se pažnja izračunava korištenjem tri skupa težina: upita, ključeva i vrijednosti, izvedenih iz ulaznih podataka. Svaki element u nizu uspoređuje se sa svakim drugim elementom, dajući težinu koja označava važnost ili 'pažnju' koju bi svaki element trebao dobiti kada se predviđa sljedeći element u nizu.

Transformatori održavaju dva glavna bloka: koder, koji obrađuje ulazne podatke, i dekoder, koji generira izlaz. Enkoder se sastoji od više slojeva, od kojih svaki sadrži dva podsloja: mehanizam samopažnje s više glava i jednostavnu, poziciono potpuno povezanu mrežu za prijenos podataka. Normalizacija i rezidualne veze koriste se na svakom podsloju kako bi se pomoglo u obuci dubokih mreža.

Dekoder također ima slojeve s dva podsloja slične koderu, ali dodaje treći podsloj koji vrši višestruku pozornost nad izlazom kodera. Sekvencijalna priroda dekodera osigurava da predviđanja za položaj mogu uzeti u obzir samo ranije položaje, čuvajući svojstvo autoregresije.

Za razliku od Transformersa, model Mamba ima drugačiji pristup. Dok se Transformers bave problemom dugih sekvenci korištenjem složenijih mehanizama pažnje, Mamba koristi selektivne prostore stanja, pružajući više računala

Evo općeg pregleda funkcioniranja transformatora:

  1. Obrada ulaza: Transformatori prvo kodiraju ulazne podatke u format koji model može razumjeti, često koristeći ugradnje koje također uključuju položaj svakog elementa u nizu.
  2. Mehanizam pažnje: U svojoj srži, mehanizam pažnje izračunava ocjenu koja predstavlja koliko fokusa treba staviti na druge dijelove ulazne sekvence prilikom razumijevanja trenutnog elementa.
  3. Arhitektura kodera-dekodera: Model transformatora sastoji se od kodera za obradu ulaza i dekodera za generiranje izlaza. Svaki se sastoji od više slojeva koji pročišćavaju modelovo razumijevanje ulaza.
  4. Pozornost s više glava: Unutar kodera i dekodera, pažnja s više glava omogućuje modelu da istovremeno prati različite dijelove niza iz različitih reprezentacijskih prostora, poboljšavajući njegovu sposobnost učenja iz različitih konteksta.
  5. Mreže za prosljeđivanje po položaju: Nakon pažnje, jednostavna neuronska mreža obrađuje izlaz svake pozicije zasebno i identično. Ovo se kombinira s unosom kroz zaostalu vezu i slijedi normalizacija sloja.
  6. Generiranje izlaza: Dekoder zatim predviđa izlaznu sekvencu, pod utjecajem konteksta kodera i onoga što je do sada generirao.

Sposobnost transformatora da paralelno rukuje sekvencama i njegov robusni mehanizam pažnje čine ga moćnim za zadatke poput prevođenja i generiranja teksta.

Nasuprot tome, Mamba model funkcionira drugačije koristeći selektivne prostore stanja za obradu nizova. Ovaj pristup rješava računsku neučinkovitost u Transformersima kada se radi o dugim sekvencama. Mambin dizajn omogućuje brže zaključivanje i skalira se linearno s duljinom sekvence, postavljajući novu paradigmu za modeliranje sekvence koja bi mogla biti učinkovitija, posebno kako sekvence postaju sve duže.

Mamba

Ono što Mambu čini uistinu jedinstvenom je njezino odstupanje od tradicionalnih blokada pozornosti i MLP-a. Ovo pojednostavljenje dovodi do lakšeg, bržeg modela koji se skalira linearno s duljinom niza – pothvat bez premca u odnosu na njegove prethodnike.

Ključne značajke Mambe uključuju:

  1. Selektivni SSM-ovi: Oni omogućuju Mambi filtriranje nevažnih informacija i fokusiranje na relevantne podatke, poboljšavajući rukovanje sekvencama. Ta je selektivnost ključna za učinkovito rasuđivanje temeljeno na sadržaju.
  2. Algoritam svjestan hardvera: Mamba koristi paralelni algoritam koji je optimiziran za moderni hardver, posebno GPU. Ovaj dizajn omogućuje brže računanje i smanjuje zahtjeve za memorijom u usporedbi s tradicionalnim modelima.
  3. Pojednostavljena arhitektura: Integriranjem selektivnih SSM-ova i uklanjanjem blokada pozornosti i MLP-a, Mamba nudi jednostavniju, homogeniju strukturu. To dovodi do bolje skalabilnosti i performansi.

Mamba je pokazala vrhunsku izvedbu u raznim domenama, uključujući jezik, zvuk i genomiku, ističući se i u zadacima prije obuke i u zadacima specifičnim za domenu. Na primjer, u jezičnom modeliranju, Mamba odgovara ili premašuje performanse većih modela Transformer.

Mambin kod i prethodno obučeni modeli otvoreno su dostupni za korištenje u zajednici na GitHub.

Standardni zadaci kopiranja jednostavni su za linearne modele. Glave za selektivno kopiranje i indukcijske glave zahtijevaju dinamičnu memoriju koja je svjesna sadržaja za LLM.

Standardni zadaci kopiranja jednostavni su za linearne modele. Glave za selektivno kopiranje i indukcijske glave zahtijevaju dinamičnu memoriju koja je svjesna sadržaja za LLM.

Modeli strukturiranog prostora stanja (S4) nedavno su se pojavili kao obećavajuća klasa modela sekvenci, koja obuhvaća značajke iz RNN-ova, CNN-ova i klasičnih modela prostora stanja. S4 modeli crpe inspiraciju iz kontinuiranih sustava, posebno tipa sustava koji preslikava jednodimenzionalne funkcije ili nizove kroz implicitno latentno stanje. U kontekstu dubokog učenja, oni predstavljaju značajnu inovaciju, pružajući novu metodologiju za dizajniranje modela sekvenci koji su učinkoviti i visoko prilagodljivi.

Dinamika S4 modela

SSM (S4) Ovo je osnovni model strukturiranog prostora stanja. Potreban je niz x i proizvodi izlaz y pomoću naučenih parametara A, B, Ci parametar kašnjenja Δ. Transformacija uključuje diskretizaciju parametara (pretvaranje kontinuiranih funkcija u diskretne) i primjenu SSM operacije, koja je vremenski nepromjenjiva—što znači da se ne mijenja tijekom različitih vremenskih koraka.

Značaj diskretizacije

Diskretizacija je ključni proces koji transformira kontinuirane parametre u diskretne pomoću fiksnih formula, omogućujući S4 modelima da zadrže vezu sa sustavima kontinuiranog vremena. Ovo daje modelima dodatna svojstva, kao što je invarijantnost rezolucije, i osigurava ispravnu normalizaciju, poboljšavajući stabilnost i performanse modela. Diskretizacija također povlači paralele s mehanizmima usmjeravanja koji se nalaze u RNN-ovima, koji su ključni za upravljanje protokom informacija kroz mrežu.

Linearna vremenska nepromjenjivost (LTI)

Osnovna značajka modela S4 je njihova linearna vremenska nepromjenjivost. Ovo svojstvo implicira da dinamika modela ostaje dosljedna tijekom vremena, s parametrima fiksnim za sve vremenske korake. LTI je kamen temeljac ponavljanja i zavoja, koji nudi pojednostavljeni, ali moćan okvir za izgradnju modela slijeda.

Prevladavanje temeljnih ograničenja

Okvir S4 tradicionalno je ograničen svojom LTI prirodom, što predstavlja izazove u modeliranju podataka koji zahtijevaju prilagodljivu dinamiku. Nedavni istraživački rad predstavlja pristup koji nadilazi ta ograničenja uvođenjem vremenski promjenjivih parametara, čime se uklanjaju ograničenja LTI-ja. To omogućuje S4 modelima da se nose s raznolikijim skupom sekvenci i zadataka, značajno proširujući njihovu primjenjivost.

Pojam 'model prostora stanja' široko pokriva svaki ponavljajući proces koji uključuje latentno stanje i koristi se za opisivanje različitih koncepata u više disciplina. U kontekstu dubinskog učenja, S4 modeli, ili strukturirani SSM-ovi, odnose se na određenu klasu modela koji su optimizirani za učinkovito računanje uz zadržavanje sposobnosti modeliranja složenih nizova.

S4 modeli mogu se integrirati u end-to-end arhitekture neuronskih mreža, funkcionirajući kao samostalne transformacije sekvenci. Mogu se promatrati kao analogni konvolucijskim slojevima u CNN-ovima, pružajući okosnicu za modeliranje sekvenci u različitim arhitekturama neuronskih mreža.

SSM protiv SSM + odabir

SSM protiv SSM + odabir

Motivacija za selektivnost u modeliranju sekvenci

Strukturirani SSM-ovi

Strukturirani SSM-ovi

U radu se tvrdi da je temeljni aspekt modeliranja sekvenci kompresija konteksta u stanje kojim se može upravljati. Modeli koji se mogu selektivno fokusirati na ili filtrirati ulaze pružaju učinkovitiji način održavanja ovog komprimiranog stanja, što dovodi do učinkovitijih i moćnijih modela sekvenci. Ova je selektivnost od vitalnog značaja za modele za adaptivnu kontrolu protoka informacija duž dimenzije slijeda, bitnu sposobnost za rješavanje složenih zadataka u jezičnom modeliranju i šire.

Selektivni SSM poboljšavaju konvencionalne SSM dopuštajući da njihovi parametri budu ovisni o unosu, što uvodi stupanj prilagodljivosti koji je prije bio nedostižan s vremenski nepromjenjivim modelima. To rezultira vremenski promjenjivim SSM-ovima koji više ne mogu koristiti konvolucije za učinkovito računanje, već se umjesto toga oslanjaju na mehanizam linearnog ponavljanja, što je značajno odstupanje od tradicionalnih modela.

SSM + odabir (S6) Ova varijanta uključuje mehanizam odabira, dodajući parametrima ovisnost o unosu B i Ci parametar kašnjenja Δ. To omogućuje modelu selektivno fokusiranje na određene dijelove ulazne sekvence x. Parametri su diskretizirani uzimajući u obzir odabir, a operacija SSM primjenjuje se na vremenski promjenjiv način pomoću operacije skeniranja, koja obrađuje elemente sekvencijalno, prilagođavajući fokus dinamički tijekom vremena.

Istaknute izvedbe Mambe

Mamba je najbolja u klasi po svakom pojedinom rezultatu ocjenjivanja

Mamba je najbolja u klasi po svakom pojedinom rezultatu ocjenjivanja

Što se tiče performansi, Mamba se ističe u brzini zaključivanja i točnosti. Njegov dizajn omogućuje bolje korištenje dužih konteksta, što se pokazuje iu DNK i audio modeliranju, nadmašujući prethodne modele na složenim zadacima koji zahtijevaju dugotrajne ovisnosti. Njegova svestranost također je istaknuta u zero-shot evaluacijama u višestrukim zadacima, postavljajući novi standard za takve modele u smislu učinkovitosti i skalabilnosti.

Početak rada s Mambom

Za one koji su zainteresirani za korištenje Mambe, tehnički zahtjevi uključuju Linux OS, NVIDIA GPU, PyTorch 1.12+ i CUDA 11.6+. Instalacija uključuje jednostavne pip naredbe za instaliranje potrebnih paketa iz Mamba spremište. Ako se pojave problemi s kompatibilnošću s verzijama PyTorcha, korištenje oznake –no-build-izolacije s pipom može pomoći. Ovi modeli, obučeni na opsežnim skupovima podataka kao što su skup podataka Pile i SlimPajama, dizajnirani su da zadovolje različite računalne potrebe i mjerila performansi.

Mamba nudi različite razine sučelja, od selektivnog SSM sloja do Mamba bloka i kompletnih struktura jezičnog modela. Mamba blok, koji je glavni modul arhitekture, koristi kauzalni sloj Conv1d i može se lako integrirati u dizajn neuronske mreže. Navedeni primjer upotrebe u Pythonu demonstrira instanciranje Mamba modela i obradu podataka kroz njega, naglašavajući jednostavnost i fleksibilnost sustava.

Unaprijed obučeni Mamba modeli dostupni su na Zagrljeno lice, s veličinama u rasponu od 130M do 2.8B parametara, obučenih na opsežnom skupu podataka Pile i skupu podataka SlimPajama. Ovi su modeli dizajnirani da zadovolje različite računalne zahtjeve i zahtjeve performansi, pridržavajući se standarda dimenzija GPT-3. Korisnici mogu očekivati ​​visoku propusnost i točnost od ovih modela, čineći Mambu konkurentnim izborom za razne aplikacije, uključujući ali ne ograničavajući se na modeliranje jezika.

Mambin utjecaj

Mamba predstavlja korak naprijed u modeliranju sekvenci, nudeći moćnu alternativu Transformerovim arhitekturama za obradu podataka bogatih informacijama. Njegov dizajn usklađen je sa zahtjevima modernog hardvera, optimizirajući i korištenje memorije i mogućnosti paralelne obrade. Dostupnost otvorenog izvornog koda Mambine baze kodova i njezinih unaprijed obučenih modela čini je pristupačnim i robusnim alatom za istraživače i programere u području umjetne inteligencije i dubokog učenja.

Proteklih pet godina proveo sam uranjajući u fascinantan svijet strojnog i dubokog učenja. Moja strast i stručnost naveli su me da pridonesem više od 50 različitih projekata softverskog inženjeringa, s posebnim fokusom na AI/ML. Moja stalna znatiželja također me povukla prema obradi prirodnog jezika, polju koje jedva čekam dalje istraživati.