Algoritmas yra tam tikras konteineris. Jame yra dėžutė, kurioje saugomas būdas išspręsti tam tikros rūšies problemą. Algoritmai apdoroja duomenis per gerai apibrėžtas būsenas. Būsenos nebūtinai turi būti deterministinės, tačiau valstybės vis tiek yra apibrėžtos. Tikslas yra sukurti išvestį, kuri išspręstų problemą. Kai kuriais atvejais algoritmas gauna įvestis, kurios padeda apibrėžti išvestį, tačiau dėmesys visada sutelkiamas į išvestį.
Algoritmai turi išreikšti perėjimus tarp būsenų naudodami gerai apibrėžtą ir formalią kalbą, kurią gali suprasti kompiuteris. Apdorojant duomenis ir sprendžiant problemą, algoritmas apibrėžia, patikslina ir vykdo funkciją. Funkcija visada priklauso nuo problemos, kurią sprendžia algoritmas, rūšiai.
Kiekviena iš penkių genčių turi skirtingą techniką ir strategiją sprendžiant problemas, kurios lemia unikalius algoritmus. Sujungus šiuos algoritmus galiausiai turėtų būti sukurtas pagrindinis algoritmas, kuris galės išspręsti bet kurią problemą. Tolesnėje diskusijoje pateikiama penkių pagrindinių algoritminių metodų apžvalga.
Simbolinis samprotavimas
Viena iš pirmųjų genčių, simbolistai, tikėjo, kad žinių galima gauti veikiant simboliais (ženklais, reiškiančiais tam tikrą prasmę ar įvykį) ir išvedant iš jų taisykles. Sudėdami sudėtingas taisyklių sistemas, galite gauti norimo sužinoti rezultato loginį išskaičiavimą, todėl simbolistai formavo savo algoritmus, kad sudarytų taisykles iš duomenų. Simboliniame samprotavime dedukcija išplečia žmogaus žinių sritį, o indukcija pakelia žmogaus žinių lygį. Indukcija paprastai atveria naujus tyrinėjimo laukus, o dedukcija tyrinėja tuos laukus.
Jungtys, sukurtos remiantis smegenų neuronais
Konnekcionistai yra bene garsiausia iš penkių genčių. Ši gentis stengiasi atkurti smegenų funkcijas vietoj neuronų naudodama silicį. Iš esmės kiekvienas neuronas (sukurtas kaip algoritmas, modeliuojantis realaus pasaulio atitikmenį) išsprendžia nedidelę problemos dalį, o naudojant daug neuronų lygiagrečiai išsprendžiama visa problema.
Naudojant atgalinį arba atgalinį klaidų sklidimą, siekiama nustatyti sąlygas, kuriomis klaidos pašalinamos iš tinklų, sukurtų taip, kad būtų panašūs į žmogaus neuronus, keičiant svorius (kiek tam tikra įvestis įeina į rezultatą) ir paklaidas.(kurios funkcijos pasirinktos) tinkle. Tikslas yra toliau keisti svorius ir paklaidas tol, kol tikroji išvestis sutaps su tiksline išvestimi. Šiuo metu dirbtinis neuronas užsidega ir perduoda savo tirpalą kitam neuronui. Vieno neurono sukurtas sprendimas yra tik dalis viso sprendimo. Kiekvienas neuronas perduoda informaciją kitam neuronui, kol neuronų grupė sukuria galutinį išvestį. Toks metodas pasirodė esąs veiksmingiausias atliekant į žmones panašias užduotis, tokias kaip objektų atpažinimas, rašytinės ir šnekamosios kalbos supratimas bei pokalbiai su žmonėmis.
Evoliuciniai algoritmai, tikrinantys variaciją
Evoliucionieriai, spręsdami problemas, remiasi evoliucijos principais. Kitaip tariant, ši strategija yra pagrįsta stipriausio išgyvenimu (pašalinus visus sprendimus, kurie neatitinka norimos išvesties). Tinkamumo funkcija nustato kiekvienos funkcijos gyvybingumą sprendžiant problemą. Naudojant medžio struktūrą, sprendimo metodas ieško geriausio sprendimo pagal funkcijos išvestį. Kiekvieno evoliucijos lygio nugalėtojas gali sukurti kito lygio funkcijas. Idėja yra ta, kad kitas lygis priartės prie problemos sprendimo, bet gali jos neišspręsti iki galo, o tai reiškia, kad reikia kito lygio. Ši konkreti gentis labai priklauso nuo rekursijos ir kalbų, kurios stipriai palaiko rekursiją sprendžiant problemas. Įdomus šios strategijos rezultatas buvo algoritmai, kurie vystosi:
Bajeso išvada
Grupė mokslininkų, vadinamų Bajesais, suvokė, kad neapibrėžtumas yra pagrindinis aspektas, į kurį reikia atkreipti dėmesį, ir kad mokymasis nebuvo užtikrintas, o vyksta kaip nuolatinis ankstesnių įsitikinimų atnaujinimas, kuris tapo vis tikslesnis. Šis suvokimas paskatino Bajesus taikyti statistinius metodus ir ypač išvestuves iš Bayeso teoremos, kuri padeda apskaičiuoti tikimybes tam tikromis sąlygomis (pavyzdžiui, matant tam tikros sėklos kortelę , pradinę pseudoatsitiktinės sekos reikšmę, ištraukti iš kaladės po trijų kitų tos pačios sėklos kortų).
Sistemos, kurios mokosi pagal analogiją
Analogikai naudoja branduolio mašinas, kad atpažintų duomenų šablonus. Atpažindami vieno įvesties rinkinio šabloną ir palyginę jį su žinomos išvesties šablonu, galite sukurti problemos sprendimą. Tikslas yra naudoti panašumą, siekiant nustatyti geriausią problemos sprendimą. Tai toks samprotavimas, kuris lemia, kad tam tikro sprendimo naudojimas tam tikromis aplinkybėmis veikė tam tikru ankstesniu metu; todėl to sprendimo naudojimas panašioms aplinkybėms taip pat turėtų veikti. Vienas iš labiausiai atpažįstamų šios genties rezultatų yra rekomendacijų sistemos. Pavyzdžiui, kai perkate produktą „Amazon“, rekomendacijų sistema pateikia kitų susijusių produktų, kuriuos galbūt norėsite nusipirkti.
Galutinis mašininio mokymosi tikslas yra sujungti penkių genčių taikomas technologijas ir strategijas, kad būtų sukurtas vienas algoritmas (pagrindinis algoritmas), kuris gali išmokti bet ką. Žinoma, iki šio tikslo dar toli. Nepaisant to, mokslininkai, tokie kaip Pedro Domingosas , šiuo metu siekia šio tikslo.