ML & AI

Top 20 algoritmov, metod in tehnik umetne inteligence in strojnega učenja

Top 20 algoritmov, metod in tehnik umetne inteligence in strojnega učenja

Ko sem začel delati s težavami s strojnim učenjem, sem v paniki, kateri algoritem naj uporabim? Ali katerega je enostavno uporabiti? Če ste takšni kot jaz, vam bo ta članek morda pomagal vedeti o algoritmih, metodah ali tehnikah umetne inteligence in strojnega učenja za reševanje nepričakovanih ali celo pričakovanih težav.

Strojno učenje je tako močna tehnika umetne inteligence, ki lahko nalogo učinkovito izvaja brez uporabe izrecnih navodil. Model ML se lahko uči iz svojih podatkov in izkušenj. Aplikacije za strojno učenje so samodejne, robustne in dinamične. Za reševanje te dinamične narave resničnih problemov je razvitih več algoritmov. Na splošno obstajajo tri vrste algoritmov strojnega učenja, kot so nadzorovano učenje, nenadzorovano učenje in učenje z okrepitvijo.

Najboljši algoritmi za umetno inteligenco in strojno učenje


Izbira ustrezne tehnike ali metode strojnega učenja je ena glavnih nalog za razvoj projekta umetne inteligence ali strojnega učenja. Na voljo je več algoritmov in vsi imajo svoje prednosti in uporabnost. Spodaj predstavljamo 20 algoritmov strojnega učenja tako za začetnike kot za profesionalce. Torej, poglejmo.

1.  Naivni Bayes


Naivni Bayesov klasifikator je verjetnostni klasifikator, ki temelji na Bayesovem izreku, ob predpostavki neodvisnosti med značilnostmi. Te funkcije se razlikujejo od aplikacije do aplikacije. Za začetnike je ena izmed udobnih metod strojnega učenja.

Naivni Bayes je pogojni verjetnostni model. Glede na primerek problema, ki ga je treba razvrstiti, predstavlja vektor x = (xjaz … Xn) predstavlja nekaj n lastnosti (neodvisnih spremenljivk), sedanjim verjetnostim primernosti dodeli vsak K potencialni izid:

Težava z zgornjo formulacijo je v tem, da če je število značilnosti n pomembno ali če lahko element prevzame veliko število vrednosti, potem takšen model na verjetnostnih tabelah ni izvedljiv. Zato model ponovno razvijamo, da postane bolj uporaben. Z uporabo Bayesovega izreka lahko pogojno verjetnost zapišemo kot,

Z uporabo Bayesove verjetnostne terminologije lahko zgornjo enačbo zapišemo kot:

Ta algoritem umetne inteligence se uporablja pri razvrščanju besedil, tj.e., analiza razpoloženja, kategorizacija dokumentov, filtriranje neželene pošte in klasifikacija novic. Ta tehnika strojnega učenja deluje dobro, če so vhodni podatki razvrščeni v vnaprej določene skupine. Zahteva tudi manj podatkov kot logistična regresija. Izboljša se v različnih domenah.

2. Podporni vektorski stroj


Support Vector Machine (SVM) je eden najpogosteje uporabljenih nadzorovanih algoritmov strojnega učenja na področju razvrščanja besedil. Ta metoda se uporablja tudi za regresijo. Lahko se imenuje tudi podporna vektorska omrežja. Cortes & Vapnik sta to metodo razvila za binarno klasifikacijo. Nadzorovani učni model je pristop strojnega učenja, ki izhaja iz rezultatov označenih podatkov o vadbi.

Stroj za podporni vektor izdela hiperravnino ali niz hiperravnin v zelo visokem ali neskončno dimenzionalnem območju. Izračuna linearno ločilno površino z največjo mejo za določen sklop vadbe.

Samo podmnožica vhodnih vektorjev bo vplivala na izbiro roba (obkrožen na sliki); taki vektorji se imenujejo podporni vektorji. Kadar linearna ločevalna površina ne obstaja, na primer ob prisotnosti hrupnih podatkov, so primerni algoritmi SVM s spremenljivo ohlapnostjo. Ta klasifikator poskuša podatkovni prostor razdeliti z uporabo linearnih ali nelinearnih razmejitev med različnimi razredi.

SVM se pogosto uporablja pri problemih klasifikacije vzorcev in nelinearni regresiji. Prav tako je ena najboljših tehnik za samodejno kategorizacijo besedil. Najboljše pri tem algoritmu je, da glede podatkov ne daje nobenih trdnih predpostavk.

Za izvedbo podpornega vektorskega stroja: Podatkovne knjižnice v Python-SciKit Learn, PyML, SVMStruktura  Python, LIBSVM in Data Science Libraries v R- Klar, e1071.

