Vijesti o Tehnologiji, Recenzije i Savjeti!

Ovo istraživanje umjetne inteligencije pokazuje kako ILF može značajno poboljšati kvalitetu modela generiranja koda s povratnom informacijom prirodnog jezika koju su napisali ljudi

Napomena: Sljedeći članak će vam pomoći: Ovo istraživanje umjetne inteligencije pokazuje kako ILF može značajno poboljšati kvalitetu modela generiranja koda s povratnom informacijom prirodnog jezika koju su napisali ljudi

Sinteza programa, ili automatsko kreiranje računalnih programa iz ulazne specifikacije, ključni je problem za softversko inženjerstvo. Ne samo da učinkovita sinteza programa može pomoći u produktivnosti softverskih inženjera, već može i olakšati pisanje koda. Unaprijed obučeni veliki jezični modeli (LLM) nedavno su pokazali značajan napredak u sintezi programa, ali unatoč opsežnoj prethodnoj obuci, oni i dalje moraju dosljedno generirati odgovarajući kod.

Na primjer, nefiltrirani kod koji je preuzet s interneta i korišten kao dio skupova podataka prije obuke koda često ima mnogo sigurnosnih nedostataka. Istraživači postuliraju da su suvremene LLM postavke predosposobljavanja u velikoj mjeri krive za te nedostatke. Pokazalo se da uključivanje pisanih povratnih informacija u LLM-ove znatno povećava prolaznost modela generiranja koda kada se unos daje u vrijeme testiranja.

Istraživači predlažu učenje imitacije iz jezične povratne informacije za obuku LLM-a s jezičnom povratnom informacijom. Ovaj algoritam proširuje rad Scheurera, koji je istraživao učinke učenja iz jezične povratne informacije na modele sažimanja teksta. Ponovnom obukom osnovnog modela na poboljšanim sažetcima proizvedenim iz početnih rekapitulacija modela i povratnih informacija koje su napisali ljudi, Scheurer poboljšava model sažimanja. Rad istraživača unapređuje Scheurera na nekoliko načina, uključujući:

  • Formalizirajući algoritam i čineći ga univerzalno primjenjivim u obliku
  • Demonstrirajući kako se funkcija nagrađivanja može modificirati za generiranje koda
  • Predstavljanjem ILF (Imitation learning from Language Feedback) koda koji razvija dokaz koncepta.

ILF (Imitacija učenja iz jezičnih povratnih informacija) obučava drugačiji model pod nazivom “Pročišćavanje” za korištenje jezičnih povratnih informacija za popravljanje neispravno kreiranih programa kako bi se povećala točnost programa proizvedenih osnovnim modelom generiranja koda koji se zove πθ. Istraživači ga zatim poboljšavaju podešavanjem πPročistiti generirana poboljšanja koja prolaze jedinične testove, što rezultira konačnim poboljšanim modelom πθ*. Istraživači popravljene programe nazivaju poboljšanjima). Ovaj se proces može smatrati minimiziranjem predviđenog odstupanja KL-a od ciljane distribucije istine na terenu i može se ponavljati iterativno kako bi se nastavilo poboljšavati model.

Istraživanja i nalazi

Istraživači koriste skup podataka Mostly Basic Python Problems (MBPP) za obuku i procjenu modela. 974 zadatka za programiranje Pythona u MBPP-u stvorena su za programere početnike.

Iako skup podataka u MBPP-u ima naznačenu podjelu za brzu/obuku/potvrdu valjanosti/testiranje, istraživači su je ponovno podijelili na sljedeće podjele:

• MBPPRefine: Ovi poslovi imaju ID-ove u 111-310. Međutim, CODEGEN-MONO 6.1B nije uspio proizvesti nikakve točne dovršetke za njih. Za treniranje πPročistitikoristite ovu podjelu.

• MBPPTrain: Ovi zadaci imaju ID-ove u rasponu od 311 do 974, ali CODEGEN-MONO 6.1B nije uspio proizvesti nikakve točne dovršetke za njih. Ova se podjela u početku koristi za procjenu točnosti usklađivanja koje proizvodi πPročistiti. Zatim se obučava za proizvodnju korištenjem odgovarajućih poboljšanja u ovoj podjeli.

• MBPPTest: Istraživači koriste ove zadatke, koji imaju ID-ove između 11 i 110, za procjenu konačne izvedbe πθ*. Za razliku od druga dva podjele, oni koriste sve zadatke u ovoj podjeli umjesto samo onih za koje CODEGENMONO 6.1B u početku nije proizvodio točne programe. To nam olakšava usporedbu performansi πθ i πθ* i na njihovim osnovnim razinama.

