Razvoj strojnog učenja: Stvorite pametne robotske programe

Objava: Vaša podrška pomaže održavanju web mjesta! Naplaćujemo naknadu za preporuku za neke usluge koje preporučamo na ovoj stranici.


Strojno učenje je polje informatike koje istražuje sposobnost računala da samostalno uči, bez da je to izričito programirano. Strojno učenje koristi se u raznim računalnim scenarijima gdje je programiranje eksplicitnih algoritama nemoguće zbog nepredvidivosti, na primjer, u filtriranje neželjene pošte, vađenje podataka i analitika, OCR, otkrivanje zlonamjernog softvera, praćenje kretanja i prepoznavanje uzoraka.

Kratka povijest

U ranim danima AI, znanstvenici su bili zainteresirani kako strojevi „uče“ iz dolaznih podataka. Ovi rani pristupi strojnom učenju koristili su različite simboličke metode i neuronske mreže, ali sve veći naglasak na logičnom, utemeljenom na znanju pristupu uzrokovao je razdor između AI i strojnog učenja.

Strojno učenje razvilo se iz potrage za razvojem umjetne inteligencije, a popularnost je steklo početkom 1990-ih kao zasebno polje informatike. Fokus strojnog učenja pomaknuo se od simboličkog pristupa nasljeđenog od AI-a, do rješavanja praktičnih problema koristeći statističke metode i modele i teoriju vjerojatnosti. Strojno učenje uvelike je koristilo povećana dostupnost digitaliziranih podataka i mogućnost distribucije podataka putem interneta (npr., “Veliki podaci”).

Teorija i pristupi strojnom učenju

Osnovni cilj stroja “učenja” je generalizirati iz svog iskustva. U stvari, to je sposobnost uređaja za učenje da točno obavlja prethodno nevidljive zadatke oslanjajući se na svoj skup podataka o učenju.

Zadaci strojnog učenja često se razvrstavaju u tri glavne kategorije, ovisno o prirodi zadatka i signalu učenja:

  • Nadzirano učenje – aparat za učenje predstavljen je s primjernim ulazima i njihovim rezultatima. Cilj je naučiti opće pravilo koje preslikava ulaze na izlaze.
  • Učenje bez nadzora – stroj za učenje ostaje sam da pokuša pronaći strukturu u ulazu. Učenje bez nadzora može biti cilj samo po sebi.
  • Učenje ojačanja – stroj djeluje u dinamičnom okruženju gdje mora obaviti definirani zadatak, na primjer, autonomnu vožnju vozila. Stroj za učenje pruža povratne informacije u smislu nagrade ili kazne tokom zadatka.

Mnogi koncepti ili algoritmi strojnog učenja osmišljeni su za rješavanje određenih problema ili zadataka. Popis je opsežan, pa ćemo navesti samo nekoliko koncepata: učenje stabla odluka, učenje stabla asocijacije, duboko učenje, induktivno logičko programiranje, klasteriranje, reprezentacijsko učenje, sličnost i metričko učenje, strojno učenje temeljeno na pravilima i tako dalje.

Strojno učenje također otvara mnoga etička pitanja. Strojevi za učenje upotrebljavaju skupove podataka za dobivanje informacija i donošenje odluka, a ako su te skupove podataka pristrane, te se pristranosti mogu pokazati tijekom rada stroja za učenje. Odgovorno i nepristrano prikupljanje podataka ključni je dio strojnog učenja.

Resursi za strojno učenje

Zaroniti u strojnom učenju zahtijeva niz preduvjeta. Trebate imati podrijetlo iz informatike i matematike ili statistike, a očito će vam trebati dobro razumijevanje tehnologije i programiranja uopće..

Na mreži su dostupni brojni tečajevi i resursi za učenje, a izdvojili smo nekoliko:

  • Zbirka predavanja Andrew Ng o strojnom učenju iz tečaja 229 iz Stanforda na YouTubeu pruža sjajan uvod u strojno učenje i statističko prepoznavanje uzoraka.
  • Uvod u strojno učenje besplatan je online tečaj na Udacity.com. Ovaj tečaj će vas naučiti kako izdvojiti i identificirati korisne značajke koje najbolje predstavljaju vaše podatke, nekoliko najvažnijih algoritama strojnog učenja i kako procijeniti performanse algoritama strojnog učenja. Registracija korisnika je obavezna.
  • Googleovo duboko učenje Googleov je besplatni tečaj dubokog učenja, čiji je domaćin Udacity.com. Procjenjuje se da će trebati oko tri mjeseca sa brzinom od šest sati angažmana tjedno. Očigledno nije za početnike, ali ima za cilj da pomogne etabliranim inženjerima i znanstvenicima podataka da se uhvate u koštac sa dubokim učenjem i Google-ovom TensorFlow tehnologijom. Registracija korisnika je obavezna.