3. Linearna regresija


Linearna regresija je neposreden pristop, ki se uporablja za modeliranje razmerja med odvisno spremenljivko in eno ali več neodvisnimi spremenljivkami. Če obstaja ena neodvisna spremenljivka, jo imenujemo preprosta linearna regresija. Če je na voljo več kot ena neodvisna spremenljivka, se to imenuje večkratna linearna regresija.

Ta formula se uporablja za oceno realnih vrednosti, kot so cena domov, število klicev, skupna prodaja na podlagi neprekinjenih spremenljivk. Tu se razmerje med neodvisnimi in odvisnimi spremenljivkami vzpostavi z namestitvijo najboljše črte. Ta najbolj primerna črta je znana kot regresijska črta in jo predstavlja linearna enačba

Y = a * X + b.

tukaj,

Ta metoda strojnega učenja je enostavna za uporabo. Izvaja se hitro. To lahko v poslu uporabite za napovedovanje prodaje. Uporablja se lahko tudi pri oceni tveganja.

4.  Logistična regresija


Tu je še en algoritem strojnega učenja - Logistična regresija ali logit regresija, ki se uporablja za oceno diskretnih vrednosti (binarne vrednosti, kot so 0/1, da / ne, res / ne) na podlagi danega nabora neodvisne spremenljivke. Naloga tega algoritma je predvideti verjetnost incidenta tako, da podatke prilagodi logit funkciji. Njegove izhodne vrednosti so med 0 in 1.

Formula se lahko uporablja na različnih področjih, kot so strojno učenje, znanstvena disciplina in medicinska področja. Uporablja se lahko za napovedovanje nevarnosti pojava določene bolezni na podlagi opazovanih značilnosti bolnika. Logistično regresijo lahko uporabimo za napovedovanje želje kupca po nakupu izdelka. Ta tehnika strojnega učenja se uporablja pri napovedovanju vremena za napovedovanje verjetnosti dežja.

Logistično regresijo lahko razdelimo na tri vrste -

Logistična regresija je manj zapletena. Prav tako je robusten. Obvladuje lahko nelinearne učinke. Če pa so podatki o vadbi redki in visoko dimenzionalni, lahko ta algoritem ML preveč ustreza. Ne more napovedati stalnih rezultatov.

5. K-najbližji-sosed (KNN)


K-najbližji sosed (kNN) je dobro znan statistični pristop za razvrščanje in je bil v preteklih letih široko preučevan in že zgodaj uporabljen pri nalogah kategorizacije. Deluje kot neparametrična metodologija za razvrščanje in regresijske probleme.

Ta metoda AI in ML je precej preprosta. Določa kategorijo testnega dokumenta t na podlagi glasovanja o nizu k dokumentov, ki so najbližji t glede na razdaljo, običajno evklidsko razdaljo. Bistveno pravilo odločitve za preskusni dokument t za klasifikator kNN je:

Kjer je y (xi, c) binarna klasifikacijska funkcija za dokument usposabljanja xi (ki vrne vrednost 1, če je xi označen s c ali 0 drugače), to pravilo označi s t s kategorijo, ki ima največ glasov v k -najbližja soseska.

KNN nas lahko preslika v naše resnično življenje. Če bi na primer želeli izvedeti nekaj ljudi, o katerih nimate podatkov, bi se raje odločili glede njegovih bližnjih prijateljev in torej krogov, v katerih se premika, ter pridobiti dostop do njegovih / njenih informacij. Ta algoritem je računsko drag.

6. K-pomeni


združevanje k-pomeni je metoda nenadzorovanega učenja, ki je dostopna za analizo grozdov pri podatkovnem rudarjenju. Namen tega algoritma je razdeliti n opazovanj na k grozdov, kjer vsako opazovanje pripada najbližji srednji vrednosti grozda. Ta algoritem se uporablja pri segmentaciji trga, računalniškem vidu in astronomiji med številnimi drugimi področji.

7. Drevo odločanja


Drevo odločanja je orodje za podporo odločanju, ki uporablja grafični prikaz, tj.e., drevesni graf ali model odločitev. Pogosto se uporablja pri analizi odločitev in je tudi priljubljeno orodje pri strojnem učenju. Drevesa odločitev se uporabljajo pri operativnih raziskavah in upravljanju operacij.

Ima strukturo, podobno diagramu poteka, v katerem vsako notranje vozlišče predstavlja 'test' atributa, vsaka veja predstavlja rezultat testa, vsako listno vozlišče pa oznako razreda. Pot od korena do lista je znana kot pravila razvrščanja. Sestavljen je iz treh vrst vozlišč:

Drevo odločanja je enostavno razumeti in razložiti. Uporablja model bele škatle. Prav tako se lahko kombinira z drugimi tehnikami odločanja.

8. Naključni gozd


Naključni gozd je priljubljena tehnika ansambelnega učenja, ki deluje tako, da v času treninga gradi množico dreves odločanja in izpiše kategorijo, ki je način kategorij (klasifikacija) ali povprečna napoved (regresija) vsakega drevesa.

Ta algoritem strojnega učenja deluje hitro in lahko deluje z neuravnoteženimi in manjkajočimi podatki. Ko pa smo ga uporabili za regresijo, ne more napovedati preko obsega v podatkih o vadbi in lahko podatke preveč prilega.

9. VOZIČEK


Drevo klasifikacije in regresije (CART) je ena vrsta dreves odločanja. Drevo odločitev deluje kot pristop rekurzivnega razdeljevanja in CART vsako vhodno vozlišče razdeli na dva podrejena vozlišča. Na vsaki ravni odločitvenega drevesa algoritem opredeli pogoj - katero spremenljivko in raven uporabiti za razdelitev vhodnega vozlišča na dva podrejena vozlišča.

Koraki algoritma CART so navedeni spodaj:

10. Algoritem strojnega učenja Apriori


Apriorijev algoritem je algoritem za kategorizacijo. Ta tehnika strojnega učenja se uporablja za razvrščanje velikih količin podatkov. Uporablja se lahko tudi za spremljanje razvoja odnosov in grajenja kategorij. Ta algoritem je nenadzorovana učna metoda, ki generira pravila pridružitve iz danega nabora podatkov.

Apriori algoritem strojnega učenja deluje kot:

Ta algoritem ML se uporablja v različnih aplikacijah, na primer za odkrivanje neželenih učinkov zdravil, za analizo tržne košarice in samodejno dokončanje aplikacij. Izvedba je enostavna.

11. Analiza glavne komponente (PCA)


Analiza glavnih komponent (PCA) je nenadzorovani algoritem. Nove funkcije so pravokotne, kar pomeni, da niso povezane. Pred izvajanjem PCA morate vedno normalizirati nabor podatkov, ker je preoblikovanje odvisno od obsega. Če tega ne storite, bodo funkcije, ki so najpomembnejše, prevladovale med novimi glavnimi komponentami.

PCA je vsestranska tehnika. Ta algoritem je enostaven in enostaven za uporabo. Uporablja se lahko za obdelavo slik.

12. CatBoost


CatBoost je odprtokodni algoritem strojnega učenja, ki prihaja iz Yandexa. Ime "CatBoost" izhaja iz dveh besed "Category" in "Boosting".„Lahko se kombinira z globokimi učnimi okviri, tj.e., Googlova TensorFlow in Appleov Core ML. CatBoost lahko s številnimi vrstami podatkov reši več težav.

13. Iterativni dihotomizator 3 (ID3)


Iterative Dichotomiser 3 (ID3) je algoritemsko pravilo učenja dreves odločanja, ki ga je predstavil Ross Quinlan in je uporabljeno za dobavo drevesa odločitev iz nabora podatkov. Je predhodnik C4.5 algoritemski program in je zaposlen na področjih strojnega učenja in jezikovnih komunikacij.

ID3 se lahko preveč prilega podatkom o vadbi. To algoritemsko pravilo je težje uporabiti pri neprekinjenih podatkih. Ne zagotavlja optimalne rešitve.

14. Hierarhično grozdenje


Hierarhično združevanje je način analize grozdov. V hierarhičnem združevanju je razvito drevo grozdov (dendrogram) za ponazoritev podatkov. V hierarhičnem združevanju se vsaka skupina (vozlišče) poveže z dvema ali več naslednimi skupinami. Vsako vozlišče znotraj drevesa gruče vsebuje podobne podatke. Vozlišča se na grafu združijo z drugimi podobnimi vozlišči.

Algoritem

To metodo strojnega učenja lahko razdelimo na dva modela - od spodaj navzgor ali od zgoraj navzdol:

Od spodaj navzgor (Hierarhično strnjeno združevanje v gruče, HAC)

a. Popolna povezava: Podobnost najbolj oddaljenega para. Ena omejitev je, da lahko odstopanja povzročijo združitev tesnih skupin pozneje, kot je optimalno.

b. Enojna povezava: Podobnost najbližjega para. Lahko povzroči prezgodnje združevanje, čeprav so te skupine precej različne.

c. Povprečje skupine: podobnost med skupinami.

d. Podobnost centroida: vsaka ponovitev združi grozde s skrajno podobno osrednjo točko.

Od zgoraj navzdol (grozdno deljenje)