Istraživači neovisno prilagođavaju dvije različite instance CODEGEN-MONO 6.1B za proizvodnju πPročistiti a konačni model πθ* staviti algoritam u praksu. Parovi pogrešnih programa, povratne informacije koje su napisali ljudi i ciljevi poboljšanja koje su napisali ljudi koriste se za treniranje πPročistiti algoritam.

Iako ILF algoritam zahtijeva samo prikupljanje povratnih informacija koje su napisali ljudi za zadatke u MBPPTrain (pod pretpostavkom pristupa nekim πPročistiti koji su već podešeni ili mogu generirati dorade uz pomoć nekoliko pokreta), istraživači prikupljaju povratne informacije koje su napisali ljudi i dorade za sve podjele podataka kako bi proveli daljnje analize pristupa. To nam omogućuje usporedbu finog podešavanja na usklađivanjima koja generira πPročistiti s finim podešavanjem poboljšanja čiji su autori ljudi, na primjer. ILF treba dodatne povratne informacije kada se skalira na različite kombinacije modela i zadataka. Međutim, moguće je da će korištenje ILF-a na jednom skupu podataka poboljšati izvedbu modela na drugom skupu podataka za isti posao. Buduće studije uključivat će skaliranje ILF-a kroz različita radna opterećenja i modele.

Za obuku je korišten mali uzorak MBPP zlatnih programa. Međutim, to nije značajno poboljšalo točnost u usporedbi s nultim zaključkom. Istraživači su izračunali kompliciranost MBPP zlatnih programa, πPročistiti generirane dorade i dorade koje su napisali ljudi koristeći prethodno obučeni CODEGEN-MONO 6.1B model za testiranje hipoteze da zlatni programi iz MBPP skupa podataka mogu biti malo izvan distribucije za CODEGEN-MONO 6.1B. Skup podataka MBPP sadrži više programa s velikom zabunom (tj. programa sa zabunom 102) nego πPročistiti generirane dorade ili dorade koje je napisao čovjek, iako se distribucije sva tri izvora podataka čine identične. Budući da su posljednja dva skupa podataka bliža CODEGEN-MONO 6Izvorna distribucija .1B iako ostaje funkcionalno ispravna, vjerojatno je jednostavnija za CODEGEN-MONO 6.1B učiti od njih.

Štoviše, ILF je posebno koristan kada postoji potreba za većim pristupom ogromnim količinama zlatnih kodova. U ovom kontekstu, ILF je tehnika za proizvodnju podataka za obuku koji eksplicitno popravljaju nedostatke izvornog modela, a istovremeno proizvode podatke za obuku koji su sličniji stvarnim rezultatima modela u prostoru za prikaz podataka. Dakle, iako oba skupa podataka za obuku sadrže isti broj funkcionalno savršenih programa, fino podešavanje modela na πPročistiti proizvedene dorade ne zahtijevaju promjenu težina u onoj mjeri koliko bi to zahtijevalo fino ugađanje modela na MBPP zlatnim programima.

Sažeti

Učenje iz povratnih informacija u ljudskom prirodnom jeziku učinkovitije je u smislu uzoraka obuke i učinkovitije u smislu zadataka stvaranja koda. Uzbudljivo nedavno otkriće je sposobnost unaprijed obučenih velikih jezičnih modela (LLM) da koriste povratnu informaciju prirodnog jezika u vrijeme zaključivanja. Istraživači proširuju ovo otkriće formaliziranjem algoritma, koji nazivaju imitacijskim učenjem iz jezičnih povratnih informacija, za učenje iz prirodnih jezičnih povratnih informacija tijekom treninga (ILF). ILF je jednostavan za korištenje i učinkovit pri uzorkovanju budući da mu je potrebna samo ograničena količina povratnih informacija koje su napisali ljudi tijekom obuke i nijedna tijekom testiranja. Istraživači također nude dokaz koncepta zadatka koji zahtijeva sintezu neuralnog programa, pokazujući da se ILF može smatrati načinom da se minimizira odstupanje KL-a od osnovne distribucije istine. Istraživači koriste ILF kako bi nadmašili fino ugađanje na mjerilu Mostly Basic Python Problems (MBPP) i fino ugađanje na popravljenim programima koje su stvorili ljudi povećanjem CODEGEN-MONO 6.1B propusnica za model@1 stopa za 38% relativno (i 10% apsolutno) na MBPP benchmarku. Nalazi istraživača pokazuju da je obuka samo na demonstracijama neučinkovita za poboljšanje izvedbe LLM-a na zadacima generiranja koda te da je učenje putem povratnih informacija prirodnog jezika koje su napisali ljudi učinkovitije i učinkovitije za uzorak.