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

Ka veštačku inteligenciju od klasičnog algoritamskog programiranja

Anthony Quattrone, PhD 30. april 2022.

Napredak u veštačkoj inteligenciji omogućio je da se složeni računarski problemi, koji su prethodno bili teški, neodvojivi ili snažno kombinatorni, efikasno reše. Ovi problemi uključuju prepoznavanje lica, detekciju objekata, planiranje ruta i visoko personalizovane sisteme za preporuke na mreži.

Izazov za organizacije koje idu napred u budućnost je da strateški donosioci odluka odluče između tradicionalnih klasičnih pristupa i pristupa veštačke inteligencije za reš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 rešavanju problema

Paradigma klasičnog programiranja uključuje rešavanje problema putem preskriptivnih algoritama i korišćenjem 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) kako bi se proizveli izlazi.

Otkrivanje algoritama za reš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-Kompletni ili NP-Teški. Polinomni problemi se mogu brzo rešiti i verifikovati, dok nepolinomni ne mogu. NP problemi je teško rešiti klasičnim algoritamskim pristupima.

Primer P problema je pronalaženje najkraće putanje između dve tačke, dok je primer NP problema problem trgovačkog putnika, gde se za datu seriju lokacija pita koja je optimalna putanja za posetu svim mestima prelazeći najkraće moguće rastojanje. Događa se da mnogi problemi koji se trenutno moraju rešavati računarski spadaju u NP kategoriju. U većini slučajeva, u praktične svrhe, aproksimativno rešenje je često dovoljno. U svakodnevnom životu, ljudi uvek dolaze do aproksimativnih rešenja, npr. navigacija.

Postoje izazovi u implementaciji pri rešavanju problema u okviru klasičnog algoritamskog paradigme na efikasan način. Algoritamska složenost je grana računarskih nauka koja se bavi time koliko efikasno algoritmi rade u vremenskom domenu (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 računarski naučnici rade već mnogo godina kako bi pronašli najbolje algoritme za reš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 peer-programiranja, slično peer-recenziji. Potrebne su mnoge godine obuke i visok stepen veštine za efikasnu implementaciju algoritama.

U praktičnom smislu, iako su se tehnike programiranja razvijale i programski jezici (tj. C, C++, Java, JavaScript, PHP, Python) varirali u popularnosti, 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 primene u produkciji, kao što je korišćenje distribuiranih sistema. Napredni pristupi dolaze uz veće troškove i izvan su mogućnosti svih osim tehnološki najnaprednijih organizacija.

S obzirom na složenost klasičnih algoritamskih programerskih pristupa, organizacije već dugo vremena imaju poteškoća da izgrade efikasne timove za proizvodnju takvih sistema iznutra. Štaviše, mnogi su se takođe mučili da pronađu spoljne provajdere za reš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 multivarijabilne probleme. Najbolje je koristiti klasične algoritamske pristupe u situacijama gde algoritam može brzo da reši problem i radi u većini slučajeva.

AI pristup rešavanju problema

Paradigma veštačke inteligencije pokušala je da rešava probleme generički ubacivanjem ulaza i željenih izlaza u sistem i omogućavanjem sistemu da nauči kako da rešava 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 potkrepljenjem.

Veštačke neuronske mreže iskorišćavaju ljudsko razumevanje 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.

Uslov za obuku rešenja veštačke inteligencije je ili dobro definisan ogroman skup podataka, obično sastavljen korišćenjem kombinacije različitih skladišta podataka ili kroudsorsinga, ili sistem može naučiti da dostigne ciljno stanje prolazeći kroz niz iteracija. Primer za to je sistem koji igra igru protiv sebe, kao što su Šah ili Go, kako bi dalje učio kako da razvija strategije za poboljšanje ishoda. Veštačke mreže i pojačano učenje se oba pokreću na scenarijima za koje nisu obučeni i evaluiraju se slično kao drugi pristupi mašinskog učenja. Ovi pristupi se dobro generalizuju i pružaju efikasna rešenja za datu klasu problema. Rešenja zasnovana na veštačkoj inteligenciji odgovaraju problemima koji se ne mogu lako definisati pomoću niza instrukcija; umesto toga zahtevaju više "intuicije" i vrednosnih sudova.

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

Veš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 (traceability) i determinabilnost u pogledu toga kako će reagovati na slučajeve upotrebe. Dakle, AI može delovati u retkim okolnostima i reagovati nepredvidivo kada se to najmanje očekuje. Zato je važno imati jasno definisane slučajeve upotrebe kada se AI koristi, koje nivoe 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 će AI sistemi doneti, uparena sa efikasnostima stečenim nadogradnjom ljudskog unosa, predstavljati previše veliki finansijski podsticaj da mnoge organizacije ne mogu da ignorišu u narednim godinama, AI sistemi će postati sveprisutni.

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

Iako nema čvrstih i brzih pravila kada koristiti koji pristup, kao opšte pravilo, problemi koji zahtevaju približna rešenja i uključuju dugoročno planiranje orijentisano ka cilju, složeno prepoznavanje obrazaca i obradu mnoštva varijabli su pogodniji za AI. Pristupi klasičnog algoritamskog programiranja su bolje prilagođeni za tačna ili skoro optimalna rešenja koja uključuju kompleksnu logiku i proračune.

Odabir pravilnog pristupa može doneti značajne prednosti vašoj organizaciji, dok odabir manje optimalnog metoda može dovesti do znatnih gubitaka kapitala, s obzirom da su tehnološki projekti skupi. Često se opredeljenje za dokazane i demonstrabilne sisteme kao što je Telemus AI™ može pomoći organizacijama da osiguraju uspeh u svojoj digitalnoj transformaciji zasnovanoj na veštačkoj inteligenciji.

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