Također možete pokušati eksperimentirati s nekim javno dostupnim velikim skupima podataka i provjeriti hoće li vaše teorije funkcionirati u praksi:

  • Podaci vlade SAD-a
  • Podaci grada San Francisca
  • Reddit skupovi podataka

Strojno učenje knjiga

Knjige o strojnom učenju obično su prilično popularne i naći ćete ih puno u tisku. Neki su vrlo dobri, ali predlažemo da prvo potražite internetske resurse i pretražite određeni algoritam ili metodu koji vas zanima.

Ako i dalje preferirate hrskavu mrvicu papira, evo nekoliko knjiga o strojnom učenju koje biste trebali provjeriti:

  • Strojno učenje: vjerojatna perspektiva (2012) Kevina P Murphyja nudi sveobuhvatan i samosvoj uvod u područje strojnog učenja temeljen na jedinstvenom, vjerojatnosnom pristupu. Izvještaj kombinira širinu i dubinu, nudeći potrebnu pozadinsku građu o temama poput vjerojatnosti, optimizacije i linearne algebre, kao i raspravu o nedavnim kretanjima na terenu.
  • Prepoznavanje uzoraka i strojno učenje (2007) Christophera M Bishopa predstavljaju približne algoritme zaključivanja koji omogućuju brze približne odgovore u situacijama kad točni odgovori nisu izvedivi. Ne podrazumijevaju se prethodna znanja o prepoznavanju uzoraka ili koncepcijama strojnog učenja.
  • Sva statistika: Kratak tečaj iz statističkih zaključaka (2004) Larryja Wassermana pokriva sve teme iz statistike koje su vam potrebne za razumijevanje koncepata ML-a. Zapravo, sama knjiga ima prilično dobar uvod u mnoge tipične pristupe za ML kao što su regresija i klasifikacija.
  • Elementi statističkog učenja: vađenje podataka, zaključivanje i predviđanje (2016) Hastie, Tibshirani i Friedmana vrijedan je resurs za statističare i sve koji su zainteresirani za iskopavanje podataka u znanosti ili industriji. Obuhvat knjige je širok, od učenja pod nadzorom (predviđanja) do učenja bez nadzora.

Zaključak

Strojno učenje više nije teorijska vježba, niti je egzotično polje informatike rezervirano za sveučilišne laboratorije. Počinje sazrijevati i broj stvarnih aplikacija za strojno učenje neprestano raste.

Iako ovo zvuči ohrabrujuće, treba napomenuti da je zapošljavanje strojnog učenja obično ograničeno na određene niše i sve je samo uobičajeno iz čisto poslovne perspektive. Drugim riječima, više novca možete zaraditi drugdje, a programeri se usredotočuju na vještine koje mogu relativno lako unovčiti..

No, kako industrija prihvaća strojno učenje, programeri će morati držati korak. To ne znači da će morati postati stručnjaci u razvoju novih pristupa strojnom učenju, već da će od njih biti pozvani da u svoje proizvode i usluge implementiraju tehnologiju strojnog učenja treće strane..

Daljnje čitanje i izvori

Imamo više vodiča, tutorijala i infografika vezanih za kodiranje i razvoj:

  • Izvori za Prolog: ovaj jezik razvijen je posebno za obradu jezika.
  • Lisp: jedan od prvih jezika visoke razine, bio je izuzetno važan u AI programiranju. Pogledajte naše članke o Lisp inačicama: AutoLISP, Clojure, Common Lisp, Emacs Lisp i Scheme.
  • Kako izbjeći zaljubljivanje s chatbotom: unatoč jezivom naslovu, ova infografika pruža sjajnu povijest računala na razgovoru.

Superračunala oblikuju budućnost čovječanstva

Želite znati gdje se AI doista vodi? Pogledajte našu infografiku, superračunala oblikuju budućnost čovječanstva

Superračunala oblikuju budućnost čovječanstva
Superračunala oblikuju budućnost čovječanstva

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me