Neironu tīkli: kas tie ir, kā tie darbojas un kāpēc nosaukums maldina
Jūsu vectēva telefona centrāle
Iedomājieties: ir 1950. gads, un jūsu vectēvs strādā telefona uzņēmumā. Viņa darbs? Vadīt milzīgu centrāli. Simtiem kabeļu, tūkstošiem mazu ligzdu, un viņa rokas zibens ātrumā savieno vienu zvanu ar otru.
Kā darbojās centrāle
Kāds zvana no maizes ceptuves uz ziedu veikalu. Jūsu vectēvs iesprauž kabeli no ligzdas A47 ligzdā B23. Zvans savienots. Kāds cits zvana no bibliotēkas uz pastu. Vēl viens kabelis, vēl viens savienojums. Visu dienu viņš veido savienojumus, novada signālus un palīdz informācijai plūst no vienas vietas uz otru.
Tagad iedomājieties, ka šī centrāle spētu mācīties. Iedomājieties, ka pēc tūkstošiem zvanu tā sāktu pamanīt modeļus. Lielākā daļa zvanu no maizes ceptuves no rīta ved uz restorāniem. Lielākā daļa zvanu no skolām pēcpusdienā ved uz vecākiem. Lielākā daļa zvanu no slimnīcas ir steidzami, un tiem būtu jātiek cauri nekavējoties.
Ja šī centrāle spētu pielāgoties, pamatojoties uz šiem modeļiem, novadot zvanus efektīvāk, bez jūsu vectēva domāšanas par katru atsevišķi, jums būtu kaut kas ļoti līdzīgs neironu tīklam.
Tas patiesībā ir neironu tīkls. Ne smadzenes. Ne intelekts. Tikai ļoti sarežģīta centrāle, kas mācās, kuri savienojumi darbojas vislabāk, izmantojot praksi.
Nosaukums "neironu tīkls" liek izklausīties, it kā mēs būvētu elektroniskas smadzenes. Mēs neesam. Mēs būvējam gudras centrāles, kas kļūst labākas informācijas novadīšanā caur pieredzi. Ļaujiet man parādīt, kā tieši tas darbojas, izmantojot piemērus, ko ikviens var saprast.
Lielā nosaukuma juceklis (kāpēc "neirons" ir maldinošs)
Kad zinātnieki pirmo reizi izveidoja šīs sistēmas 1950. gados, viņi paskatījās uz to, kā darbojas cilvēka smadzenes, un nodomāja: "Hei, mēs varētu uzbūvēt kaut ko, kas no tā iedvesmots." Viņi aizguva dažas idejas un izdomātu nosaukumu.
Kļūda.
Kāpēc nosaukums ir maldinošs
Saukt šīs sistēmas par "neironu tīkliem" ir tas pats, kas saukt lidmašīnu par "mehānisku putnu". Jā, abi lido. Jā, abi ir iedvesmoti no dabas vērošanas. Bet lidmašīna nevēdina spārnus, tai nav spalvu, tai nav jāēd tārpi, un tā nelido uz dienvidiem ziemai.
Jūsu īstās smadzenes
- → Aptuveni 86 miljardi neironu
- → Katrs no tiem ir neticami sarežģīta bioloģiska šūna
- → Tūkstošiem savienojumu uz vienu neironu
- → Darbojas ar ķīmiju un neirotransmiteriem
- → Spēj augt un mainīties visas dzīves garumā
Mākslīgs "neirons"
Tā ir vienkārša matemātiska darbība. Reizināšana un saskaitīšana. Tas arī viss. Tas ir tikpat līdzīgs smadzeņu šūnai, cik spuldze ir līdzīga saulei. Abi rada gaismu, bet viens ir milzīga kodolsintēzes lode, bet otrs darbojas ar elektrību no jūsu sienas kontaktligzdas.
Tāpēc, kad vien dzirdat "neironu tīkls", vienkārši domājiet "modeļu apguves sadales centrs." Tas nav tik pievilcīgi, bet ir daudz precīzāk. Un, saprotot, kas šīs sistēmas patiesībā ir, jūs saprotat, ko tās spēj un ko nespēj.
Mācīšanās sadales centrs
Sadales centrs apgūst jūsu pilsētas zvanu paradumus. Pēc tūkstošiem zvanu novērošanas tas pamana, ka maiznīca katru rītu ap pulksten 6 zvana restorāniem. Rīt, kad pienāks šis 6 no rīta zvans, sadales centrs būs gatavs. Tas jau ir sagatavojis labāko savienojumu, mācījies no pieredzes, pielāgojies modelim. Tieši to šīs sistēmas dara. Tās atrod modeļus piemēros un izmanto šos modeļus, lai nākotnē savienojumus veidotu ātrāk un labāk.
Pamatelements: viens vienkāršs savienojuma punkts
Sāksim ar mazāko mūsu sadales tāfeles daļu: vienu savienojuma punktu. Skaistajā terminoloģijā to sauc par "mākslīgo neironu". Bet patiesībā tā ir tikai vieta, kur saiet kopā vairāki vadi un no kuras iziet viens vads.
Iedomājieties, ka izlemjat, vai ņemt līdzi lietussargu, izejot no mājas. Jūs ņemat vērā vairākus signālus:
Signāli, ko ņemat vērā
- Vai debesis ir tumšas un mākoņainas? (1. signāls)
- Vai laika prognoze solīja lietu? (2. signāls)
- Vai ir lietus sezona? (3. signāls)
- Vai nesat citas lietas? (4. signāls)
Bet ne visi šie signāli ir vienlīdz svarīgi. Laika prognoze, visticamāk, ir ticamāka nekā tikai skatīšanās debesīs. Lietus sezonai dažviet ir lielāka nozīme nekā citviet. Jūs tās varētu garīgi nosvērt:
Svarīguma izvērtēšana
- ● Tumši mākoņi: vidēji svarīgi
- ● Laika prognoze: ļoti svarīgi
- ● Lietus sezona: nedaudz svarīgi
- ● Nēsāšana līdzi: mazāk svarīgi
Jūsu smadzenes šo aprēķinu veic acumirklī. Tās izsver visus signālus pēc svarīguma, tos summē un pieņem lēmumu: lietussargs vai bez lietussarga.
Ko dara mākslīgais neirons
Mākslīgais neirons dara tieši to pašu, tikai ar skaitļiem. Katrs ienākošais signāls tiek reizināts ar tā svarīgumu (tā svaru). Visi šie svērtie signāli tiek saskaitīti kopā. Ja kopsumma ir pietiekami liela, izvade ir "jā, aktivizēt." Ja tā ir pārāk maza, izvade ir "nē, palikt klusam."
Tas ir viens neirons. Sareiziniet dažus skaitļus. Saskaitiet tos. Pārbaudiet, vai kopsumma pārsniedz slieksni. Izvade ir jā vai nē. Nekādas mistikas. Nekādas inteliģences. Tikai aritmētika.
Iedomājieties to kā durvju sargu klubā, kurš pārbauda jūsu vecumu, apģērba kodu un to, vai esat viesu sarakstā. Katram faktoram ir atšķirīgs svars. Viesu sarakstā? Jūs, visticamāk, tiksim iekšā. Pienācīgi apavi? Svarīgi, bet ne izšķiroši. Durvju sargs summē visus faktorus un pieņem vienu lēmumu: iekšā vai ārā. Tas ir mākslīgais neirons. Ļoti vienkāršs lēmumu pieņemšanas punkts, kas ņem vērā vairākus ievades datus ar dažādu svarīguma līmeni.
Savienojot Punktus: Veidojot Sadales Centrāli
Viens savienojuma punkts nav īpaši noderīgs. Jūsu vectēva sadales centrālē bija tūkstošiem. Tieši tur slēpjas spēks.
Iedomājieties, ka mēģināt atpazīt savu draudzeni Mariju pārpildītā dzelzceļa stacijā. Jūsu smadzenes šo lēmumu nepieņem ar vienu neironu. Tās izmanto tūkstošiem lēmumu punktu, katrs aplūkojot citas detaļas:
- Pirmā līmeņa lēmumi: Vai tas ir cilvēks? Vai tā ir sieviete? Aptuveni pareizais augums?
- Otrā līmeņa lēmumi: Vai viņai ir tumši mati? Vai viņa nēsā brilles? Vai tas ir viņas ierastais mētelis?
- Trešā līmeņa lēmumi: Vai viņas seja atbilst Marijas vaibstiem? Šī gaita šķiet pazīstama. Tas noteikti ir viņas rokassomiņa.
- Galīgais lēmums: Visi pavedieni sader kopā. Tā ir Marija. Pamāj un sauc viņu vārdā.
Mākslīgais neironu tīkls darbojas tāpat. Tas ir organizēts slāņos, kā stāvi ēkā. Informācija plūst no pirmā stāva (ievades slāņa) cauri vairākiem vidējiem stāviem (slēptajiem slāņiem) līdz augšējam stāvam (izvades slānim).
Pieņemsim, ka mēģini iemācīt datoram atpazīt kaķu attēlus. Lūk, kas notiek:
-
1
Ievades slānis (pirmais stāvs):
Saņem neapstrādāto attēlu. Katrs sīkais punkts (pikselis) attēlā nonāk vienā neironā. Nelielā fotoattēlā var būt 10 000 pikseļu, tāpēc, lai to saņemtu, ir nepieciešami 10 000 neironu. Katrs neirons glabā vienu sīku informācijas daļiņu: "Mans pikselis ir tumšs" vai "Mans pikselis ir gaišs."
-
2
Pirmais slēptais slānis (otrais stāvs):
Meklē vienkāršus rakstus. Daži neironi satraucas, kad ierauga horizontālas līnijas. Citi pamana vertikālas līnijas. Daži atpazīst līknes vai stūrus. Šie neironi vēl nezina, ka skatās uz kaķiem. Viņi tikai zina: "Es atradu līku līniju šeit" vai "Es pamanīju malu tur."
-
3
Otrais slēptais slānis (trešais stāvs):
Apvieno šos vienkāršos rakstus sarežģītākās formās. "Hei, šīs līknes un malas kopā izskatās kā smaila auss." "Šie raksti, kas sakārtoti šādā veidā, izskatās kā ūsas." "Šī noteikti ir acs forma." Joprojām neatpazīst kaķus, tikai identificē kaķa daļas.
-
4
Trešais slēptais slānis (ceturtais stāvs):
Saliek daļas pilnās iezīmēs. "Šīs ūsas, šī deguna forma, šīs smailās ausis... Es šo kombināciju jau esmu redzējis. Tas sāk izskatīties kā kaķa seja." Tagad mēs kaut ko panākam.
-
5
Izvades slānis (augšējais stāvs):
Pieņem galīgo lēmumu. "Pamatojoties uz visu, ko atrada citi stāvi, es esmu 95% pārliecināts, ka tas ir kaķis. Varētu būt suns (3% iespēja). Noteikti nav automašīna (0,001% iespēja)." Neirons ar visaugstāko pārliecību uzvar, un tīkls paziņo: "Kaķis!"
Katrs slānis balstās uz iepriekšējo. Vienkārši raksti kļūst par sarežģītām formām. Sarežģītas formas kļūst par atpazīstamām iezīmēm. Iezīmes kļūst par pilnvērtīgiem objektiem. Tas ir tas maģiskais triks. Nevis īsta inteliģence, bet gan patiešām gudra vienkāršu lēmumu slāņošana.
Mācīšanās daļa (kā sadales panelis kļūst gudrāks)
Un te kļūst interesanti. Kā tīkls uzzina, kuri savienojumi ir svarīgi?
Mācīšanās kā veļas šķirošana
Iedomājieties, ka mācāt savam brāļadēlam šķirot veļu. Pirmajā reizē viņam nav ne jausmas. Viņš var ielikt sarkanu zeķi pie baltiem krekliem. Katastrofa. Rozā krekli visur. Jūs sakāt: "Nē, nē, tas bija nepareizi. Sarkanais iet pie tumšajiem, nevis baltajiem." Viņš pielāgo savus iekšējos noteikumus. Nākamajā reizē viņam sokas mazliet labāk. Joprojām kļūdās, bet retāk. Jūs turpināt viņu labot. "Tieši tā!" "Nē, mēģini vēlreiz." "Lieliski!" "Hmm, ne gluži." Pēc simts veļas mazgāšanas reizēm jūsu brāļadēls ir iemācījies rakstus. Baltie kopā. Tumšie kopā. Sarkanie ar tumšajiem. Delikātie atsevišķi. Viņam vairs neesat vajadzīgs. Viņš mācījās praksē un labojot.
Neironu tīkli mācās tieši tāpat. Lūk, process:
-
1
Sāciet ar nejaušiem minējumiem
Tīkls sākas ar pilnīgi nejaušiem savienojumu stiprumiem (svariem). Tas ir kā jūsu brāļadēls pirmajā dienā. Parādiet tam kaķa attēlu, un tas var pateikt "Mašīna!" Pilnīgas muļķības. Bet tas ir labi. Visi kaut kur sāk.
-
2
Parādiet tam piemēru
Ievadiet tīklā kaķa attēlu. Attēls plūst cauri visiem slāņiem. Katrs neirons veic savu aprēķinu (reizina ievades ar svariem, saskaita tos, aktivizējas vai ne). Galu galā izvades slānis izdara minējumu. Ar nejaušiem svariem minējums ir briesmīgs. "Suns! Nē, mašīna! Varbūt… lietussargs?"
-
3
Pasakiet tam pareizo atbildi
Jūs zināt pareizo atbildi (jo pats esat iezīmējis apmācības attēlus). "Nē, tas bija kaķis, nevis mašīna." Tīkls mēra, cik ļoti tas kļūdījās. Uzminēja mašīnu ar 80% pārliecību, kad vajadzēja pateikt kaķis? Tas ir ļoti nepareizi. Aprēķiniet, cik tālu katrs neirons bija no pareizās atbildes.
-
4
Pielāgojiet savienojumus (atpakaļizplatīšana)
Lūk, gudrā daļa. Tīkls strādā atpakaļ no izvades uz ievadi, jautājot: "Kuri savienojumi veicināja šo kļūdu? Kuri svari ir jāmaina?" Tas ir kā izsekot jūsu brāļadēla domāšanas procesam. "Tu ieliki sarkano zeķi kopā ar baltajām, jo domāji, ka krāsai nav nozīmes. Palielināsim krāsas nozīmi tavā lēmumā." Pielāgojiet katru svaru nedaudz virzienā, kas būtu samazinājis kļūdu.
-
5
Atkārtojiet tūkstošiem reižu
Parādiet tīklam vēl vienu attēlu. Tas izdara vēl vienu minējumu (tagad nedaudz labāku). Izmēriet kļūdu. Pielāgojiet svarus vēlreiz. Atkārtojiet ar tūkstošiem vai miljoniem attēlu. Lēnām, pamazām svari pāriet no nejaušas ķēpas uz noderīgiem modeļiem. Pēc pietiekami daudz prakses tīkls sāk pareizi atpazīt. Parādiet tam kaķi, tas saka kaķis. Parādiet tam suni, tas saka suns. Tas ir iemācījies.
Ko īsti nozīmē "mācīšanās"
Šo procesu sauc par "trenēšanu" vai "mācīšanos", bet patiesībā tā ir tikai matemātiska optimizācija. Pielāgo miljoniem sīku skaitļu (svaru), balstoties uz piemēriem, līdz tīkla prognozes sakrīt ar realitāti. Nekādas sapratnes. Nekādas apziņas. Tikai modeļu atpazīšana, izmēģinot un kļūdoties.
Jo vairāk piemēru tam parādi, jo labāk tas darbojas. Jo daudzveidīgāki piemēri, jo labāk tas tiek galā ar jaunām situācijām. Parādi tam tikai zeltainos retrīverus, un tam būs grūtības ar pūdeļiem. Parādi tam kaķus visās krāsās, izmēros un pozās, un tas atpazīs kaķus jebkur.
Iedomājies to kā stīgu spriegojuma regulēšanu uz ģitāras. Pārāk vaļīgi, nepareiza skaņa. Pārāk cieši, arī nepareizi. Parauj stīgu, ieklausies skaņā un nedaudz pielāgo spriegojumu. Parauj vēlreiz. Joprojām ne gluži pareizi. Pielāgo vēlreiz. Pēc daudziem sīkiem pielāgojumiem katra stīga skan perfekti. Neironu tīkla trenēšana ir tikai miljoniem "spriegojuma regulētāju" (svaru) pielāgošana, līdz rezultāts izklausās pareizi. Tikai mūzikas vietā tu radīsi prognozes.
Dziļā mācīšanās (kāpēc vairāk slāņu palīdz)
Tu, iespējams, dzirdēsi terminu "dziļā mācīšanās". Cilvēki izturas tā, it kā tas būtu kaut kas maģisks. Tā nav.
"Dziļš" vienkārši nozīmē "daudz slāņu". Trīs vai četru slēpto slāņu vietā tev var būt divdesmit, piecdesmit vai pat simts slāņu, kas sakrauti viens uz otra. Tik un tā. Lūk, lielais noslēpums.
Kāpēc tik daudz slāņu? Jo sarežģīti raksti prasa sarežģītu apstrādi.
Iedomājieties, ka mācāt kādam atpazīt kokus. Ar tikai diviem slāņiem (vienu slēpto slāni) varat iemācīt vienkāršus noteikumus:
Vienkārši raksti ar maz slāņu
- ✓ Zaļš augšā? Droši vien koks.
- ✓ Brūns vertikāls apakšā? Noteikti koks.
Bet kā ar palmām? Priedēm? Ķiršu ziediem? Kokiem ziemā bez lapām? Kokiem, ko klāj sniegs? Bonsai kokiem? Koku celmiem? Ar tikai vienkāršiem rakstiem jūs palaidīsit garām daudzas variācijas.
Pievienojiet vairāk slāņu, un katrs slānis var apgūt arvien sarežģītākas pazīmes:
Sarežģīti raksti ar daudziem slāņiem
- 1. slānis: Malas un faktūras
- 2. slānis: Mizas raksti un lapu formas
- 3. slānis: Zaru struktūras
- 4. slānis: Dažādu koku sugu pazīmes
- 5. slānis: Koki dažādos gadalaikos un apstākļos
Katrs slānis veido izpratni uz iepriekšējā slāņa atklājumiem. Līdz brīdim, kad sasniedzat izvadi, tīkls var atpazīt ozolus rudenī, palmas pludmalēs, priedes sniegā un ķiršu ziedus pavasarī. Viss no šiem slāņotajiem rakstiem.
Izsaukums
Vairāk slāņu nozīmē vairāk aprēķinu, vairāk apmācības laika un vairāk nepieciešamo piemēru. Sekls tīkls var mācīties no 10 000 attēliem. Dziļam tīklam var būt nepieciešams miljons. Bet sarežģītiem uzdevumiem, piemēram, valodas izpratnei, tūkstošiem objektu atpazīšanai vai šaha spēlēšanai meistara līmenī, dziļie tīkli ir pūļu vērti.
Tāpēc ChatGPT un mūsdienu mākslīgā intelekta sistēmas ir "dziļas". Tām ir desmitiem vai simtiem slāņu, kas apgūst ārkārtīgi sarežģītus modeļus no milzīga teksta, attēlu vai citu datu apjoma. Ne tāpēc, ka tās būtu inteliģentas, bet tāpēc, ka to veicamie uzdevumi prasa atpazīt ļoti smalkus, ļoti sarežģītus modeļus.
Divas pieejas: precizitāte pret efektivitāti
Lielākā daļa mūsdienu neironu tīklu aprēķiniem izmanto ļoti precīzus skaitļus. Reizinot un saskaitot svarus, tie izmanto tādus skaitļus kā 0.7234891 vai 1.3982736. Daudz decimālzīmju. Ļoti precīzi.
Tradicionālā pieeja: pārmērīga precizitāte
Tas ir kā kūkas sastāvdaļu mērīšana ar laboratorijas svariem, kuru precizitāte ir 0.001 grams. Milti: 247.384 grami. Cukurs: 118.592 grami. Ļoti precīzi, ļoti akurāti, un, godīgi sakot, pilnīga pārspīlēšana kūkas cepšanai.
Šiem precīzajiem skaitļiem (sauktiem par peldošā komata skaitļiem) ir nepieciešama liela skaitļošanas jauda. Katra reizināšana ar šiem skaitļiem prasa tūkstošiem tranzistoru darbību. Veicot miljardiem reizināšanu, lai apmācītu tīklu, tas sakrājas milzīgā elektroenerģijas un skaitļošanas laika apjomā.
Binārā pieeja
Binārie neironu tīkli: tikai divas vērtības
Ir vēl viena pieeja: binārie neironu tīkli. Precīzu decimālo skaitļu vietā izmanto tikai divas vērtības. Pozitīvs viens vai negatīvs viens. Tas arī viss.
Izklausās traki, vai ne? Kā var iemācīties sarežģītus modeļus tikai ar diviem skaitļiem?
Vecmāmiņas receptes pieeja
Padomā par to šādi. Kad tava vecmāmiņa cepa to ābolu pīrāgu, viņa neizmantoja laboratorijas svarus. Viņa izmantoja savas acis un pieredzi. "Apmēram tik daudz miltu. Laba sauja cukura. Sviests apmēram olas lielumā." Nemaz nav precīzi, bet pīrāgs tik un tā sanāca garšīgs.
Binārie tīkli darbojas līdzīgi. Katrs savienojums ir vai nu "jā, tam ir nozīme" (+1), vai "nē, tam nav nozīmes" (-1). Nekādas decimālās precizitātes. Tikai vienkāršas jā/nē balsošanas.
Maģija slēpjas kombinācijā. Tūkstošiem vienkāršu jā/nē lēmumu apvienojas, lai sniegtu pārsteidzoši precīzus prognozes. Tieši tāpat kā tavas vecmāmiņas neprecīzie mērījumi kopā ar viņas pieredzi radīja perfektu pīrāgu.
Priekšrocība
Binārie tīkli darbojas daudz ātrāk un patērē ievērojami mazāk enerģijas. Atceries mūsu iepriekšējo sarunu par bināro skaitļošanu? Vienkāršas jā/nē darbības ir simtiem reižu ātrākas nekā precīza decimālā matemātika. Binārais neironu tīkls var darboties tavā telefonā, uz vienkāršas datora mikroshēmas, pat uz mazām ierīcēm, kurām nav daudz jaudas. Tas pats tīkls ar precīziem skaitļiem prasītu milzīgu datoru un tonnām elektrības.
Uzņēmumā Dweve mēs koncentrējamies uz binārajiem neironu tīkliem reālās pasaules efektivitātei. Mūsu Core sistēma izmanto vienkāršus jā/nē svarus un darbojas 40 reizes ātrāk nekā tradicionālie tīkli, vienlaikus patērējot par 96% mazāk enerģijas. Ne tāpēc, ka mēs taupītu, bet tāpēc, ka lielākajai daļai reālu uzdevumu laboratorijas precizitāte nav vajadzīga. Vecmāmiņas receptes pieeja darbojas pilnīgi labi.
Ar Ko Neironu Tīkli Patiešām Ir Labi
Tagad, kad saproti, kā darbojas neironu tīkli, parunāsim par to, kam tie patiešām noder. Jo, neskatoties uz visu ažiotāžu, tie nav labi visam.
Neironu tīkli izceļas ar rakstu atpazīšanu. Ja tiem parādi tūkstošiem piemēru ar konsekventiem rakstiem, tie iemācās atpazīt šos rakstus jaunos piemēros. Tas padara tos ideālus šādiem uzdevumiem:
📷 Attēlu atpazīšana
Parādi tīklam miljonu marķētu fotogrāfiju, un tas iemācās atpazīt kaķus, suņus, automašīnas, sejas, audzējus rentgena attēlos, plaisas ceļos, visu, ar ko to apmācīji. Tava telefona kamera to izmanto, lai fokusētos uz sejām. Slimnīcas to izmanto, lai medicīniskajos skenējumos atklātu slimības.
🎤 Runas saprašana
Kad runā ar Siri vai Alexa, neironu tīkls pārvērš tavas balss modeļus tekstā. Tas ir mācījies no tūkstošiem stundu ierakstītas runas, ko nozīmē katrs skaņas modelis. Dažādi akcenti, fona troksnis, murmināšana… ar visu tas tiek galā, izmantojot rakstu atpazīšanu.
💬 Valodas apstrāde
Tulkošana, atbildēšana uz jautājumiem, teksta rakstīšana. Tīkli, kas apmācīti uz miljardiem vārdu, apgūst valodas darbības modeļus. Ne tāpēc, ka tie "saprastu" valodu, bet tāpēc, ka tie atpazīst modeļus, piemēram, "šim vārdam parasti seko tas vārds" un "šī teikuma struktūra nozīmē jautājumu."
🎬 Ieteikumu sniegšana
Netflix iesaka seriālus, Spotify atrod mūziku, kas jums patiks, Amazon iesaka preces. Šie tīkli mācās modeļus no miljoniem lietotāju. "Cilvēkiem, kuriem patika A un B, patika arī C. Šim cilvēkam patīk A un B, tāpēc, visticamāk, viņam patiks arī C."
🎮 Spēļu spēlēšana
Šaha programmas, Go spēlētāji, videospēļu mākslīgais intelekts. Tīkls spēlē miljoniem spēļu pret sevi, mācoties, kuri gājieni ved uz uzvaru un kuri uz zaudējumu. Tīra modeļu atpazīšana, izmēģinot un kļūdoties.
Ievērojat modeli? Tie visi ir uzdevumi, kuros lielos datu apjomos pastāv konsekventi modeļi. Parādiet tīklam pietiekami daudz piemēru, un tas atradīs modeļus.
Ar ko neironu tīkli netiek galā
Tagad par realitātes pārbaudi. Neironu tīkliem ir nopietni ierobežojumi:
⚠️ Tiem ir nepieciešams milzīgs datu apjoms
Bērns redz trīs suņus un saprot, kas ir "suns". Neironu tīklam ir vajadzīgi tūkstošiem vai miljoniem suņu attēlu. Nav datu? Nav mācīšanās. Mazs datu apjoms? Vāja veiktspēja. Šīs sistēmas ir izslāpušas pēc datiem.
⚠️ Tie ir melnās kastes
Tīkls nevar izskaidrot savus lēmumus. Tas zina atbildi (vai domā, ka zina), bet nevar pateikt, kāpēc. Miljoniem svaru mijiedarbojas sarežģītos veidos. Neviens cilvēks nevar izsekot šai loģikai. Tā ir liela problēma medicīnā, tiesībās un visur, kur lēmumi ir jāpamato.
⚠️ Tie mācās aizspriedumus no datiem
Ja jūsu apmācības datos ir aizspriedumi (un lielākajā daļā reālās pasaules datu tie ir), tīkls tos apgūst. Vēsturiska diskriminācija? Tīkls diskriminēs. Nelīdzsvaroti piemēri? Tīkls darbojas sliktāk attiecībā uz nepietiekami pārstāvētām grupām. Kādi dati, tāds rezultāts.
⚠️ Tie slikti vispārina
Apmāci tīklu uz kaķiem un suņiem, pēc tam parādi tam zirgu. Tas cīnās. Cilvēki vispārina viegli ("Ā, tas ir vēl viens četrkājainais dzīvnieks"). Neironu tīkli to nespēj. Tie zina tikai tos konkrētos modeļus, ko redzēja apmācības laikā. Jaunas situācijas tos mulsina.
⚠️ Tos var viegli apmānīt
Sīkas izmaiņas, ko cilvēks neredz, var pilnībā apmānīt tīklu. Maini dažus pikseļus kaķa fotoattēlā (izmaiņas, kuras tu pat nepamanītu), un tīkls pēkšņi var pateikt "Lidmašīna!" ar 99% pārliecību. To sauc par pretinieka uzbrukumu, un tas ir reāls drošības apdraudējums.
Tās nav nelielas problēmas. Tās ir būtiskas pašai neironu tīklu darbībai. Tīkls ir tik labs, cik labi ir tā apmācības dati, un tas spēj atpazīt tikai tos modeļus, ko jau ir redzējis.
Īstais Secinājums
Tātad, kas īsti ir neironu tīkli?
Tie ir sarežģītas modeļu atpazīšanas mašīnas. Daudzslāņu sadales dēļi, kas mācās no piemēriem. Matemātiskas optimizācijas sistēmas, kas pielāgo miljoniem sīku svaru, līdz prognozes sakrīt ar realitāti.
Tie nav smadzenes. Tie nav inteliģenti. Tie nav apzinīgi. Tie neko "nesaprot". Tie atpazīst modeļus, atkārtojot un labojot.
Bet šo ierobežojumu ietvaros tie ir ievērojami spēcīgi. Tie ir pārveidojuši tehnoloģijas. Tava telefona sejas atpazīšana, balss asistenti, surogātpasta filtri, fotoattēlu kārtošana, navigācijas lietotnes, straumēšanas ieteikumi, automātiskie tulkojumi… visu darbina neironu tīkli.
Galvenais ir tos izmantot pareiziem uzdevumiem
Modeļu atpazīšana? Lieliski. Uzdevumi ar skaidriem piemēriem un konsekventiem modeļiem? Ideāli. Radoša problēmu risināšana, kas prasa izprast kontekstu un nozīmi? Ne tik ļoti.
Kad kāds mēģina tev pārdot "AI" vai "neironu tīklus", pajautā sev: Vai tas tiešām ir modeļu atpazīšanas uzdevums? Vai ir pietiekami daudz labu datu, uz kuriem trenēties? Vai tas darbosies situācijās, kuras tas iepriekš nav redzējis? Vai tas var izskaidrot savus lēmumus, kad nepieciešams?
Ja atbildes ir jā, jā, droši vien un nē (attiecīgi), tad neironu tīkli varētu būt īstais rīks. Ja nē, tev varētu būt nepieciešams kaut kas cits.
Smadzeņu metafora lika neironu tīkliem izklausīties aizraujoši un noslēpumaini. Saprotot, kas tie patiesībā ir, proti, sarežģīti sadales paneļi, kas mācās no piemēriem, tie kļūst mazāk maģiski, bet daudz noderīgāki. Jo, kad saproti rīku, tu zini, kad to lietot un kad ķerties pie kā cita. Un šī izpratne ir vērtīgāka par jebkādu mārketinga ažiotāžu.
Uzņēmumā Dweve mēs veidojam neironu tīklus, kas respektē realitāti. Bināras darbības. Efektīvi aprēķini. Skaidri ierobežojumi. Nekādas maģijas, nekādas ažiotāžas, tikai godīga inženierija. Jo labākais mākslīgais intelekts ir tāds, kas darbojas reālajā pasaulē, nevis tikai pētniecības rakstos.