Kaip mokosi dirbtinis intelektas?“ – šiame vadove pagrindinės idėjos pateikiamos paprasta kalba – su pavyzdžiais, mažais nukrypimais nuo temos ir keliomis netobulomis metaforomis, kurios vis tiek šiek tiek padeda. Pradėkime. 🙂
Straipsniai, kuriuos galbūt norėsite perskaityti po to:
🔗 Kas yra nuspėjamasis dirbtinis intelektas
Kaip nuspėjamieji modeliai prognozuoja rezultatus, naudodami istorinius ir realaus laiko duomenis.
🔗 Kokias pramonės šakas sutrikdys dirbtinis intelektas
Sektoriai, kuriuos greičiausiai transformavo automatizavimas, analizė ir agentai.
🔗 Ką reiškia GPT?
Aiškus GPT akronimo ir kilmės paaiškinimas.
🔗 Kas yra dirbtinio intelekto įgūdžiai?
Pagrindinės kompetencijos kuriant, diegiant ir valdant dirbtinio intelekto sistemas.
Taigi, kaip tai daroma? ✅
Kai žmonės klausia, kaip mokosi dirbtinis intelektas?, jie dažniausiai turi omenyje: kaip modeliai tampa naudingi, o ne tik įmantrūs matematikos žaislai. Atsakymas yra receptas:
-
Aiškus tikslas – nuostolių funkcija, apibrėžianti, ką reiškia „gerai“. [1]
-
Kokybiški duomenys – įvairūs, aiškūs ir aktualūs. Kiekybė padeda; įvairovė dar labiau padeda. [1]
-
Stabilus optimizavimas – gradientinis nusileidimas su gudrybėmis, kaip išvengti svirduliavimo nuo uolos. [1], [2]
-
Apibendrinimas – sėkmė dirbant su naujais duomenimis, o ne tik su mokymo rinkiniu. [1]
-
Grįžtamojo ryšio ciklai – vertinimas, klaidų analizė ir iteracija. [2], [3]
-
Saugumas ir patikimumas – apsauginiai turėklai, bandymai ir dokumentacija, kad nekiltų chaosas. [4]
Norint įgyti prieinamų pagrindų, klasikinis gilaus mokymosi tekstas, vizualiai patogios kurso pastabos ir praktinis greitasis kursas apima esminius dalykus, nepaskandinant simbolių gausa. [1]–[3]
Kaip mokosi dirbtinis intelektas? Trumpas atsakymas paprastais žodžiais ✍️
Dirbtinio intelekto modelis pradedamas nuo atsitiktinių parametrų verčių. Jis pateikia prognozę. Jūs įvertinate tą prognozę nuostoliu . Tada jūs pakoreguojate tuos parametrus, kad sumažintumėte nuostolius naudodami gradientus . Kartokite šį ciklą daugelyje pavyzdžių, kol modelis nustos tobulėti (arba pritrūks užkandžių). Tai yra mokymo ciklas vienu įkvėpimu. [1], [2]
Jei norite šiek tiek daugiau tikslumo, žr. toliau pateiktus skyrius apie gradientinį nusileidimą ir atgalinį sklidimą. Greitam ir suprantamam kontekstui gauti yra plačiai prieinamos trumpos paskaitos ir laboratoriniai darbai. [2], [3]
Pagrindai: duomenys, tikslai, optimizavimas 🧩
-
Duomenys : Įvesties duomenys (x) ir tikslai (y). Kuo platesni ir aiškesni duomenys, tuo didesnė tikimybė juos apibendrinti. Duomenų kuravimas nėra žavus, bet tai – nežinomas herojus. [1]
-
Modelis : funkcija (f_\theta(x)) su parametrais (\theta). Neuroniniai tinklai yra paprastų vienetų krūvos, kurios jungiasi sudėtingais būdais – kaip LEGO kaladėlės, tik minkštesnės. [1]
-
Tikslas : Nuostolis (L(f_\theta(x), y)), kuris matuoja paklaidą. Pavyzdžiai: vidutinė kvadratinė paklaida (regresija) ir kryžminė entropija (klasifikacija). [1]
-
Optimizavimas : Naudokite (stochastinį) gradientinį mažėjimą parametrams atnaujinti: (\theta \leftarrow \theta - \eta \nabla_\theta L). Mokymosi greitis (\eta): per didelis – šokinėjate; per mažas – snaudate amžinai. [2]
Norint aiškiai susipažinti su nuostolių funkcijomis ir optimizavimu, puikiai tinka klasikinės pastabos apie mokymo gudrybes ir spąstus. [2]
Prižiūrimas mokymasis: mokykitės iš paženklintų pavyzdžių 🎯
Idėja : parodykite modelio įvesties ir teisingo atsakymo poras. Modelis išmoksta atvaizdavimą (x \rightarrow y).
-
Dažniausios užduotys : vaizdų klasifikavimas, nuotaikų analizė, lentelinis prognozavimas, kalbos atpažinimas.
-
Tipiniai nuostoliai : kryžminė entropija klasifikavimui, vidutinė kvadratinė paklaida regresijai. [1]
-
Spąstai : etikečių triukšmas, klasių disbalansas, duomenų nutekėjimas.
-
Pataisymai : stratifikuota atranka, patikimi nuostoliai, reguliarizavimas ir įvairesnis duomenų rinkimas. [1], [2]
Remiantis dešimtmečių patirtimi atliekant tyrimus ir gamybinę praktiką, prižiūrimas mokymasis išlieka pagrindiniu veiksniu, nes rezultatai yra nuspėjami, o metrikos – aiškios. [1], [3]
Neprižiūrimas ir savarankiškai prižiūrimas mokymasis: išmokite duomenų struktūrą 🔍
Neprižiūrimas mokosi modelių be etikečių.
-
Klasterizavimas : panašių taškų grupavimas – k vidurkių metodas yra paprastas ir stebėtinai naudingas.
-
Matmenų mažinimas : suspauskite duomenis į esmines kryptis – PCA yra vartų įrankis.
-
Tankio / generatyvinis modeliavimas : sužinokite patį duomenų pasiskirstymą. [1]
Savikontrolė yra modernus variklis: modeliai sukuria savo priežiūrą (užmaskuota prognozė, kontrastinis mokymasis), leisdami jums iš anksto apmokyti su daugybe nepažymėtų duomenų ir vėliau juos tiksliai suderinti. [1]
Pastiprinamasis mokymasis: mokykis darydamas ir gaudamas grįžtamąjį ryšį 🕹️
Agentas sąveikauja su aplinka , gauna atlygį ir išmoksta politiką , kuri maksimaliai padidina ilgalaikį atlygį.
-
Pagrindinės dalys : būsena, veiksmas, atlygis, politika, vertės funkcija.
-
Algoritmai : Q-mokymasis, politikos gradientai, veikėjas-kritikas.
-
Tyrinėjimas ir išnaudojimas : išbandykite naujus dalykus arba pakartotinai naudokite tai, kas veikia.
-
Kredito priskyrimas : kuris veiksmas lėmė kokį rezultatą?
Žmonių grįžtamasis ryšys gali padėti dresuoti, kai atlygiai yra nevienodi – reitingavimas ar pageidavimai padeda formuoti elgesį neužkoduojant tobulo atlygio rankiniu būdu. [5]
Gilusis mokymasis, atrama ant nugaros ir gradientinis nusileidimas – plakanti širdis 🫀
Neuroniniai tinklai yra paprastų funkcijų kompozicijos. Norėdami mokytis, jie remiasi atgaline sklidimo sistema :
-
Tiesioginis perdavimas : apskaičiuoja prognozes iš įvesties duomenų.
-
Nuostolis : matuoja paklaidą tarp prognozių ir tikslų.
-
Atgalinis perdavimas : grandinės taisyklė taikoma nuostolių gradientams apskaičiuoti pagal kiekvieną parametrą.
-
Atnaujinimas : stumkite parametrus pagal gradientą naudodami optimizavimo priemonę.
Tokie variantai kaip momentumas, RMSProp ir Adam sumažina treniruočių temperamentą. Reguliarizacijos metodai, tokie kaip iškritimas , svorio mažėjimas ir ankstyvas sustabdymas, padeda modeliams apibendrinti, o ne įsiminti. [1], [2]
Transformeriai ir dėmesys: kodėl šiuolaikiniai modeliai jaučiasi protingi 🧠✨
Transformatoriai pakeitė daugelį pasikartojančių kalbos ir regėjimo sistemų. Pagrindinis triukas yra savęs dėmesingumas , kuris leidžia modeliui įvertinti skirtingas įvesties dalis, priklausomai nuo konteksto. Poziciniai kodavimai tvarko tvarką, o kelių galvų dėmesys leidžia modeliui vienu metu sutelkti dėmesį į skirtingus ryšius. Mastelio keitimas – įvairesni duomenys, daugiau parametrų, ilgesnis mokymas – dažnai padeda, tačiau mažėja grąža ir didėja išlaidos. [1], [2]
Apibendrinimas, perteklinis pritaikymas ir šališkumo-dispersijos šokis 🩰
Modelis gali puikiai atlikti mokymo rinkinį ir vis tiek nepavykti realiame pasaulyje.
-
Perteklinis pritaikymas : įsimena triukšmą. Mokymo klaida mažėja, testo klaida didėja.
-
Nepakankamas pritaikymas : per daug paprasta; praleidžia signalą.
-
Šališkumo ir dispersijos kompromisas : sudėtingumas sumažina šališkumą, bet gali padidinti dispersiją.
Kaip geriau apibendrinti:
-
Įvairesni duomenys – skirtingi šaltiniai, sritys ir kraštutiniai atvejai.
-
Reguliarizavimas – iškritimas, svorio mažėjimas, duomenų papildymas.
-
Tinkamas patvirtinimas – švarūs testų rinkiniai, kryžminis mažų duomenų patvirtinimas.
-
Stebėjimo poslinkis – jūsų duomenų pasiskirstymas laikui bėgant keisis.
Riziką suvokianti praktika apibrėžia šias veiklas kaip gyvavimo ciklo veiklą – valdymą, žemėlapių sudarymą, matavimą ir vadybą, o ne vienkartinius kontrolinius sąrašus. [4]
Svarbūs rodikliai: kaip žinome, kad mokymasis įvyko 📈
-
Klasifikacija : tikslumas, preciziškumas, atkūrimas, F1, ROC AUC. Nesubalansuoti duomenys reikalauja tikslumo ir atkūrimo kreivių. [3]
-
Regresija : MSE, MAE, (R^2). [1]
-
Reitingas/paieška : MAP, NDCG, recall@K. [1]
-
Generatyviniai modeliai : sumišimas (kalba), BLEU/ROUGE/CIDEr (tekstas), CLIP pagrįsti vertinimai (multimodaliniai) ir, svarbiausia, žmogaus atliekami vertinimai. [1], [3]
Pasirinkite rodiklius, kurie atitiktų poveikį vartotojams. Nedidelis tikslumo padidėjimas gali būti nereikšmingas, jei tikroji kaina yra klaidingai teigiami rezultatai. [3]
Mokymo eiga realiame pasaulyje: paprastas planas 🛠️
-
Suformuluokite problemą – apibrėžkite įvestis, išvestis, apribojimus ir sėkmės kriterijus.
-
Duomenų srautas – rinkimas, žymėjimas, valymas, skaidymas, papildymas.
-
Bazinė linija – pradėkite paprastai; linijinės arba medžio formos bazinės linijos yra šokiruojamai konkurencingos.
-
Modeliavimas – išbandykite kelias šeimas: gradientu sustiprintus medžius (lentelės formos), CNN (vaizdai), transformatorius (tekstas).
-
Mokymai – tvarkaraštis, mokymosi tempo strategijos, kontroliniai taškai, mišrus tikslumas, jei reikia.
-
Vertinimas – abliacijos ir klaidų analizė. Atkreipkite dėmesį į klaidas, o ne tik į vidurkį.
-
Diegimas – išvadų srautas, stebėjimas, registravimas, atšaukimo planas.
-
Iteruoti – geresni duomenys, tikslus derinimas arba architektūros pakeitimai.
Mini atvejis : el. pašto klasifikatoriaus projektas pradėtas nuo paprastos tiesinės bazinės linijos, o tada tiksliai suderintas iš anksto apmokytas transformatorius. Didžiausias laimėjimas nebuvo modelis – tai buvo ženklinimo kriterijų sugriežtinimas ir nepakankamai atstovaujamų „kraštinių“ kategorijų pridėjimas. Kai šios kategorijos buvo įtrauktos, patvirtinimo F1 pagaliau sekė realaus pasaulio našumą. (Jūsų būsimasis „aš“: esu labai dėkingas.)
Duomenų kokybė, ženklinimas ir subtilus menas nemeluoti sau 🧼
Įvedus šiukšles, apgailestaujant išeinant. Ženklinimo gairės turėtų būti nuoseklios, išmatuojamos ir peržiūrimos. Svarbus komentatorių tarpusavio susitarimas.
-
Parašykite vertinimo kriterijus su pavyzdžiais, atvejais, lemiamais aspektais ir lemiamais kriterijais.
-
Patikrinkite duomenų rinkinius, ar nėra dublikatų ir beveik dublikatų.
-
Sekite kilmę – iš kur atsirado kiekvienas pavyzdys ir kodėl jis įtrauktas.
-
Duomenų aprėptį vertinkite pagal realius naudotojų scenarijus, o ne tik pagal tvarkingą lyginamąjį indeksą.
Tai puikiai dera prie platesnių užtikrinimo ir valdymo sistemų, kurias galite realiai įgyvendinti. [4]
Mokymosi perkėlimas, tikslus derinimas ir adapteriai – pakartotinai panaudokite sunkius darbus ♻️
Iš anksto apmokyti modeliai išmoksta bendruosius atvaizdavimus; tikslus derinimas juos pritaiko jūsų užduočiai su mažiau duomenų.
-
Funkcijų išgavimas : užšaldyti stuburą, ištreniruoti mažą galvą.
-
Visiškas tikslus derinimas : atnaujinkite visus parametrus, kad būtų pasiektas maksimalus pajėgumas.
-
Parametrais efektyvūs metodai : adapteriai, LoRA stiliaus žemo rango atnaujinimai – gerai tinka, kai trūksta skaičiavimo pajėgumų.
-
Adaptacija domenuose : įterpimų suderinimas skirtingose srityse; maži pokyčiai, didelė nauda. [1], [2]
Dėl šio pakartotinio naudojimo modelio šiuolaikiniai projektai gali būti įgyvendinami greitai, be didelių biudžetų.
Saugumas, patikimumas ir suderinimas – būtini dalykai 🧯
Mokymasis susijęs ne tik su tikslumu. Jums taip pat reikia modelių, kurie būtų patikimi, teisingi ir atitiktų numatytą paskirtį.
-
Priešiškas patikimumas : maži trikdžiai gali apgauti modelius.
-
Šališkumas ir teisingumas : vertinkite pogrupio rezultatus, o ne tik bendrus vidurkius.
-
Aiškinamasis aspektas : požymių priskyrimas ir tyrimas padeda suprasti, kodėl .
-
Žmogus grandinėje : eskalavimo keliai dviprasmiškiems arba didelį poveikį turintiems sprendimams. [4], [5]
Mokymasis pagal pageidavimus yra vienas pragmatiškų būdų įtraukti žmogaus sprendimą, kai tikslai yra neaiškūs. [5]
DUK per vieną minutę – greita ugnis ⚡
-
Taigi, kaip iš tikrųjų mokosi dirbtinis intelektas? Taikant iteracinę optimizaciją, nukreipiančią parametrus link geresnių prognozių. [1], [2]
-
Ar daugiau duomenų visada padeda? Paprastai, kol mažėja grąža. Įvairovė dažnai pranoksta neapdorotą kiekį. [1]
-
O kas, jei etiketės netvarkingos? Naudokite triukšmo atžvilgiu patikimus metodus, geresnes vertinimo kriterijus ir apsvarstykite savarankišką mokymąsi. [1]
-
Kodėl transformatoriai dominuoja? Dėmesys gerai prisitaiko ir fiksuoja ilgalaikes priklausomybes; įrankiai yra brandūs. [1], [2]
-
Kaip žinoti, kad baigiau mokymą? Patvirtinimo praradimas pasiekia stabilias vertes, metrikos stabilizuojasi ir nauji duomenys elgiasi taip, kaip tikėtasi – tada stebėkite, ar nėra poslinkio. [3], [4]
Palyginimo lentelė – įrankiai, kuriuos iš tikrųjų galite naudoti šiandien 🧰
Šiek tiek neįprasta tyčia. Kainos nurodytos pagrindinėms bibliotekoms – didelio masto mokymai, žinoma, turi infrastruktūros išlaidų.
| Įrankis | Geriausiai tinka | Kaina | Kodėl tai gerai veikia |
|---|---|---|---|
| PyTorch | Tyrėjai, statybininkai | Nemokamas – atviras šaltinis | Dinamiški grafikai, stipri ekosistema, puikūs vadovėliai. |
| TensorFlow | Gamybos komandos | Nemokamas – atviras šaltinis | Subrendęs aptarnavimas, TF Lite mobiliesiems; didelė bendruomenė. |
| scikit-learn | Lentelių duomenys, bazinės linijos | Nemokama | Švari API, greitas iteravimas, puikūs dokumentai. |
| Keras | Greiti prototipai | Nemokama | Aukšto lygio API per TF, skaitomi sluoksniai. |
| JAX | Energingi vartotojai, tyrimai | Nemokama | Automatinis vektorizavimas, XLA greitis, elegantiški matematiniai efektai. |
| Apkabinančių veidų transformeriai | NLP, regėjimas, garsas | Nemokama | Iš anksto apmokyti modeliai, paprastas tikslus derinimas, puikūs mazgai. |
| Žaibas | Mokymo darbo eigos | Nemokamas branduolys | Į komplektą įeina struktūra, registravimas, kelių GPU baterijos. |
| XGBoost | Lentelinis konkurencingumas | Nemokama | Tvirti pradiniai rodikliai dažnai laimi struktūrizuotų duomenų srityje. |
| Svoriai ir šališkumas | Eksperimento stebėjimas | Nemokamas lygis | Atkuriamumas, palyginami paleidimai, greitesni mokymosi ciklai. |
Autoritetingi dokumentai, nuo kurių galima pradėti: „PyTorch“, „TensorFlow“ ir tvarkingas „scikit-learn“ naudotojo vadovas. (Pasirinkite vieną, sukurkite ką nors mažo, kartokite.)
Išsami analizė: praktiniai patarimai, kurie sutaupys jūsų laiką 🧭
-
Mokymosi greičio grafikai : kosinuso mažėjimas arba vienas ciklas gali stabilizuoti mokymą.
-
Paketo dydis : didesnis ne visada reiškia geriau – stebėkite patvirtinimo metriką, o ne tik pralaidumą.
-
„Weight init“ : šiuolaikiniai numatytieji nustatymai tinka; jei mokymas stringa, peržiūrėkite inicializavimą arba normalizuokite ankstyvuosius sluoksnius.
-
Normalizavimas : partijos norma arba sluoksnio norma gali žymiai sušvelninti optimizavimą.
-
Duomenų papildymas : vaizdų apvertimas / apkirpimas / spalvų virpėjimas; teksto maskavimas / žetonų maišymas.
-
Klaidų analizė : klaidų grupavimas pagal pjūvį – vieno krašto atvejis gali viską nulemti.
-
Repro : nustatykite sėklas, registruokite hiperparametrus, išsaugokite kontrolinius taškus. Ateityje būsite dėkingi, pažadu. [2], [3]
Kilus abejonių, prisiminkite pagrindus. Pagrindiniai principai išlieka kelrodžiu. [1], [2]
Maža metafora, kuri beveik veikia 🪴
Modelio mokymas yra tarsi augalo laistymas keistu purkštuku. Per daug vandens – per daug tinkama bala. Per mažai – nepakankamai tinkama sausra. Tinkamas dažnis, saulės šviesa iš gerų duomenų ir maistinės medžiagos iš švarių tikslų – ir gausite augimą. Taip, šiek tiek banalu, bet rezultatas laikosi.
Kaip mokosi dirbtinis intelektas? Apjungiant visa tai 🧾
Modelis pradedamas atsitiktinai. Naudodamas gradientinius atnaujinimus, vadovaujamas nuostolių, jis suderina savo parametrus su duomenų modeliais. Atsiranda reprezentacijos, kurios palengvina prognozavimą. Įvertinimas parodo, ar mokymasis yra tikras, o ne atsitiktinis. O iteracija – su apsauginiais turėklais saugumui – paverčia demonstracinę versiją patikima sistema. Tai visa istorija, tik su mažiau paslaptingų vibracijų, nei atrodė iš pradžių. [1]–[4]
Baigiamosios pastabos – per ilga, neskaičiau 🎁
-
Kaip mokosi dirbtinis intelektas? Minimalizuodamas nuostolius su gradientais per daugybę pavyzdžių. [1], [2]
-
Geri duomenys, aiškūs tikslai ir stabilus optimizavimas padeda mokymuisi išlikti. [1]–[3]
-
Apibendrinimas visada pranoksta įsiminimą. [1]
-
Saugumas, vertinimas ir iteracija paverčia išmanias idėjas patikimais produktais. [3], [4]
-
Pradėkite paprastai, gerai išmatuokite ir patobulinkite taisydami duomenis prieš imdamiesi egzotiškų architektūrų. [2], [3]
Nuorodos
-
Goodfellow, Bengio, Courville – Gilusis mokymasis (nemokamas internetinis tekstas). Nuoroda
-
Stanfordo CS231n – Konvoliuciniai neuroniniai tinklai vizualiniam atpažinimui (kurso užrašai ir užduotys). Nuoroda
-
„Google“ – mašininio mokymosi greitasis kursas: klasifikavimo metrika (tikslumas, preciziškumas, atkūrimas, ROC/AUC) . Nuoroda
-
NIST – Dirbtinio intelekto rizikos valdymo sistema (AI RMF 1.0) . Nuoroda
-
„OpenAI“ – mokymasis iš žmogaus pageidavimų (preferencijomis pagrįsto mokymo apžvalga). Nuoroda