Hva er LoRA innen AI?

LoRA står for Low-Rank Adaptation. Det er en parameterbesparende finjusteringsmetode som holder de opprinnelige vektene i en forhåndstrent modell fryst og lærer mye mindre matriser med lav rang for utvalgte lag. De lærte oppdateringene kan lagres som en adapter og senere brukes på den kompatible basismodellen.

To små matriser med lav rang som styrer et mye større, fryst gitter av nevrale nettverksvekter.
Den store forhåndstrente matrisen forblir fryst. Den trenbare banen faktoriserer oppdateringen gjennom en mye mindre rang.

Denne siden handler om tilpasning av AI-modeller. LoRa, med liten «a», er også navnet på en radioteknologi med lang rekkevidde. Den har ingen sammenheng med LoRA-adaptere for språk- eller bildegenereringsmodeller.

Kjerneideen, uten å gå seg vill i algebra

En vanlig fullstendig finjustering kan oppdatere mange eller alle parameterne i en modell. LoRA antar at den nyttige endringen for en bestemt oppgave ofte kan representeres med langt færre frihetsgrader. I stedet for å lære en fullstendig oppdateringsmatrise uttrykkes oppdateringen som produktet av to smalere matriser med rang r.

Den effektive vekten kombinerer den fryste basevekten med en skalert oppdatering med lav rang:

W′ = W + (B × A) · scale

Hvis den valgte rangen er mye mindre enn de opprinnelige dimensjonene, inneholder matrisene A og B langt færre trenbare parametere enn en fullstendig oppdatering. Det reduserer treningsminnet og gir et kompakt adapterartefakt. Basismodellen utfører fortsatt det meste av arbeidet.

LoRA-modell, LoRA-adapter og LoRA-vekter

Disse uttrykkene brukes løst, så det er nyttig å skille mellom dem:

En nedlastet LoRA-fil inneholder vanligvis ikke hele basismodellen. Derfor ber et grensesnitt deg velge et kontrollpunkt og deretter bruke én eller flere LoRAs.

Hva kan en LoRA lære?

I språkmodeller kan en adapter spesialisere atferd for et domene, en oppgave eller en instruksjonsstil. I diffusjonsmodeller brukes LoRAs ofte for visuelle stiler, figurer, motiver, produkter, konsepter eller mindre atferdsjusteringer. Målmodulene, rangen, datasettet og treningsprosedyren avgjør hva adapteren kan uttrykke.

LoRA er ingen garanti for kvalitet eller trofasthet. En kompakt adapter kan overtilpasse, komme i konflikt med basen, reagere uforutsigbart ved ulike styrker eller være avhengig av aktiveringstokener og valg i forhåndsbehandlingen. Behandle modellkortet og treningskonteksten som driftsmetadata, ikke pynt.

Slik brukes en adapter under inferens

Et kompatibelt rammeverk laster basen, leser adapterkonfigurasjonen og bruker tensorene på målmodulene. Noen kjøremiljøer holder oppdateringen separat, slik at den kan aktiveres, vektes eller lastes ut. Andre kan smelte oppdateringen inn i en avledet kopi for distribusjon.

Sammensmelting er ikke det samme som å gjøre den opprinnelige adapteren selvstendig. Hvis du vil justere styrken, kombinere adaptere eller reprodusere utdatafilen, beholder du adapteren uten sammensmelting, den nøyaktige basen og oppskriften. Veiledningen om kontrollpunkt kontra LoRA beskriver disse forskjellene i gjenoppretting.

LoRA, QLoRA og fullstendig finjustering

LoRA beskriver oppdateringen med lav rang. QLoRA kombinerer LoRA-trening med en kvantisert, fryst base og flere minnebesparende teknikker. Sluttproduktet kan fortsatt være en adapter, og derfor avslører kanskje ikke filnavnet hvordan den ble trent. Se LoRA kontra QLoRA for en sammenligning av metodene.

Fullstendig finjustering oppdaterer mye mer av modellen og kan gi annen kapasitet og andre driftskompromisser, men produserer en større tilstand og krever mer ressurser. Riktig valg avhenger av oppgaven, maskinvaren, evalueringen og distribusjonen – ikke av en antakelse om at én metode alltid er mer «profesjonell».

Derfor blir LoRA-biblioteker likevel store

Én adapter er kompakt sammenlignet med basen, men samlinger vokser med varianter, ranger, epoker, styrker, dupliserte nedlastinger og flere kompatible basefamilier. Basiskontrollpunktene, VAEs, enkoderne, forhåndsvisningene og treningsresultatene er ofte mye større enn hver enkelt adapter. En mappe full av små filer kan derfor være avhengig av en langt større modellbeholdning.

Bruk veiledningen til å organisere én basismodell med mange adaptere og den praktiske arbeidsflyten for å frigjøre LoRA-diskplass uten å endre vekter. Målet er en sammenhengende familie du kan gjenopprette, ikke den minst mulige katalogen for enhver pris.

Hva bør arkiveres sammen med en LoRA?

Behold som et minimum adaptervektene, konfigurasjonen og en presis identifikator for basismodellen. Hvis basen er privat, lokalt endret eller sannsynligvis vil forsvinne, beholder du også den nøyaktige basen. For reproduserbarhet oppbevarer du relevante aktiveringstokener, treningskonfigurasjon, datasettreferanse, lisens eller bruksvilkår og kontrollsummer.

Tensor Archive bevarer utvalgte lokale tensorfamilier og kontrollerer nøyaktig gjenoppretting. Verktøyet gjenskaper ikke en manglende base, finner ikke opp adaptermetadata og beviser ikke at to arkitekturer med lignende navn er kompatible.

Kilder

Behold adapteren sammen med den nøyaktige basen.Gratis nedlasting ↓