[SCHOAKING] [RUSLING] [CLIC] SPEAKER 2: Înainte de a continua, vă rugăm să vizionați următorul videoclip: Mashable, „Asistentul AI Google poate acum să facă apeluri telefonice reale”. BRANDON LESHCHINSKIY: Bună, tuturor. Numele meu este Brandon Leshchinskiy. Vă mulțumesc mult că m-ați primit. Ceea ce tocmai am văzut a fost un exemplu foarte bun, cred, a ceea ce majoritatea oamenilor ar numi AI. Acum, lasă-mă să întreb, ce este AI? VORBATOR 1: Răspunsuri de la participanți: VORBITTOR 2: Inteligența artificială este ceva ce poate învăța. Este mai mult decât un program care urmează reguli. Este capabil să se adapteze. VORBATOR 1: Ceva care să ne ușureze viața. SPEAKER 2: O mașină care simulează luarea deciziilor umane și înțelegerea într- o măsură în care nu se poate distinge de o ființă umană. BRANDON LESHCHINSKIY: Deci, deja, vedem una dintre problemele aici, este că „AI” este un termen foarte supraîncărcat. Cred că cele mai multe definiții tipice sunt cele mai apropiate de ultima, că inteligența artificială este atunci când o mașină sau un computer poate prezenta unele semne de inteligență asemănătoare omului. Cineva a menționat învățarea. Acesta ar fi un subset al inteligenței artificiale, în care vom intra. Dar, în orice caz, o parte din punct de vedere aici este că AI este un termen foarte supraîncărcat care poate însemna multe lucruri diferite pentru o mulțime de oameni diferiți. Și gluma din comunitatea AI este că este AI până ne dăm seama cum să o facem, iar apoi, după aceea, este doar codificare. După cum am spus, vă mulțumesc foarte mult că m-ați primit. Numele meu este Brandon. Sunt proaspăt absolvent al MIT. Și în atelierul de astăzi, vom aborda elementele de bază ale inteligenței artificiale. Vom vorbi despre învățarea automată. Vom antrena un algoritm împreună. Și vă las cu câteva întrebări și un cuvânt de precauție. Înainte de a intra în toate acestea, vreau să încep cu concluzia principală, și anume, cu datele potrivite și modelul potrivit, inteligența artificială poate rezolva multe probleme. Dar alegerea problemei potrivite, găsirea datelor potrivite și formarea modelului potrivit poate fi dificilă. Deci, dacă nu vă amintiți nimic altceva de la atelierul de astăzi, acest diapozitiv este concluzia cheie. Și așa cum am spus, vom acoperi inteligența artificială. Vom vedea câteva exemple diferite de instrumente care pot fi folosite pentru a implementa inteligența artificială, inclusiv ceva numit învățarea automată. Vom vorbi despre diferite tipuri de învățare automată și despre diferite probleme care pot fi rezolvate prin învățarea automată. Și permiteți-mi doar să spun, deoarece, probabil, mulți dintre voi deja vă întrebați ce este învățarea profundă? Învățarea profundă este fie un subset, fie un subset al unui subset al învățării automate. Deci, pentru cei dintre voi care sunt familiarizați cu rețelele neuronale sau cu învățarea profundă, acesta este un instrument care ar putea fi folosit în problemele de învățare automată. Nu vom vorbi deloc despre asta în profunzime astăzi, dar sper că până la sfârșitul atelierului, băieți, veți avea elementele fundamentale necesare pentru a explora învățarea profundă la nivel conceptual dacă doriți să faceți asta altădată. . Toate acestea fiind spuse, să intrăm în elementele de bază ale AI. Deci AI poate fi generală sau poate fi îngustă. Când vorbim despre inteligența artificială generală, este atunci când o mașină poate învăța orice sarcină pe care o poate îndeplini un om. Acest lucru nu există. Nu există roboți Terminator. Nu există... nu există IA generală. Și experții variază foarte mult în ceea ce privește predicțiile lor cu privire la momentul în care se poate întâmpla acest lucru. Deci sunt unii oameni care spun, o, 10, 20 de ani, sunt unii oameni care spun că nu în viața noastră și unii oameni care spun, niciodată. Deci o gamă foarte largă de presupuneri. În orice caz, majoritatea AI-- îmi pare rău, toată IA care există astăzi și cea mai mare parte a AI despre care auziți oamenii vorbind sunt înguste. Și IA îngustă este atunci când un computer prezintă inteligență la o sarcină. Pentru a fi clar, puteți face lucruri destul de impresionante cu AI îngustă. O mașină care se conduce singur, de exemplu, are un sistem AI îngust care face viziune. Se uită la drum și interpretează lucrurile. Există un alt sistem AI care face direcția, care controlează mașina. Există un alt sistem AI care face planificarea rutei -- care spune, la un nivel larg, unde mergem, cum ajungem acolo? Și când le uniți pe toate, puteți crea un sistem foarte impresionant. Dar nu poți să așezi această mașină și să joci șah cu ea. Această mașină nu va învăța să picteze. Această mașină nu va învăța să vorbească rusă. Îndeplinește un set specific de sarcini, fiecare dintre acestea fiind instruită separat. Și asta este IA îngustă. Așa că de acum înainte, când spun AI, vorbesc despre inteligența artificială îngustă. Aveți întrebări până acum? SPEAKER 2: Întrebare de la participant: SPEAKER 1: În ce categorie vă încadrați în ceea ce privește IA generală? Când crezi că va fi posibil? BRANDON LESHCHINSKIY: Nu cred că se va întâmpla pentru o vreme, ca multe, multe decenii. Dar cred, de asemenea, că cu siguranță se va întâmpla la un moment dat. Multe decenii până poate secole. Nu știu. Cred că progresul tehnologic este greu de ghicit. Așa că cred că este o misiune prostească. Oricum, ce face de fapt IA îngustă? Ei bine, sarcinile tipice, așa cum am văzut cu exemplul mașinii cu conducere autonomă , includ viziunea, procesarea limbajului și planificarea. Acestea sunt doar câteva exemple. Deci, viziunea va fi înțelegerea sau crearea de imagini sau videoclipuri. Procesarea limbajului - înțelegerea sau crearea vorbirii sau a textului. Acesta va fi, cum ar fi, Siri sau Amazon Alexa. Și planificare. O mulțime de tipuri diferite de planificare. Puteți face planificarea rutei, planificarea mișcării, planificarea sarcinilor. Toate aceste lucruri se încadrează în categoria sarcinilor restrânse de AI pe care le puteți antrena pe un algoritm. În ceea ce privește modul în care construim de fapt AI, există o mulțime de moduri diferite. Două moduri clasice de a implementa inteligența artificială -- și îmi amintesc că am aflat despre asta și că am spus, uau, asta nu este inteligență deloc. Asta e super prost. Sunt sisteme experte și căutare în arbore. Deci, într-un sistem expert, este doar o persoană care scrie o listă de reguli. Dacă aceasta, atunci aceea. Dacă aceasta, atunci aceea. Acest lucru poate fi foarte util pentru anumite probleme. Dar multe dintre lucrurile pe care le considerăm cu adevărat simple se dovedesc a fi destul de dificile. Deci, de exemplu, putem identifica un astfel de tabel-- foarte, foarte ușor. Știm care este masa. Dar te provoc să scrii o listă de reguli care pot defini un tabel. Ce culoare este? Din ce e facut? Câte picioare are? Ce forma are? Așadar, se dovedește că chiar și ceva de genul „ce este un tabel” devine cu adevărat, foarte dificil de a răspunde folosind un sistem expert. Deci acestea pot fi cu adevărat utile. Și există câteva modalități simple pentru celălalt-- există unele probleme în care euristica este de fapt cea mai bună modalitate de a face acest lucru. Pentru că este interpretabil, știi ce se va întâmpla și nu ai nevoie de o rețea neuronală pentru fiecare problemă. Dar acest lucru cu siguranță nu poate rezolva orice problemă [INAUDIBIL].. Un alt tip de algoritm pe care oamenii l- ar putea folosi în IA clasică, se numește căutare în arbore. Începi în starea ta actuală. Aceasta este starea A. Și enumerați toate opțiunile posibile de acolo. Și apoi repeți asta pentru fiecare stare până când găsești starea în care vrei să ajungi în -- starea ta de obiectiv. Acum, o problemă evidentă aici... o mulțime de opțiuni. O mulțime de opțiuni atunci când operezi în lumea reală. Deci, cum le enumerați pe toate? Și uneori, poate fi chiar dificil să definiți o stare de obiectiv. Când joc șah, știu că există un obiectiv de victorie - șahmat. Dar în mediile din viața reală, nu este atât de simplu. Deci, din nou, poate fi foarte, foarte util. Și așa l- au învins computerele de șah pe Garry Kasparov. Dar și limitat. Deci, acum, vedem că acestea sunt doar două moduri de a implementa AI. Nu sunt chiar așa deștepți. Ca, cei mai mulți dintre noi ar fi putut veni cu acestea. Dacă ni s-ar fi spus, de exemplu, să găsim o modalitate de a rezolva această problemă, probabil ne-am fi dat seama că o listă de reguli sau enumerarea tuturor opțiunilor... da, asta are sens. Deci, să trecem acum la învățarea automată, care este un subset de inteligență artificială care permite unei mașini să învețe automat din date. Și asta a menționat altcineva. Deci aici nu există un programator care să stea acolo să programeze sau să schimbe codul în mod explicit, să schimbe modelul. E ca și cum, dacă se întâmplă asta, atunci ar trebui să faci asta. Învață automat uitându-se la date. Și voi spune mai multe despre învățare într-o secundă. Dar permiteți-mi să răspund mai întâi la întrebarea: când folosim învățarea automată? Deci, învățarea automată poate îndeplini multe sarcini diferite. Trei dintre cele mai comune sunt clasificarea, gruparea și regresia. Clasificare înseamnă, iată câteva date de intrare. O să vă dau rezultatul unei clase. Deci poate este o imagine și vă spun ce fel de animal este. Poate că este o listă de informații despre cineva și vă spun dacă este sau nu o amenințare. Dă-mi o contribuție, eu îți dau o clasă. Clustering este, din nou, tu îmi dai un fel de input, iar eu voi găsi clustere. O să găsesc lucruri care sunt asemănătoare. Poate că grupez diferite grupuri de animale sau alte grupuri similare de animale împreună. Poate că este o secvență de gene asemănătoare. Oh, astea par legate cumva. Deci, gruparea poate fi cu adevărat utilă, mai ales în genetică, din ceea ce am auzit, nu că aș fi făcut asta vreodată. Și apoi un alt tip de problemă este regresia. Și regresia este, din nou, obțineți date de intrare. Dar, în loc să pui o clasă, cum ar fi „câine” sau „sigur”, pui o predicție numerică. Așa că poate preziceți prețul casei pe baza metru pătrat. Poate că preziceți rata criminalității în funcție de locație. Și în acest exemplu, permiteți-mi să vă pun doar o întrebare, care este modelul pe care îl folosim? Care este modelul mașinii -- din punct de vedere tehnic, este un model de învățare automată. Sau o poți numi așa. Care este modelul pe care l-am antrenat în acest exemplu? Ce face de fapt predicția? SPEAKER 1: Răspuns de la participant. VORbitor 2: Linia roșie? BRANDON LESHCHINSKIY: Exact. Este o linie. Și vreau doar să spun asta, pentru că cred că mulți oameni cred că modelele sunt foarte complicate. Uneori, modelul este doar o linie. Ca, acesta este un model. Îi dau un fel de intrare și îmi dă o ieșire. Acesta este un model. Puteți folosi și o curbă. Puteți folosi o rețea neuronală. E mult mai complicat... mult mai multe operațiuni acolo. Dar toate acestea sunt modele. Deci, așa cum am spus, învățarea automată poate îndeplini multe sarcini. Clasificarea, gruparea și regresia sunt cele mai frecvent efectuate. Și acum, vreau să vorbesc puțin despre ce înseamnă de fapt să înveți ceva. Ce înseamnă pentru o mașină să învețe? Există întrebări până în acest moment? VORBATOR 2: Întrebare de la participant: VORBITTOR 1: Unde se încadrează o rețea convoluțională în schema lucrurilor? BRANDON LESHCHINSKIY: Deci, rețelele neuronale convoluționale sunt un instrument foarte specific care este folosit de obicei în viziunea computerizată. Acesta este un model. Și vom... permiteți-mi să mă întorc la rețelele neuronale convoluționale după această secțiune. Voi vorbi pe scurt despre ele. Deci trei tipuri de învățare, băieți. Există învățare supravegheată, nesupravegheată și de întărire. Când vorbim despre învățarea supravegheată, este într-adevăr ca și cum ai studia pentru un test. Am să vă dau exemplul. Îmi pare rău, o să vă dau întrebările și răspunsurile în avans. Ai de gând să studiezi. Aceștia vă veți da seama care sunt modelele largi. Și apoi o să te testez. Acest lucru este adesea-- nu trebuie să fie, dar este adesea aplicat problemelor de clasificare. Acum, lucrul cheie aici este că, în învățarea supravegheată, trebuie să aveți răspunsurile în avans. Cu alte cuvinte, trebuie să aveți date etichetate. Trebuie să... nu este suficient să arăt modelului o grămadă de imagini. Imaginile trebuie să fie etichetate ca pisică, vacă, girafă, câine, orice. Amenințare, nu amenințare. Trebuie să existe răspunsuri. În caz contrar, ar fi ca și cum ți-ar da carduri cu o singură față. Și o întorci și ești ca, habar n-am. Deci asta este învățarea supravegheată. În învățarea nesupravegheată, este mai mult... nu aveți acele răspunsuri. Nu ai acele etichete. Este mai mult ca un copil care se joacă. Doar descoperi modele. Acesta este adesea folosit în grupare. Nu știu, a priori, cum vor arăta clusterele potrivite . Habar n-am cum ar trebui să arate. Tot ce știu este, oh, astea arată ceva... seamănă oarecum. Acestea seamănă oarecum și arată oarecum diferit unul de celălalt. Dar nu am nicio sursă externă de informații în ceea ce privește tipul de clasă căreia îi aparține. Are sens? Deci, aceasta este învățare nesupravegheată. Și apoi ultimul tip de învățare despre care vom vorbi este învățarea prin întărire. Învățarea prin întărire este, din nou, că nu ai cu adevărat un răspuns corect și nici nu te joci cu adevărat. Este ceva separat. Îți propuneți să recompensați un fel de comportament sau un fel de soluție la o problemă. E ca un șobolan într-un labirint. Îi dai brânză și descoperă singur strategii câștigătoare. Deci nu ai răspunsul corect. Știi doar că ai nevoie de lucru pentru a ieși din labirint. Acest lucru este adesea folosit în robotică, de exemplu, cu antrenarea unui braț robotic sau poate antrena un agent într-un joc. Deci învățare de întărire supravegheată, nesupravegheată. Acestea sunt cele trei moduri de a învăța în învățarea automată. Aveți întrebări despre aceste trei lucruri? SPEAKER 1: Întrebare de la participant: SPEAKER 2: Învățarea prin întărire este în cazul în care știm ce am vrut să facem și cifrele tehnologice care oferă parametri pentru a ajunge acolo? BRANDON LESHCHINSKIY: Exact. Așa că ați putea, de exemplu, să spuneți, să câștigați acest joc și, pe parcursul a un milion de simulări, lucrul învață, o, probabil, asta are șanse mari de a câștiga jocul. Asta nu mă lasă să fac chestia asta. Acum, permiteți-mi să adaug despre învățarea prin întărire - toate aceste tipuri de învățare au, desigur, argumente pro și contra. Deci, cu învățarea supravegheată, compromisul este că aveți nevoie doar de o cantitate stupidă de date etichetate. Și atunci asta durează o veșnicie. Culegerea și etichetarea datelor poate fi foarte, foarte costisitoare . Cu învățarea nesupravegheată, nu știi neapărat care este răspunsul corect. Deci, vă poate ajuta să descoperiți tipare, dar poate să nu fie la fel de puternic ca învățarea supravegheată. Și cu învățarea prin întărire, adevăratul truc este, cât de bună este simularea ta? Pentru că nu vei lua o mașină adevărată și vei învăța prin întărire cu o mașină adevărată. Îți va lua un milion de iterații. Va trebui să treci printr-un milion de mașini înainte ca acesta să învețe să conducă fără să se prăbușească. Când o simulezi, atunci întrebarea este, cât de bună este simularea ta? Se va aplica de fapt în lumea reală? Captați tot zgomotul, toate tulburările, toate posibilitățile? Îți surprinzi acel motociclist care te întrerupe, sau vântul sau reflectarea soarelui pe un semn alb? Deci există avantaje și dezavantaje pentru fiecare dintre acestea. Deci, acum, ceea ce vom face este să ne antrenăm propriul algoritm. Și din nou, vreau să reiterez punctul principal al acestei prezentări înainte de a intra în acel antrenament cu algoritm. Cu datele potrivite și modelul potrivit, AI poate rezolva multe probleme. Alegerea problemei potrivite, găsirea datelor potrivite, formarea modelului potrivit sunt toate potențial dificile. Deci hai să facem asta. Vom parcurge cei șapte pași ai antrenării unui algoritm. Primul pas este definirea unei probleme. Acum, aici, am definit-o pentru noi. Am spus, vom decide dacă o poză este o pisică sau un câine. Deci, mai întâi, permiteți-mi să vă întreb, ce fel de problemă de învățare automată este aceasta? SPEAKER 1: Răspuns de la participant: SPEAKER 2: Clasificare. BRANDON LESHCHINSKIY: Cool. Toată lumea vede de ce? Primesc un fel de input. Primesc o imagine. Și vă spun despre ce clasă este, din ce clasă aparține. Este fie o pisică, fie un câine. Acum, în acest caz, munca de identificare a problemelor a fost făcută pentru noi și presupunem că clasificarea între pisici și câini reduce de fapt un decalaj important. Totuși, permiteți-mi să spun doar că identificarea problemelor este foarte importantă. Există o mulțime de probleme care nu pot fi rezolvate de AI, punct. Dacă aveți probleme cu diversitatea în unitatea dvs., învățarea automată nu este răspunsul. Dar, ca în orice tehnologie nouă, este cu adevărat seducătoare. Este cu adevărat sexy. Toată lumea vrea să fie ca, oh, folosim AI. Așa că vreau doar să clarific că este important să fii cu discernământ în ceea ce privește unde aplici chiar și AI. Și asta vine chiar în primul pas al, care este problema pe care încercăm să o rezolvăm? Defineste problema. Pasul doi este, cool, am o problemă. Găsiți date. Ce fel de date am nevoie pentru a rezolva această problemă? Deci, să presupunem că am vrut să antrenez un algoritm care poate clasifica între pisici și câini. Ce fel de date ar trebui să mă uit? VORbitorul 2: Răspunsul participantului: VORBITORUL 1: Vor fi o mulțime de date vizuale, o mulțime de imagini care să arate că pisicile pot arăta în toate aceste feluri diferite, câinii pot arăta în toate aceste moduri diferite. BRANDON LESHCHINSKIY: Deci ceva de genul acesta. Exact. Acum, aceste date au etichete. Deci, ce fel de învățare suntem capabili să facem ca rezultat? SPEAKER 2: Răspunsul participantului. VORBITOR 1: Învățare supravegheată. BRANDON LESHCHINSKIY: Da. Pentru că avem răspunsul corect în avans. Așa că îl putem antrena și spune, ah, aceasta este o pisică. Acesta este un caine. Acum, dacă nu am avea etichete, ceea ce ar putea face algoritmul nostru este să le grupeze și să spună, oh, există acest tip de lucruri și există acest tip de lucruri și arată diferit. Dar nu există nicio referință externă. Chestia nu are idee ce este o pisică sau un câine. Doar spune că aceste două lucruri arată diferit. Vedeți toată lumea diferența dintre supravegheat și nesupravegheat? Deci, în acest fel, putem spune de fapt, aceasta este o pisică. Acesta este un caine. VORTATOR 1: Întrebare de la participant: VORBITTOR 1: Așa și-au dezvoltat Google și alte companii tehnologia, folosind oameni pentru a dezvolta pool-uri de date? BRANDON LESHCHINSKIY: Da, există... Nu, dacă voi băieți... dacă cineva de aici este familiarizat cu XKCD. Este un webcomic online. Există unul în care este ca, este o chestie de conectare la Google și este ca, te rugăm să găsești imaginea cu semnul de oprire. Următorul cadru... te rog fă-o repede. Mașina noastră se apropie de intersecție. Deci, da, ei sunt absolut ei care colectează date de antrenament punând oameni să le eticheteze. Deci, următorul pas după ce am găsit datele este datele curate. Și știu că asta se simte ca, poate, străin. Dar pentru oricine de aici care a lucrat cu date înainte, obțineți că aceasta este, de exemplu, 80% din știința datelor și 80% din AI. Curățarea datelor este cea mai mare durere, dar este cea mai mare parte a muncii. Se datorează faptului că datele nu există doar în acest mod frumos în care le puteți arăta unui model de învățare automată și începe să învețe. Ca, datele există într-un director ciudat de pe internet de unde trebuie să le descarci , trebuie să le reorganizezi, trebuie să le denumești corect, trebuie să te asiguri că nu există erori acolo, trebuie să te asiguri că pot accesa rapid, bla, bla, bla. Așadar, curățarea datelor este o mare parte a ceea ce înseamnă să fii un om de știință a datelor și să faci învățare automată sau să faci AI. Și de aceea, dacă aveți deja date curate, o, Doamne, este ca un paradis al cercetătorilor de date, pentru că ei nu trebuie să facă treaba asta. Ei pot merge să descarce lucruri și să antreneze modele, iar asta este partea distractivă. Așa că obținerea de date bune și curate este un avantaj uriaș pentru orice tip de dezvoltare AI. Pentru noi, vom spune că acum este curat. Pasul patru este să alegeți un model. O să vă arăt un model. Acum, nu te atașa de acest model. Nu este un model bun. Nu este un model util în lumea reală. Este un model pe care îl vom folosi pentru a ilustra câteva concepte cheie. Deci acesta este modelul nostru. Câinii mereu gol, uneori goali. Pisicile... întotdeauna, uneori. Acest model este interpretabil. Înseamnă că s-ar putea să nu fie bine, vom găsi. Dar cel puțin, vom putea ști ce face. Nu va fi întotdeauna adevărat. Dar acesta este modelul pe care îl vom folosi. Așa că acum, hai să-l antrenăm. Să vedem ce înseamnă pentru modelul nostru să învețe ceva. Vom arăta intrările modelului și îl vom întreba , ce este chestia asta? Dacă le răspunde corect, modelul e grozav. Nu trebuie actualizat. Dacă se înțelege greșit, poate putem îmbunătăți cumva modelul. Deci, la început, vom arăta această imagine. Acum, modelul nu a văzut niciodată nimic în acest moment. Este o tablă complet goală. Va face doar o ghicire aleatorie. Deci, evident, aceasta este o pisică. Noi stim aia. Dacă modelul a ghicit corect, nu ar exista nicio actualizare a modelului. În ceea ce privește modelul, sunt 100% precis. De ce m-as schimba? Ei bine, să spunem că modelul înțelege greșit. Să spunem că modelul a ghicit câinele. Apoi, în acest caz, vom continua și vom actualiza modelul. Deci, din nou, avem, modelul acum știe că este o pisică. Se va actualiza singur. Deci, ce ar trebui să spună modelul acum despre pisici? Ce știe modelul -- pe baza acestui exemplu, ce știe modelul acum despre pisici? VORTATOR 2: Răspunsuri de la participanți: VORBITTOR 1: Căutați lucruri precum urechi ascuțite, nas roz, ochi rotunzi? SPEAKER 2: Simt că încă nu sunt suficiente date pentru a spune asta. Cu un set de antrenament atât de mic , tot ceea ce știe modelul este că o pisică arată așa. BRANDON LESHCHINSKIY: Ah, bine. Așa că lasă-mă să întreb... atât de bună intuiție. Așa că am auzit urechi ascuțite, multicolore, întinse pe pat, poate, labe. În modelul nostru-- permiteți-mi să-l actualizez-- vom spune că aveți întotdeauna acele lucruri-- pisicile au întotdeauna acele lucruri, sau pisicile au uneori acele lucruri? Pisicile au întotdeauna urechi ascuțite și sunt pe pat și au nasul roz, sau este uneori? Ce credem? SPEAKER 1: Răspuns de la participant: SPEAKER 2: Uneori, cu siguranță. BRANDON LESHCHINSKIY: OK. Orice pareri diferite? Deci iată chestia. Corey știe ce sunt pisicile. Modelul nostru este prost. Modelul nostru nu știe nimic despre lume. Nu știe nimic despre pisici. În ceea ce privește modelul, așa cum tocmai a menționat altcineva, aceasta este singura pisică din lume. Așa arată fiecare pisică. Fiecare pisică este această pisică și această pisică este fiecare pisică. Deci, din perspectiva modelului, pisicile arată întotdeauna exact ca acest lucru. Este singurul exemplu pe care l-a văzut vreodată de pisică. Ce vrei? Așa arată pisicile. Deci modelul este pur statistic. Nu are idee ce este o pisică din punct de vedere conceptual. Spune doar, statistic vorbind, 100% dintre pisici arată exact ca această pisică. Acum, îi arătăm un al doilea exemplu de intrare. BINE. Acum, în acest moment, modelul nostru se uită la această imagine. Se spune, ei bine, toate pisicile pe care le-am văzut seamănă cu acea altă pisică, iar aceasta nu seamănă cu acea altă pisică, așa că acesta trebuie să fie un câine. Nu am văzut încă un câine. Acesta este probabil un câine. BINE. Se pare că modelul greșește. Modelul trebuie actualizat. Deci, în acest moment, ce va face modelul nostru... așa că spune-mi despre această pisică. Ce va ști modelul despre pisici după acest exemplu? VORBATOR 1: Răspunsuri de la participanți: VORBITTOR 2: Arăta răutăcios. Pisicile pot fi super pufoase și au ochii galbeni. VORBITOR 1: Pupila lor pot fi mici sau mari. BRANDON LESHCHINSKIY: Bine. BINE. Așa că acum, permiteți-mi să vă întreb, vom pune asta uneori sau întotdeauna, aceste exemple pe care tocmai le-am primit? SPEAKER 2: Răspuns de la participant: SPEAKER 1: Uneori. BRANDON LESHCHINSKIY: Unele dintre ele vor fi uneori, nu? Deci pisicile au încă doi ochi, mereu... până acum. Toate pisicile au doi ochi. Toate pisicile au un nas care arată cam așa. Uneori, este un nas roz. Uneori, este un nas negru. Așa că acum, ne dezvoltăm puțin modelul și vedem, oh, acestea sunt lucruri pe care pisicile le au întotdeauna și acestea sunt lucruri pe care pisicile le au uneori. Are vreun sens? BINE. Toate lucrurile pe care tocmai le-am notat se numesc trăsături -- numărul de ochi, forma urechilor, dimensiunea pupilelor. Acestea sunt toate caracteristicile. Caracteristicile sunt cele care ne permit – sau mai degrabă permit modelului – să luăm o decizie. Așa că, de exemplu, dacă mă uit, mă plimb , încerc să evaluez siguranța, care este, cred, un lucru pe care oamenii îl fac cam instinctual. Sunt caracteristici pe care le caut. De exemplu, persoana care se apropie de mine ține vreo armă? Care este postura lor? Cum este expresia lor facială ? Nu mă uit la culoarea părului lor. De exemplu, aceasta nu este o caracteristică relevantă în acel exemplu special. Deci, în acest caz, toate lucrurile pe care le scoatem să le spunem... pentru a le identifica, aceasta este o pisică sau un câine, acestea sunt ceea ce numim caracteristici. Acum, permiteți-mi să vă pun o întrebare oarecum dificilă. Când un computer vede o imagine -- să presupunem că este o imagine de 256 x 256 pixeli -- câte caracteristici vede un computer? SPEAKER 1: Răspuns de la participant: SPEAKER 2: Este 256, pentru că atât de câți pixeli sunt? BRANDON LESHCHINSKIY: Deci sunt 256 de pixeli pătrați. Și atâtea caracteristici există. Computerul se uită la el. Nu se uită la ochi. Nu se uită la urechi. Nu se uită la notițe. Se uită, există un pixel aici și există o grămadă mai mult în restul imaginii. Se uită la o serie de date. Acum, ceea ce face o rețea neuronală, și ceea ce face o rețea neuronală convoluțională în special, este că imaginea este transmisă -- așa că, oricine a întrebat despre rețelele neuronale convoluționale, dacă nu ai fi fost atent, acum are o șansă bună să te acorde. Ceea ce face o rețea neuronală -- o rețea neuronală convoluțională -- face o imagine, spune 256 pe 256 pixeli. Îl trece prin primul strat al rețelei neuronale. Începe extragerea caracteristicilor. Cu acel prim strat, poate că se uită la linii, margini sau gradiente de culoare. Îl trece la următorul strat din rețeaua neuronală și combină acele linii în forme. Poate că acum caută cercuri, triunghiuri sau orice altceva. Următoarea parte a rețelei neuronale. Se trece din nou. Așa că îl procesează, îl procesează, îl face mai-- ca, face caracteristicile-- extrage automat caracteristici la fiecare pas și face caracteristicile din ce în ce mai sofisticate. Așa că acum, se uită la nas și la ochi și acum, în sfârșit, la sfârșit, se uită la o față întreagă sau un întreg corp. Deci asta face o rețea neuronală convoluțională. Dar începe, cu perspectiva modelului, ca caracteristici 256 pe 256. Și ceea ce o rețea neuronală este uneori cu adevărat, foarte bună este să extragă caracteristicile relevante, să le combină și să le proceseze până când devin din ce în ce mai sofisticate. Și acum, ai recunoaștere facială, de exemplu. Există, de exemplu, un fel de structură de ochi/nas/guri pe care o caută. Oh, aceasta este fața ta. Știu cine este acesta. Deci asta face o rețea neuronală convoluțională. Dar vreau doar să fiu clar, din nou, modelele sunt proaste. Ei nu privesc asta din perspectiva, știu ce este un nas, o pisică sau un câine. Ei se uită la asta din perspectiva, eu văd o serie de date. Și uneori, o rețea neuronală, un model, o poate interpreta și crea aceste caracteristici care sunt mai sofisticate. Mai spun, aceste modele pot fi foarte fragile. Deci, a existat o lucrare scrisă acum câțiva ani în care practic au păcălit rețeaua neuronală și, modificând doar câțiva pixeli sau adăugând ceva zgomot, pentru oameni încă mai arată ca o broasca țestoasă - încă spunem că este o țestoasă -- dar modelul se uită la el și spune, oh, este o armă sau oh, acesta este un cocoș. Și puteau schimba orice în orice, în ceea ce privește modelul. Deci, vă puteți antrena modelul pe acele date și puteți face modelul mai robust pentru el. Așa că ajungi cu acest tip de joc advers similar cu alte operațiuni defensive, presupun. Dar, în orice caz, asta e puțin o tangentă. Aveți întrebări până acum despre antrenament? Vom face un exemplu de câine foarte repede. BINE. Deci următorul exemplu... chestia asta. Deci, din nou, vom presupune că modelul înțelege greșit. Deci există o actualizare. Vom descrie acest câine. E neagră. Are urechile catifelate. Are ochi căprui. Are o limbă roz, patru picioare. Unde se duce asta, mereu sau uneori? Ce crezi? Mereu. Acesta este singurul câine care există în întreaga lume. Așa arată fiecare câine. Fiecare câine este acest câine. Acum, când vedem... oh, da, îmi pare rău, câine, după cum știm. Acum, când îl vedem pe acest tip, modelul se va actualiza. Și acum avem acea schimbare, unde este, OK, mai sunt doi ochi, așa că fiecare câine are doi ochi. Până când vedem un câine cu un singur ochi. Și acum, modelul este ca, OK, bine, se pare că de cele mai multe ori, câinii au doi ochi și, uneori, au unul. Da, model statistic. Dar în acest moment, 100% dintre câini arată exact ca acest câine. Deci așa antrenăm un model. Acum avem un model despre cum arată, cum fac sau sunt pisicile și câinii . Așa că acum, mergem și testăm modelul. Și este foarte, foarte critic, când testăm modelul, folosim date pe care modelul nu le-a văzut până acum. Dacă vă dau examenul în avans, atunci puteți doar să memorați întrebările și răspunsurile. Nu mă ajută cu adevărat să stabilesc dacă ai învățat cu adevărat materialul. Vreau să vă dau câteva exemple de întrebări, exemple de răspunsuri, iar apoi la test, vă voi da altele. Pentru că vreau să mă asigur că poți generaliza la alte probleme, la alte tipuri de întrebări. Dacă doar memorezi soluțiile, nu îmi este de ajutor să înțeleg dacă ai învățat-o. Deci, atunci când testați modelul, este absolut esențial să utilizați date pe care modelul nu le-a văzut încă. Acum, în acest caz, ceea ce descoperim este că acest lucru este negru. Are doi ochi. Are urechi ascuțite. Dar chestia este... ca și modelul nostru nu a mai văzut o pisică neagră până acum. S-a văzut totuși un câine negru. Deci acum, modelul nostru este confuz. Ce este? La ce ma refer? Stie cineva care este aceasta problema? SPEAKER 1: Răspuns de la participant: SPEAKER 2: Condiții limită? BRANDON LESHCHINSKIY: Nu chiar. Aceasta este o problemă de părtinire. Aceasta este o problemă de părtinire a setului dvs. de date. Nu avem pisici negre. Deci modelul nostru nu este grozav la recunoașterea pisicilor negre. Acum, vă puteți imagina, în contexte medicale, acest lucru devine cu adevărat problematic, pentru că antrenăm date despre oameni mai ales albi și mai ales bărbați, de exemplu. Și asta nu ajută la oamenii care nu sunt albi și pentru cei care nu sunt bărbați. Pentru că modelul va învăța, așa cum am văzut, statisticile... modelele sunt prostii. Model va învăța o grămadă de lucruri care sunt adevărate despre oamenii albi și bărbații, sau despre pisicile care nu sunt negre, și apoi ni se prezintă acest alt lucru - acest alt tip de lucru. Modelul nu are idee ce să facă cu el și doar aplică aceleași ipoteze la acest lucru. Deci, care este lecția aici? Asigurați-vă că datele dvs. de antrenament sunt reprezentative. Și fiți foarte intenționat cu privire la modul în care colectați date de antrenament pentru a vă asigura că reflectă cazul de utilizare. Aceasta se întoarce la definirea problemei. Ce problemă încercăm să rezolvăm? Cine este utilizatorul nostru final? Ce sperăm să realizăm? Toate aceste lucruri care trebuie să se întâmple într-o inginerie bună. Da, acesta este un exemplu grozav. Deci, dacă folosim AI pentru a defini ceea ce face un pilot bun, AI va spune, oh, probabil băieți albi. Băieții albi sunt piloți buni. Nu pot rezolva această problemă pentru voi, dar vă pot face conștienți de ea, astfel încât să puneți întrebările potrivite. Și, desigur, modelul va ști în cele din urmă că aceasta este o pisică, sperăm. Așa că acum, pasul șapte. Implementați modelul. Puteți face acest lucru pe Amazon Web Services. Îl puteți face accesibil publicului. Îl poți pune pe un hard disk securizat undeva. Oricum îl veți folosi, asta va dicta modul de implementare. Deci totul decurge din definirea problemei. Îl poți pune pe un cip. Dar pentru a revizui, trebuie să definim o problemă, să găsim date, să curățăm datele, să alegem un model, să antrenăm modelul, să testăm modelul-- whoopsies-- și apoi să implementăm modelul. Întrebări despre acest proces? SPEAKER 1: Întrebare de la participant: SPEAKER 2: Este aceasta abordarea tipică, indiferent de modelul utilizat? BRANDON LESHCHINSKIY: Cred că da. Implicit sau explicit, acesta este în general procesul. Îmi pare rău, continuă, Jennifer. VORBATOR 2: Întrebare de la participant: VORBITTOR 1: Deci, dacă ați arăta modelului un cobai, ar încerca să- l clasifice ca câine sau pisică, deoarece acestea sunt opțiunile pe care le-am prezentat? BRANDON LESHCHINSKIY: Corect. Deci asta e... deci este pasul patru. Ce model folosim? Și arhitectura modelului te poate limita. Există doar două ieșiri, fie pisică, fie câine. Nu aveți o a treia ieșire, aveți nevoie de o a treia - trebuie să faceți spațiu pentru asta. SPEAKER 1: Întrebare de la participant: SPEAKER 2: Lucrez la un master și am absolvit o clasă de analiză a datelor. Lucram cu R și una dintre întrebările pe care le-am avut la sfârșitul orei a fost, există un program AI sau un progres către AI care curăța datele? BRANDON LESHCHINSKIY: Există... Cred că lucrează la asta. Există, de exemplu, instrumente AutoML care încearcă să democratizeze AI, unde-- dar chiar și atunci, presupun că ar trebui să introduceți datele într-un mod care să fie util și apoi le ia de acolo. Nu știu despre curățarea datelor. chiar nu stiu. Alte întrebări înainte de a trece la rezumat și concluzie? BINE. Deci, pentru a încheia, am acoperit o introducere în inteligența artificială. Am văzut, pas cu pas, cum să antrenăm un algoritm. Și pentru a încheia, vreau să vă las pe toți cu patru întrebări și un cuvânt de precauție. Patru întrebări pe care ar trebui să le puneți despre orice IA pe care o întâlniți, indiferent dacă încercați să o evaluați sau să o utilizați. Patru întrebări pe care ar trebui să le pui întotdeauna. Numărul unu: Care este scopul? Definirea problemei, nu? Care este scopul? Ce problema rezolvi? Care sunt intrările și ieșirile sale? Ce face chestia ? Acesta este numărul unu. Numărul doi: Care sunt datele de antrenament? De unde a venit? Cum a fost pregătit? Cum te-ai asigurat... ai verificat această părtinire sau acea părtinire? Cum te-ai asigurat că este echilibrat? Numărul trei: Ce fel de model ai folosit? De ce? Este interpretabil? Ar trebui sa fie? Cum ai ales acest model? Și numărul patru: care este acuratețea când îl testați pe date noi, când îl testați pe date de testare, nu pe datele de antrenament. Când îi oferiți un set complet nou de date pe care nu le-a văzut niciodată, care este exactitatea acestuia? Versiunea de învățare prin întărire a acestui lucru ar fi, ce se întâmplă când o testați într-o simulare diferită sau în lumea reală? Dar ceva... trebuie să existe o întrebare despre cât de bine se descurcă de fapt atunci când i se pune o problemă pe care nu a avut ocazia să o memoreze? Deci obiectiv, date de antrenament, model, acuratețe. Dacă țineți cont de aceste patru întrebări, veți fi mai capabil să evaluați orice sistem AI pe care îl întâlniți. Și acum, permiteți-mi să închei cu un cuvânt de precauție. Dezvoltarea unui model AI poate fi foarte dificilă, poate fi, de asemenea, foarte valoroasă și poate fi, de asemenea, foarte seducătoare. Este o sarcină. Dacă sarcina nu aparține unei strategii în sprijinul anumitor obiective care măsoară o misiune care reflectă valori, nu este o bună utilizare a timpului, chiar dacă este cu adevărat mișto. Deci, când spun obiectiv, vorbesc, din nou, atât la un nivel scăzut -- intrări și ieșiri ale acestui model -- dar și la un nivel înalt. Ce încercăm să facem? Și este important să reevaluăm constant obiectivele de nivel scăzut în raport cu problema de nivel înalt. Vrem să situăm modelul, instruirea și datele într-un context mai larg de rezolvare a problemelor. Dacă m-aș uita la Forțele Aeriene și aș încerca să-mi dau seama unde ar fi AI-- sau unde să implementez AI, aș începe aici. Aș începe cu identificarea, care sunt valorile? Care este misiunea, obiectivele, strategia, sarcinile? Un fel ca un copac. Și aș identifica problemele. Care sunt decalajele dintre aspirațiile noastre și realitatea noastră? Apoi m-aș gândi critic ce goluri ar putea umple inteligența artificială și dacă acele lacune vor fi parțial sau complet umplute. Dacă aveți date care nu sunt utilizate, aceasta reprezintă o oportunitate. Dacă aveți sarcini care necesită o mulțime de oameni, aceasta reprezintă o oportunitate. Dacă aveți sarcini care sunt complexe sau necesită multă gândire și procesare a datelor, acestea sunt probleme la care AI vă poate ajuta. Dacă aveți o problemă cu supradozele de droguri sau cu sinuciderile, AI probabil că nu vă va ajuta. Și, de fapt, am auzit de cazuri în care oamenii colectează date și fac toate aceste analize cantitative, dar aceasta este în esență o problemă umană. Și astfel poate fi de fapt destul de distragător. Așadar, ideea mea este că, în cel mai bun caz, AI poate face Forțele Aeriene mai eficiente, mai eficiente. În cel mai rău caz, ne poate distrage atenția de la rezolvarea unor probleme umane și culturale dificile și provocatoare. Prin urmare, este foarte important să discernăm ce tip de problemă încercați să rezolvați și unde vă poate ajuta AI. Dar în acest moment, sper și cred că aveți instrumentele pentru a preveni acest lucru și pentru a valorifica această nouă tehnologie foarte puternică pentru a sprijini construirea unei forțe aeriene mai eficiente și urmărirea intereselor Americii. Așa că vă mulțumesc mult tuturor. Voi rămâne cu întrebări și vă voi lăsa cu acest slide de concluzie.