Vještačka inteligencija naspram klasičnog algoritamskog programiranja

Ka vještačkoj inteligenciji od klasičnog algoritamskog programiranja

Anthony Quattrone, PhD 30. april 2022.

Napredak u vještačkoj inteligenciji omogućio je efikasno rješavanje složenih računarskih problema koji su prethodno bili teški, neodrživi ili snažno kombinatorni. Ovi problemi uključuju prepoznavanje lica, detekciju objekata, planiranje ruta i visoko personalizovane online sisteme za preporuke.

Izazov za organizacije koje idu naprijed u budućnost je da strateški donosioci odluka odluče između tradicionalnih klasičnih pristupa i pristupa umjetne inteligencije za rješavanje složenih računarskih problema. Svaka metoda ima jedinstvene izazove u isporuci robustnog sistema u dimenzijama tačnosti, troškova, težine implementacije i održivosti.

Klasični algoritamski programerski pristup rješavanju problema

Klasična programska paradigma uključuje rješavanje problema putem preskriptivnih algoritama i korištenjem dobro definisanog niza instrukcija. Ulazi su definisani i ograničeni, razvijaju se algoritmi za obradu ulaza putem definisanih programskih paradigmi (Proceduralna, Objektno-orijentisana, Funkcionalna i Logička) za stvaranje izlaza.

Otkrivanje algoritama za rješavanje vremenski i prostorno efikasnih problema je poznato kao izazovno. U teoriji računarske složenosti, problemi su ili P (Polinomni), NP (Nedeterministički polinomni), NP-Complete ili NP-Hard. Polinomni problemi se mogu brzo riješiti i verificirati, dok ne-polinomni problemi ne mogu. NP problemi je teško riješiti klasičnim algoritamskim pristupima.

Primjer P problema je pronalaženje najkraćeg puta između dvije tačke, dok je primjer NP problema problem trgovačkog putnika, gdje se za datu seriju lokacija traži optimalna putanja za posjetu svim mjestima prelazeći najkraće moguće rastojanje. Događa se da mnogi problemi koji se trenutno moraju riješiti računarski spadaju u NP kategoriju. U većini slučajeva, u praktične svrhe, aproksimativno rješenje je često dovoljno. U svakodnevnom životu, ljudi uvijek dolaze do približnih rješenja, npr. navigacija.

Postoje izazovi u implementaciji pri rješavanju problema pod klasičnom algoritamskom paradigmom na efikasan način. Algoritamska složenost je grana računarske nauke koja se bavi time koliko efikasno algoritmi rade u vremenskom (vremenska složenost) i prostornom domenu (prostorna složenost).

Iako postoji mnogo različitih načina za implementaciju algoritama, očigledan, ali potencijalno neefikasan način implementacije algoritma često se naziva „naivni“ algoritam. Većina efikasnih algoritama nije laka za otkrivanje, a informatičari već dugi niz godina rade na pronalaženju najboljih algoritama za rješavanje klasa problema. Algoritmi u proizvodnim sistemima implementirani su na vremenski i prostorno efikasne načine. Najveće softverske kompanije osiguravaju najviše algoritamske standarde putem programiranja u paru, slično recenziji od strane vršnjaka. Potrebne su mnoge godine obuke i visok stepen vještine za efikasnu implementaciju algoritama.

U praktičnom smislu, iako su se tehnike programiranja razvijale i popularnost programskih jezika (npr. C, C++, Java, JavaScript, PHP, Python) varirala, osnove su ostale iste otkako su u Bell Labs, tokom 1970-ih, napisali prve C module. Postoje neki praktični načini da se teorijski izazovni problemi primijene u produkciji, kao što je korištenje distribuiranih sistema. Napredni pristupi dolaze uz veće troškove i izvan su mogućnosti svih osim najtehnološki naprednijih organizacija.

S obzirom na složenost klasičnih algoritamskih programerskih pristupa, organizacije su odavno smatrale teškim izgraditi efikasne timove za proizvodnju takvih sistema interno. Nadalje, mnogi su se također mučili da pronađu eksterne provajdere za rješavanje nišanskih izazova koji su teorijski mogući za implementaciju. Dizajniranje specifičnog algoritma postaje znatno složenije kako se povećava složenost problema. Ovo je posebno tačno za multivarijantne probleme. Najbolje je koristiti klasične algoritamske pristupe za situacije u kojima algoritam može brzo riješiti problem i radi za većinu slučajeva.

AI pristup rješavanju problema

