Daugianariai skaičiavimai, diferencialinės lygtys, tiesinė algebra – temos, kurias daugelis Masačusetso technologijos instituto (MIT) studentų gali įveikti be vargo, – nuolat kelia sunkumų mašininio mokymosi modeliams. Geriausi modeliai sugebėdavo atsakyti tik į pradinio ar vidurinės mokyklos lygio matematikos klausimus, be to, ne visada rasdavo teisingus sprendimus
Dabar daugiadalykė MIT ir kitų universitetų mokslininkų komanda, vadovaujama MIT Elektros inžinerijos ir informatikos katedros (EECS) dėstytojo Iddo Drori, panaudojo neuronų tinklo modelį, kad per kelias sekundes išspręstų universitetinio lygio matematikos uždavinius žmogaus lygiu
Modelis taip pat automatiškai paaiškina sprendimus ir greitai generuoja naujus universitetinių matematikos dalykų uždavinius. Kai tyrėjai šiuos mašinos sugeneruotus klausimus parodė universiteto studentams, šie nesugebėjo atskirti, ar klausimus sugeneravo algoritmas, ar žmogus
Šis darbas galėtų būti panaudotas siekiant supaprastinti kursų turinio generavimą, o tai galėtų būti ypač naudinga dideliuose rezidentiniuose kursuose ir masiniuose atviruose internetiniuose kursuose (MOOC), kuriuose mokosi tūkstančiai studentų. Sistema taip pat galėtų būti naudojama kaip automatinis korepetitorius, kuris studentams parodytų matematikos uždavinių sprendimo etapus.
„Manome, kad tai pagerins aukštąjį mokslą”, – sako pagrindinis darbo autorius Drori, kuris taip pat yra Kolumbijos universiteto Kompiuterių mokslo katedros docentas ir šią vasarą prisijungs prie Bostono universiteto dėstytojų. „Tai padės studentams tobulėti, o dėstytojams – kurti naują turinį, be to, tai galėtų padėti padidinti kai kurių kursų sudėtingumo lygį. Be to, tai leidžia mums sudaryti klausimų ir kursų grafiką, kuris padeda suprasti kursų ir jų išankstinių sąlygų ryšį ne tik istoriškai juos apmąstant, bet ir remiantis duomenimis.”
Darbas atliktas bendradarbiaujant MIT, Kolumbijos universiteto, Harvardo universiteto ir Vaterlo universiteto studentams, mokslininkams ir dėstytojams. Vyresnysis autorius yra Gilbertas Strangas, MIT matematikos profesorius. Tyrimas šią savaitę paskelbtas žurnale Proceedings of the National Academy of Sciences.
„Eurekos” akimirka
Drori ir jo studentai bei kolegos prie šio projekto dirbo beveik dvejus metus. Jie nustatė, kad modeliai, iš anksto apmokyti naudojant tik tekstą, vidurinės mokyklos matematikos uždavinius sprendžia ne geriau kaip 8 proc. tikslumu, o modeliai, naudojantys grafinius neuroninius tinklus, gali įveikti mašininio mokymosi kurso klausimus, tačiau juos apmokyti užtrunka savaitę.
Tada Droriui įvyko, kaip jis pats sako, „eurikos” momentas: Jis nusprendė pabandyti paimti klausimus iš MIT ir Kolumbijos universiteto bakalauro matematikos kursų, kurių modelis dar niekada nebuvo matęs, paversti juos programavimo užduotimis ir pritaikyti programų sintezės ir mokymosi keliais kadrais metodus. Klausimą paversti programavimo užduotimi gali būti taip paprasta, kaip perrašyti klausimą „raskite atstumą tarp dviejų taškų” į „parašykite programą, kuri rastų skirtumą tarp dviejų taškų”, arba pateikti kelias klausimų ir programų poras kaip pavyzdžius.
Tačiau prieš pateikdami šias programavimo užduotis neuroniniam tinklui, tyrėjai atliko naują veiksmą, kuris leido jam gerokai pranokti ankstesnius bandymus.
Anksčiau jie ir kiti, sprendę šią problemą, naudojo neuroninį tinklą, pavyzdžiui, GPT-3, kuris buvo iš anksto apmokytas dirbti tik su tekstu, t. y. jam buvo rodomi milijonai teksto pavyzdžių, kad jis išmoktų natūralios kalbos šablonų. Šį kartą jie naudojo neuroninį tinklą, iš anksto parengtą pagal tekstą, kuris taip pat buvo „sureguliuotas” pagal kodą. Šį tinklą, pavadintą Codex, sukūrė OpenAI. Tikslus derinimas – tai iš esmės dar vienas išankstinio mokymo etapas, galintis pagerinti mašininio mokymosi modelio veikimą
Iš anksto parengtam modeliui buvo parodyti milijonai kodo pavyzdžių iš internetinių saugyklų. Kadangi šio modelio mokymo duomenis sudarė milijonai natūralios kalbos žodžių ir milijonai kodo eilučių, jis išmoko teksto ir kodo dalių sąsajų
Daugelį matematikos uždavinių galima išspręsti naudojant skaičiavimo grafiką arba medį, tačiau tekste užrašytą uždavinį sunku paversti tokio tipo atvaizdu, aiškina Drori. Tačiau kadangi šis modelis išmoko teksto ir kodo sąsajų, jis gali paversti teksto klausimą į kodą, gavęs vos kelis klausimo ir kodo pavyzdžius, o tada paleisti kodą, kad atsakytų į problemą.
„Kai tiesiog užduodate klausimą tekste, mašininio mokymosi modeliui sunku sugalvoti atsakymą, nors atsakymas gali būti tekste”, – sako jis. „Šis darbas užpildo tą trūkstamą dalį – kodo naudojimą ir programų sintezę.”
Šis darbas yra pirmasis, kuriame sprendžiami bakalauro lygio matematikos uždaviniai, ir perkelia kartelę nuo 8 proc. tikslumo iki daugiau nei 80 proc.”
Konteksto pridėjimas
Paversti matematikos klausimus programavimo užduotimis ne visada paprasta, sako Drori. Kai kuriems uždaviniams spręsti tyrėjai turi pridėti kontekstą, kad neuroninis tinklas galėtų teisingai apdoroti klausimą. Studentas šį kontekstą įsidėmėtų mokydamasis, tačiau neuroninis tinklas neturi šių foninių žinių, nebent tyrėjai jas nurodo
Pavyzdžiui, jiems gali prireikti paaiškinti, kad klausimo tekste esantis „tinklas” reiškia „neuroninius tinklus”, o ne „ryšių tinklus” Arba jiems gali tekti nurodyti modeliui, kokį programavimo paketą naudoti. Taip pat gali tekti pateikti tam tikras apibrėžtis; klausime apie pokerio kortas gali tekti nurodyti modeliui, kad kiekvienoje kaladėje yra 52 kortų.
Šios programavimo užduotys su kontekstu ir pavyzdžiais automatiškai pateikiamos iš anksto apmokytam ir sureguliuotam neuroniniam tinklui, kuris pateikia programą, paprastai duodančią teisingą atsakymą. Ji buvo teisinga atsakant į daugiau nei 80 proc. klausimų.
Tyrėjai taip pat naudojo savo modelį klausimams generuoti, pateikdami neuroniniam tinklui matematikos uždavinių tam tikra tema seriją ir paprašydami jo sukurti naują.
„Kai kuriomis temomis jis mus nustebino. Pavyzdžiui, buvo klausimų apie horizontalių ir vertikalių linijų kvantinį aptikimą, o jis sugeneravo naujus klausimus apie įstrižainių linijų kvantinį aptikimą. Taigi, jis ne tik generuoja naujus klausimus, pakeisdamas esamų klausimų reikšmes ir kintamuosius”, – sako Drori.
Žmogaus ir mašinos generuojami klausimai
Tyrėjai išbandė mašinos generuojamus klausimus, parodydami juos universiteto studentams. Tyrėjai studentams 10 atsitiktine tvarka pateikė klausimus iš kiekvieno bakalauro matematikos kurso; penkis klausimus sukūrė žmonės, o penkis – mašinos
Studentai negalėjo atskirti, ar mašinos sukurtus klausimus parengė algoritmas, ar žmogus, ir žmogaus bei mašinos sukurtus klausimus vertino panašiais balais pagal sudėtingumo lygį ir tinkamumą kursui.
Drori skuba pabrėžti, kad šiuo darbu nesiekiama pakeisti žmogaus dėstytojo.
„Automatizavimas dabar sudaro 80 procentą, tačiau automatizavimas niekada nebus 100 procento tikslus. Kaskart ką nors išsprendus, kas nors sugalvos sunkesnį klausimą. Tačiau šis darbas atveria lauką žmonėms, kad jie galėtų pradėti spręsti vis sunkesnius ir sunkesnius klausimus naudodami mašininį mokymąsi. Manome, kad tai turės didelį poveikį aukštajam mokslui.”
Komanda džiaugiasi savo metodo sėkme ir išplėtė darbą, kad galėtų dirbti su matematikos įrodinėjimais, tačiau yra tam tikrų apribojimų, kuriuos jie planuoja pašalinti. Šiuo metu modelis negali atsakyti į klausimus, turinčius vizualinį komponentą, ir dėl skaičiavimo sudėtingumo negali spręsti uždavinių, kurie yra sunkiai išsprendžiami
Be to, kad įveiktų šias kliūtis, jie siekia išplėsti modelį iki šimtų kursų. Turėdami šimtus kursų, jie gaus daugiau duomenų, kurie padės pagerinti automatizavimą ir suteiks įžvalgų apie kursų kūrimą ir mokymo programas