Kas yra mašininis mokymasis? – „TechTalks“

dirbtinis intelektas
Vaizdo kreditas: Flickr / Peter Kurdulija

Šis straipsnis yra „Demystifying AI“ dalis, įrašų serija, kuri (bando) išsklaidyti dirbtinį intelektą supantį žargoną ir mitus.

Aš buvau devynerių metų, kai pirmą kartą paragavau programavimo, ir įsimylėjau meną (taip, aš tikiu, kad programavimas yra tiek pat meno, kiek ir mokslas). Greitai susižavėjau, kaip galėčiau kontroliuoti savo programų srautą nustatydamas logines taisykles ir sąlygas, jei … dar teiginiai, jungikliai, kilpos ir dar daugiau.

Vėlesniais metais išmokau pašalinti netvarką iš savo kodo kurdamas modulius ir abstrahuodamas kodo dalis į funkcijas ir klases. Aš patobulinau savo programinės įrangos kūrimo įgūdžius, atlikdamas objektyvią analizę ir dizainą (OOA / D). Išmokau pakartotinio kodo naudojimo ir dizaino modelių. Išmokau išreikšti savo programą UML diagramose ir diagramose. Aš išmokau tuos principus pritaikyti beveik keliolikoje programavimo kalbų.

Tačiau programavimo nykščio taisyklė liko ta pati: taisyklių ir logikos apibrėžimas. Likusi dalis buvo tik gudrybės, kurios padėjo palengvinti tų taisyklių įgyvendinimą ir palaikymą.

Dešimtmečius taisyklėmis pagrįstas kodavimas dominuoja programinės įrangos kūrimo būduose. Mes analizuojame problemą ar problemų rinkinį, nurodome ribas, subjektus, procesus, santykius ir paverčiame juos taisyklėmis, apibrėžiančiomis programinės įrangos veikimo būdą.

Nors šis požiūris mums gerai pasiteisino, atsirado „nebyli“ programinė įranga, programos, kurios niekada nepakeis jų elgesio, nebent žmogus programuotojas vienaip ar kitaip atnaujins logiką. Tai taip pat netinka scenarijams, kai taisyklės nėra aiškiai apibrėžtos, pvz., Atpažinti vaizduose esančius objektus ar rasti kenkėjiškos veiklos tinklo sraute ar naršyti robotu nelygiu reljefu.

Mašinų mokymasis, šiuolaikinio dirbtinio intelekto kertinis akmuo, yra mokslas, kuris pakėlė tradicinį programavimo modelį. Mašininis mokymasis padeda sukurti programinę įrangą, kuri gali modifikuoti ir pagerinti jos veikimą, nereikalaujant žmonėms paaiškinti, kaip atlikti užduotis. Ši technologija slypi už daugybės naujovių, kurias mes tiesiogiai naudojame šiandien ir kurias matome horizonte, įskaitant šiurpiai protingus pasiūlymus, kuriuos matote svetainėse, skaitmeninius padėjėjus, automobilius be vairuotojų, analizės programinę įrangą ir dar daugiau.

Kas yra mašininis mokymasis?

Mašininis mokymasis yra programinė įranga, mokanti iš pavyzdžių. Jūs nekoduojate mašininio mokymosi algoritmų. Jūs mokote juos naudodami didelius svarbių duomenų rinkinius. Pavyzdžiui, užuot bandę paaiškinti, kaip katė atrodo ML algoritme, jūs pateikiate jai milijonus kačių nuotraukų. Algoritmas randa pasikartojančius tų vaizdų modelius ir pats supranta, kaip apibrėžti katės išvaizdą. Vėliau, parodžius programai naują paveikslėlį, ji gali atskirti, ar joje yra katė, ar ne.

Daugelis žmonių mašininį mokymąsi prilygina dirbtiniam intelektui. Tačiau dirbtinis intelektas yra laisvas terminas, kurį galima pritaikyti viskam, pradedant sudėtinga taisyklėmis pagrįsta programine įranga ir dar neišradus žmogaus lygio intelekto. Iš tikrųjų mašininis mokymasis yra specializuotas dirbtinio intelekto pogrupis, susijęs su programų, pagrįstų duomenimis, o ne taisyklėmis, kūrimu.

Kas yra prižiūrimas, neprižiūrimas ir sustiprintas mokymasis?

dirbtinio intelekto piešimas

Yra keletas mašininio mokymosi algoritmų skonių. Vienas iš labiausiai paplitusių yra „prižiūrimas mokymasis“, kurio metu jūs mokote algoritmą su paženklintais duomenimis ir priskirkite įvesties rinkinį išvesties rinkiniui. Katės pavyzdys iš viršaus yra prižiūrimo mokymosi pavyzdys. Kitas pavyzdys būtų kalbos atpažinimas, kai algoritmui pateikiate garso bangos formas ir jų atitinkamus parašytus žodžius.

Kuo daugiau pavyzdžių pateiksite prižiūrimą mokymosi algoritmą, tuo tikslesnis jis bus klasifikuojant naujus duomenis. Ir jame slypi pagrindinis prižiūrimo mokymosi iššūkis. Kurti didelius paženklintų mėginių duomenų rinkinius užima daug laiko ir reikalauja didelių žmogaus pastangų. Kai kurios platformos, tokios kaip „Amazon“ „Mechanical Turk“, teikia duomenų žymėjimo paslaugas.

„Neprižiūrimame mokyme“, kitoje mašininio mokymosi šakoje, nėra jokių pamatinių duomenų. Viskas nepaženklinta. Kitaip tariant, jūs pateikiate įvestį, bet ne išvestį. Algoritmas įsisavina nepažymėtus duomenis, daro išvadas ir randa modelius. Neprižiūrimas mokymasis ypač naudingas tais atvejais, kai yra paslėptų modelių, kurių žmonės negali apibrėžti.