15. Razmnoževanje


Razmnoževanje je nadzorovan učni algoritem. Ta algoritem ML prihaja s področja ANN (Umetna nevronska omrežja). To omrežje je večplastno povratno omrežje. Cilj te tehnike je oblikovanje dane funkcije s spreminjanjem notranjih uteži vhodnih signalov, da se ustvari želeni izhodni signal. Uporablja se lahko za klasifikacijo in regresijo.

Algoritem povratnega širjenja ima nekaj prednosti, tj.e., je enostaven za izvedbo. Matematična formula, uporabljena v algoritmu, se lahko uporabi za katero koli omrežje. Čas računanja se lahko skrajša, če so uteži majhne.

Algoritem povratnega razmnoževanja ima nekaj pomanjkljivosti, na primer, da je občutljiv na hrupne podatke in odstopanja. Gre za popolnoma matrični pristop. Dejanska zmogljivost tega algoritma je v celoti odvisna od vhodnih podatkov. Izhod je lahko numeričen.

16. AdaBoost


AdaBoost pomeni Adaptive Boosting, metodo strojnega učenja, ki jo zastopata Yoav Freund in Robert Schapire. Je meta-algoritem in ga je mogoče integrirati z drugimi učnimi algoritmi za izboljšanje njihove učinkovitosti. Ta algoritem je hiter in enostaven za uporabo. Dobro deluje z velikimi nabori podatkov.

17. Globoko učenje


Poglobljeno učenje je skupek tehnik, ki jih navdihuje mehanizem človeških možganov. Dva osnovna globoka učenja, tj.e., Pri klasifikaciji besedil se uporabljata nevronska konvolucijska omrežja (CNN) in ponavljajoča se nevronska omrežja (RNN). Za pridobivanje vektorskih predstavitev besed in izboljšanje natančnosti klasifikatorjev, ki so usposobljeni s tradicionalnimi algoritmi strojnega učenja, se uporabljajo tudi algoritmi globokega učenja, kot sta Word2Vec ali GloVe.

Ta metoda strojnega učenja potrebuje veliko vzorca usposabljanja namesto tradicionalnih algoritmov strojnega učenja, tj.e., najmanj milijonov označenih primerov. Nasprotno pa tradicionalne tehnike strojnega učenja dosežejo natančen prag, kadar dodajanje več vzorca vadbe na splošno ne izboljša njihove natančnosti. Klasifikatorji globokega učenja presegajo boljše rezultate z več podatki.

18. Algoritem za povečanje gradienta


Gradient boosting je metoda strojnega učenja, ki se uporablja za klasifikacijo in regresijo. Je eden najmočnejših načinov za razvoj napovednega modela. Algoritem za povečanje gradienta ima tri elemente:

19. Omrežje Hopfield


Hopfieldova mreža je ena vrsta ponavljajočih se umetnih nevronskih mrež, ki jo je John Hopfield dal leta 1982. Cilj tega omrežja je shraniti enega ali več vzorcev in priklicati celotne vzorce na podlagi delnega vnosa. V omrežju Hopfield so vsa vozlišča hkrati vhodi in izhodi ter popolnoma povezana.

20. C4.5 


C4.5 je drevo odločanja, ki ga je izumil Ross Quinlan. Njegova nadgradnja različice ID3. Ta algoritemski program zajema nekaj osnovnih primerov:

Konec misli


Zelo pomembno je, da za razvoj učinkovitega projekta strojnega učenja uporabite ustrezen algoritem, ki temelji na vaših podatkih in domeni. Razumevanje kritične razlike med vsakim algoritmom strojnega učenja je ključnega pomena, da se ga lotim, "ko izberem katerega.„Tako kot se je pri pristopu strojnega učenja stroj ali naprava naučila z učnim algoritmom. Trdno sem prepričan, da vam ta članek pomaga razumeti algoritem. Če imate kakršen koli predlog ali vprašanje, vas prosimo, da vprašate. Nadaljujte z branjem.

5 najboljših arkadnih iger za Linux
Dandanes so računalniki resni stroji, ki se uporabljajo za igre na srečo. Če ne boste mogli dobiti novega visokega rezultata, boste vedeli, kaj mislim...
Bitka za Wesnoth 1.13.6 Razvoj izdan
Bitka za Wesnoth 1.13.6, ki je izšel prejšnji mesec, je šesta razvojna izdaja v 1.13.x series in prinaša številne izboljšave, predvsem uporabniški vme...
Kako namestiti League Of Legends na Ubuntu 14.04
Če ste ljubitelj League of Legends, je to priložnost, da preizkusite League of Legends. Upoštevajte, da LOL podpira PlayOnLinux, če uporabljate Linux....