Algoritem je neke vrste vsebnik. Zagotavlja škatlo za shranjevanje metode za reševanje določene vrste težave. Algoritmi obdelujejo podatke skozi vrsto dobro definiranih stanj. Ni nujno, da so stanja deterministična, vendar so stanja kljub temu definirana. Cilj je ustvariti rezultat, ki rešuje problem. V nekaterih primerih algoritem prejme vhode, ki pomagajo definirati izhod, vendar je poudarek vedno na izhodu.
Algoritmi morajo izražati prehode med stanji z dobro opredeljenim in formalnim jezikom, ki ga računalnik razume. Pri obdelavi podatkov in reševanju problema algoritem definira, izpopolni in izvede funkcijo. Funkcija je vedno specifična za vrsto problema, ki ga algoritem obravnava.
Vsako od petih plemen ima drugačno tehniko in strategijo za reševanje problemov, ki imajo za posledico edinstvene algoritme. Kombinacija teh algoritmov bi morala sčasoma privesti do glavnega algoritma, ki bo lahko rešil kateri koli problem. Naslednja razprava ponuja pregled petih glavnih algoritemskih tehnik.
Simbolično sklepanje
Eno najzgodnejših plemen, simbolistov, je verjelo, da je znanje mogoče pridobiti z delovanjem na simbolih (znakih, ki predstavljajo določen pomen ali dogodek) in iz njih izpeljati pravila. S sestavljanjem kompleksnih sistemov pravil bi lahko dosegli logično dedukcijo rezultata, ki ste ga želeli vedeti, tako so simbolisti oblikovali svoje algoritme za izdelavo pravil iz podatkov. V simbolnem sklepanju dedukcija širi področje človeškega znanja, medtem ko indukcija dviguje raven človeškega znanja. Indukcija običajno odpira nova področja raziskovanja, medtem ko dedukcija raziskuje ta področja.
Povezave po vzoru možganskih nevronov
Povezovalci so morda najbolj znani od petih plemen. To pleme si prizadeva za reprodukcijo možganskih funkcij z uporabo silicija namesto nevronov. V bistvu vsak od nevronov (ustvarjen kot algoritem, ki modelira primerek v resničnem svetu) rešuje majhen del problema in uporaba številnih nevronov vzporedno rešuje problem kot celoto.
Uporaba širjenja nazaj ali širjenja napak nazaj želi določiti pogoje, pod katerimi se napake odstranijo iz omrežij, zgrajenih tako, da spominjajo na človeške nevrone s spreminjanjem uteži (koliko določen vhod šteje v rezultat) in pristranskosti.(katere funkcije so izbrane) omrežja. Cilj je nadaljevati s spreminjanjem uteži in pristranskosti, dokler se dejanski rezultat ne ujema s ciljnim rezultatom. Na tej točki se umetni nevron sproži in prenese svojo raztopino na naslednji nevron v vrsti. Rešitev, ki jo ustvari samo en nevron, je le del celotne rešitve. Vsak nevron posreduje informacije naslednjemu nevronu v vrsti, dokler skupina nevronov ne ustvari končnega rezultata. Takšna metoda se je izkazala za najbolj učinkovito pri človeku podobnih nalogah, kot so prepoznavanje predmetov, razumevanje pisnega in govorjenega jezika ter klepetanje z ljudmi.
Evolucijski algoritmi, ki testirajo variacije
Evolucionarji se pri reševanju problemov zanašajo na načela evolucije. Z drugimi besedami, ta strategija temelji na preživetju najmočnejših (odstranitev vseh rešitev, ki ne ustrezajo želenemu rezultatu). Funkcija fitnesa določa sposobnost preživetja vsake funkcije pri reševanju problema. Z uporabo drevesne strukture metoda rešitve išče najboljšo rešitev na podlagi izhoda funkcije. Zmagovalec vsake stopnje evolucije lahko zgradi funkcije naslednje stopnje. Ideja je, da se bo naslednja raven približala reševanju problema, vendar ga morda ne bo rešila v celoti, kar pomeni, da je potrebna druga raven. To posebno pleme se močno zanaša na rekurzijo in jezike, ki močno podpirajo rekurzijo za reševanje težav. Zanimiv rezultat te strategije so bili algoritmi, ki se razvijajo:
Bayesov sklep
Skupina znanstvenikov, imenovana Bayesovci, je zaznala, da je negotovost ključni vidik, na katerega je treba biti pozoren, in da učenje ni zagotovljeno, temveč se je odvijalo kot nenehno posodabljanje prejšnjih prepričanj, ki so postajala vse bolj točna. To dojemanje je pripeljalo Bayesovce, da so sprejeli statistične metode in zlasti izpeljanke iz Bayesovega izreka, ki vam pomaga izračunati verjetnosti pod določenimi pogoji (na primer, če vidite kartico določenega semena, začetno vrednost za psevdonaključno zaporedje, izvlečen iz krova po treh drugih kartah istega semena).
Sistemi, ki se učijo po analogiji
Analizatorji uporabljajo stroje jedra za prepoznavanje vzorcev v podatkih. Če prepoznate vzorec enega niza vhodov in ga primerjate z vzorcem znanega izhoda, lahko ustvarite rešitev problema. Cilj je uporabiti podobnost za določitev najboljše rešitve problema. To je vrsta sklepanja, ki določa, da je uporaba določene rešitve delovala v danih okoliščinah v nekem prejšnjem času; zato bi morala delovati tudi uporaba te rešitve za podoben sklop okoliščin. Eden najbolj prepoznavnih rezultatov tega plemena so priporočljivi sistemi. Na primer, ko kupite izdelek na Amazonu, sistem priporočil pripravi druge, sorodne izdelke, ki bi jih morda želeli kupiti.
Končni cilj strojnega učenja je združiti tehnologije in strategije, ki jih je sprejelo pet plemen, da bi ustvarili en sam algoritem (glavni algoritem), ki se lahko nauči česar koli. Seveda je do doseganja tega cilja daleč. Kljub temu si znanstveniki, kot je Pedro Domingos , trenutno prizadevajo za ta cilj.