Paradigma umjetne inteligencije pokušala je rješavati probleme generički ubacivanjem ulaza i željenih izlaza u sistem i puštanjem sistema da nauči kako rješavati probleme. Trenutni AI pristupi rade na klasičnim računarima putem klasičnih programskih tehnika. Najuzbudljivije AI metode su neuronske mreže i učenje potkrepljivanjem.

Vještačke neuronske mreže iskorištavaju ljudsko razumijevanje načina na koji ljudski um uči i generalizuje probleme. Pojačano učenje koristi agente koji unose ciljno stanje i niz scenarija. Algoritam učenja zadržava poželjne ishode i odbacuje nepovoljne ishode kroz više iteracija. Pojačano učenje je analogno operantnom uslovljavanju. Agent uči kako da postigne cilj kroz mnoge iteracije obuke.

Zahtjev za obuku rješenja vještačke inteligencije je ili dobro definisan ogroman skup podataka, obično sastavljen korištenjem kombinacije različitih skladišta podataka ili crowdsourcinga, ili sistem može naučiti da dostigne ciljno stanje prolazeći kroz niz iteracija. Primjer za to je sistem koji igra igru protiv sebe, kao što su Šah ili Go, kako bi dalje učio kako razvijati strategije za poboljšanje ishoda. Vještačke mreže i učenje potkrepljenjem se obje pokreću na scenarijima za koje nisu obučeni i evaluiraju se slično kao i drugi pristupi mašinskog učenja. Ovi pristupi dobro generaliziraju i pružaju efikasna rješenja za datu klasu problema. Rješenja zasnovana na vještačkoj inteligenciji odgovaraju problemima koji se ne mogu lako definisati korištenjem niza instrukcija; umjesto toga zahtijevaju više "intuicije" i vrijednosnih prosudbi.

Tipično, sistemi vještačke inteligencije se obučavaju korištenjem skupova podataka, a kasnije se vrednuju na skupu za evaluaciju. Što više kvalitetnih podataka za obuku unese se u AI sistem, to je veća vjerovatnoća da će sistem raditi na visokom nivou. Prednost AI pristupa je u tome što se mogu nastaviti poboljšavati tokom vremena kako sistem uči više. Dakle, složeni problemi se mogu generalizovati i riješiti pomoću računarskih sistema. To uključuje probleme koji se tradicionalno rješavaju ljudskim unosom, iako se uska AI može posmatrati kao dopuna postojećem ljudskom unosu kako bi se osigurali bolji ishodi.

Vještačka inteligencija i mašinsko učenje dugo su se posmatrali sa oprezom od strane organizacija zbog toga što takvim sistemima nedostaju mogućnost praćenja i determinabilnost u vezi sa načinom na koji će odgovoriti na slučajeve upotrebe. Dakle, AI može djelovati u rijetkim okolnostima i odgovoriti nepredvidivo kada se to najmanje očekuje. Zato je važno imati jasno definisane slučajeve upotrebe za kada se AI koristi, koji nivoi greške su prihvatljivi i kako će izlazi koje proizvode AI sistemi biti pregledani od strane ljudi kako bi se osigurala tačnost.

Sveukupno, predviđamo da će poboljšana tačnost koju donose AI sistemi, u kombinaciji sa efikasnostima stečenim nadogradnjom ljudskog unosa, predstavljati preveliki finansijski podsticaj da ga mnoge organizacije ne mogu ignorisati u narednim godinama; AI sistemi će postati sveprisutni.

Kada odabrati vještačku inteligenciju, a kada odabrati pristup klasičnog algoritamskog programiranja za rješavanje problema

Iako nema čvrstih i brzih pravila o tome kada koristiti koji pristup, kao opšte pravilo, problemi koji zahtijevaju približna rješenja i uključuju dugoročno planiranje orijentisano na cilj, složeno prepoznavanje obrazaca i obradu mnoštva varijabli su prikladniji za AI. Klasični algoritamski pristupi su prikladniji za tačna ili blisko optimalna rješenja koja uključuju složenu logiku i proračune.

Odabir ispravnog pristupa može donijeti značajne prednosti vašoj organizaciji, dok odabir manje optimalne metode može dovesti do značajnih kapitalnih gubitaka, jer su tehnološki projekti skupi. Često, opredjeljenje za dokazane i demonstrabilne sisteme kao što je Telemus AI™ može pomoći organizacijama da osiguraju uspjeh u svojoj digitalnoj transformaciji vještačke inteligencije.

Kontaktirajte nas danas za besplatne konsultacije o tome kako se Telemus AI™ može integrirati u vašu organizaciju.