Pavyzdžiui, jūs leidžiate mašininio mokymosi algoritmui stebėti jūsų tinklo veiklą. Tada jis nustato įprastos tinklo veiklos pagrindą, remdamasis rastais modeliais. Iš ten, kai tik jis ištirs ir pažymės neįvykdytą veiklą.

Palyginti su prižiūrimu mokymu, neprižiūrimas mokymasis yra žingsnis arčiau savęs mokančių mašinų. Tačiau neprižiūrimo mokymosi problema yra ta, kad rezultatas dažnai būna nenuspėjamas. Štai kodėl tai paprastai derinama su žmogaus intuicija, kad jis būtų nukreiptas teisinga linkme, kai jis pats mokosi. Pavyzdžiui, aukščiau paaiškintame tinklo saugumo pavyzdyje yra daugybė priežasčių, kodėl tinklo veikla nukrypsta nuo normos, o priežastis nėra piktybiniai ketinimai. Bet mašininio mokymosi algoritmas nežinos, kad pradžioje žmogus analitikas turės taisyti savo sprendimus, kol sužinos išimtis ir nepriims geresnių sprendimų.

Kita mažiau žinoma mašininio mokymosi sritis yra „mokymasis sustiprinti“. Mokydamasis sustiprinimo, programuotojas apibrėžia būseną, norimą tikslą, leistinus veiksmus ir apribojimus. Algoritmas išsiaiškina, kaip pasiekti tikslą, išbandant įvairius leidžiamų veiksmų derinius. Šis metodas yra ypač efektyvus, kai žinai, koks yra tikslas, bet negali apibrėžti kelio jo pasiekti.

Sustiprinimo mokymasis naudojamas daugybėje sąlygų. Tarp žymesnių atvejų yra „Google DeepMind“ „AlphaGo“ – mašininio mokymosi programa, įvaldžiusi sudėtingą stalo žaidimą „Go“. Dabar įmonė taiko tą patį metodą, siekdama pagerinti JK elektros tinklo efektyvumą. „Uber“ ta pačia technika moko dirbtinio intelekto agentus žaisti „Grand Theft Auto“ (tiksliau, leiskite jiems mokytis patiems).

Kas yra gilus mokymasis?

Vaizdas konvertuotas naudojant ifftoany
Vaizdas konvertuotas naudojant ifftoany

Nors mašininis mokymasis yra dirbtinio intelekto pogrupis, gilus mokymasis yra specializuotas mašininio mokymosi pogrupis. Giliai mokantis naudojami neuroniniai tinklai, dirbtinis smegenų struktūros ir funkcionalumo atkartojimas.

Gilus mokymasis išsprendžia vieną iš pagrindinių problemų, kylančių vyresnių kartų mokymosi algoritmuose. Augant duomenų rinkiniams, mašininio mokymosi algoritmų efektyvumas ir našumas yra plokščiakalniai. Tačiau giliųjų mokymosi algoritmai ir toliau tobulėja, nes jiems pateikiama daugiau duomenų.

Užuot tiesiogiai susieję įvestį su išvestimi, giliųjų mokymosi algoritmai remiasi keliais apdorojimo vienetų sluoksniais. Kiekvienas sluoksnis perduoda savo išvestį kitam sluoksniui, kuris jį apdoroja ir perduoda kitam. Kai kuriuose modeliuose skaičiavimai gali tekėti kelis kartus tarp apdorojimo sluoksnių.

Gilus mokymasis pasirodė esąs labai efektyvus atliekant įvairias užduotis, įskaitant antraštes, balso atpažinimą ir vertimą kalbomis.

Kokie yra mašininio mokymosi iššūkiai?

Nors mašininis mokymasis yra be galo svarbus ir lemiamas būsimų programų kūrimas, jis nėra be savo iššūkių.

Viena vertus, mašininio mokymosi algoritmų kūrimas ir diegimas labai priklauso nuo didžiulių skaičiavimo ir saugojimo išteklių, kad atliktų savo užduotis. Dėl šios priklausomybės jų vykdymas apsiriboja debesų serveriais ir dideliais duomenų rinkiniais. Todėl juos atlikti kraštuose yra daug sunkiau.

Kita mašininio mokymosi – ypač gilaus mokymosi – problema yra neskaidrumas. Kai algoritmai tampa vis sudėtingesni, paaiškinti jų priimamus sprendimus tampa sunkiau. Daugeliu atvejų tai gali būti ne problema. Tačiau kai norite kritinius sprendimus suteikti algoritmams, svarbu, kad jie taptų skaidrūs ir savaime suprantami.

Taip pat yra šališkumo klausimas. Mašininio mokymosi algoritmai linkę pasirinkti įpročius ir tendencijas, įtvirtintus duomenyse, su kuriais jie mokomi. Kai kuriais atvejais šališkumą surasti ir išsiaiškinti yra lengva, kitais atvejais jis yra giliai įterptas ir sunkiai pastebimas.

Tačiau nė vienas iš šių iššūkių greičiausiai netrukdys dirbtiniam intelektui ir mašinų mokymuisi tapti mūsų laikų bendrosios paskirties technologija – terminu, kuris anksčiau buvo naudojamas tokiems išradimams kaip garo varikliai ir elektra. Kur einame, mašininis mokymasis apibrėš ir sutrikdys dalykus kaip niekad anksčiau.

Parašykite komentarą

El. pašto adresas nebus skelbiamas. Būtini laukeliai pažymėti *

Previous post Vertingas internetas: ką jis reiškia ir kuo jis naudingas visiems
Next post Kas yra minimalizmas? | Minimalistai