ML & AI

Topp 20 AI og maskinlæringsalgoritmer, metoder og teknikker

Topp 20 AI og maskinlæringsalgoritmer, metoder og teknikker

Da jeg begynte å jobbe med maskinlæringsproblemer, føler jeg meg i panikk hvilken algoritme jeg skal bruke? Eller hvilken som er enkel å bruke? Hvis du er som meg, kan denne artikkelen hjelpe deg å vite om algoritmer, metoder eller teknikker for kunstig intelligens og maskinlæring for å løse eventuelle uventede eller til og med forventede problemer.

Maskinlæring er en så kraftig AI-teknikk som kan utføre en oppgave effektivt uten å bruke noen eksplisitte instruksjoner. En ML-modell kan lære av dataene og erfaringene. Applikasjoner for maskinlæring er automatiske, robuste og dynamiske. Flere algoritmer er utviklet for å adressere denne dynamiske naturen til virkelige problemer. I det store og hele er det tre typer maskinlæringsalgoritmer, for eksempel veiledet læring, tilsyn uten læring og forsterkningslæring.

Beste AI- og maskinlæringsalgoritmer


Å velge riktig maskinlæringsteknikk eller -metode er en av hovedoppgavene for å utvikle et kunstig intelligens- eller maskinlæringsprosjekt. Fordi det er flere algoritmer som er tilgjengelige, og alle har fordelene og nytteverdien. Nedenfor forteller vi 20 maskinlæringsalgoritmer for både nybegynnere og profesjonelle. Så, la oss ta en titt.

1.  Naive Bayes


En Naïve Bayes-klassifikator er en sannsynlig klassifikator basert på Bayes-setning, med antagelsen om uavhengighet mellom funksjoner. Disse funksjonene er forskjellige fra applikasjon til applikasjon. Det er en av de komfortable maskinlæringsmetodene for nybegynnere å øve.

Naïve Bayes er en betinget sannsynlighetsmodell. Gitt en problemforekomst som skal klassifiseres, representert med en vektor x = (xJeg ... xn) som representerer noen n-funksjoner (uavhengige variabler), tildeler den sannsynligheten for dagens forekomst for hvert av K potensielle utfall:

Problemet med formuleringen ovenfor er at hvis antall funksjoner n er betydelig eller hvis et element kan ta på seg et stort antall verdier, så er det umulig å basere en slik modell på sannsynlighetstabeller. Vi utvikler derfor modellen for å gjøre den mer brukbar. Ved bruk av Bayes teorem kan den betingede sannsynligheten skrives som,

Ved å bruke Bayesiansk sannsynlighetsterminologi kan ligningen ovenfor skrives som:

Denne algoritmen for kunstig intelligens brukes i tekstklassifisering, dvs.e., sentimentanalyse, dokumentkategorisering, spamfiltrering og nyhetsklassifisering. Denne maskinlæringsteknikken fungerer bra hvis inngangsdataene er kategorisert i forhåndsdefinerte grupper. Dessuten krever det mindre data enn logistisk regresjon. Det utkonkurrerer på forskjellige domener.

2. Support Vector Machine


Support Vector Machine (SVM) er en av de mest benyttede maskinlæringsalgoritmene innen tekstklassifisering. Denne metoden brukes også for regresjon. Det kan også kalles Support Vector Networks. Cortes & Vapnik utviklet denne metoden for binær klassifisering. Den veiledede læringsmodellen er maskinlæringsmetoden som viser resultatet fra de merkede treningsdataene.

En støttevektormaskin konstruerer et hyperplan eller et sett med hyperplaner i et veldig høyt eller uendelig dimensjonalt område. Den beregner den lineære separasjonsflaten med maksimal margin for et gitt treningssett.

Bare en delmengde av inngangsvektorene vil påvirke valget av margin (sirklet i figuren); slike vektorer kalles støttevektorer. Når en lineær separasjonsflate ikke eksisterer, for eksempel i nærvær av støyende data, er SVM-algoritmer med en slak variabel passende. Denne klassifisatoren prøver å dele dataområdet med bruk av lineære eller ikke-lineære avgrensninger mellom de forskjellige klassene.

SVM har vært mye brukt i mønsterklassifiseringsproblemer og ikke-lineær regresjon. Det er også en av de beste teknikkene for å utføre automatisk tekstkategorisering. Det beste med denne algoritmen er at den ikke gir noen sterke antakelser om data.

Å implementere Support Vector Machine: data Science Libraries i Python-SciKit Learn, PyML, SVMStruktur  Python, LIBSVM og data Science Libraries i R- Klar, e1071.

3. Lineær regresjon


Lineær regresjon er en direkte tilnærming som brukes til å modellere forholdet mellom en avhengig variabel og en eller flere uavhengige variabler. Hvis det er en uavhengig variabel, kalles den enkel lineær regresjon. Hvis mer enn en uavhengig variabel er tilgjengelig, kalles dette multippel lineær regresjon.

Denne formelen brukes til å estimere reelle verdier som prisen på boliger, antall samtaler, totalt salg basert på kontinuerlige variabler. Her etableres forholdet mellom uavhengige og avhengige variabler ved å tilpasse den beste linjen. Denne best fit linjen er kjent som en regresjonslinje og representert av en lineær ligning

Y = a * X + b.

her,

Denne maskinlæringsmetoden er enkel å bruke. Det kjøres raskt. Dette kan brukes i virksomheten for salgsprognoser. Den kan også brukes i risikovurdering.

4.  Logistisk regresjon


Her er en annen maskinlæringsalgoritme - Logistisk regresjon eller logit regresjon som brukes til å estimere diskrete verdier (Binære verdier som 0/1, ja / nei, sant / usant) basert på et gitt sett med den uavhengige variabelen. Oppgaven til denne algoritmen er å forutsi sannsynligheten for en hendelse ved å tilpasse data til en logit-funksjon. Dens utgangsverdier ligger mellom 0 og 1.

Formelen kan brukes på forskjellige områder som maskinlæring, vitenskapelig disiplin og medisinske felt. Den kan brukes til å forutsi faren for å oppstå en gitt sykdom basert på pasientens observerte egenskaper. Logistisk regresjon kan brukes til å forutsi kundens ønske om å kjøpe et produkt. Denne maskinlæringsteknikken brukes i værvarsling for å forutsi sannsynligheten for regn.

Logistisk regresjon kan deles inn i tre typer -

Logistisk regresjon er mindre komplisert. Dessuten er den robust. Den kan håndtere ikke-lineære effekter. Imidlertid, hvis treningsdataene er sparsomme og høydimensjonale, kan denne ML-algoritmen overfit. Det kan ikke forutsi kontinuerlige resultater.

5. K-nærmeste nabo (KNN)


K-nærmeste nabo (kNN) er en kjent statistisk tilnærming for klassifisering og har blitt studert mye gjennom årene, og har brukt tidlig på kategoriseringsoppgaver. Det fungerer som en ikke-parametrisk metode for klassifisering og regresjonsproblemer.

Denne AI- og ML-metoden er ganske enkel. Den bestemmer kategorien til et testdokument t basert på stemmegivning av et sett med k-dokumenter som er nærmest t når det gjelder avstand, vanligvis euklidisk avstand. Den viktigste beslutningsregelen gitt et testdokument t for kNN-klassifisereren er:

Der y (xi, c) er en binær klassifiseringsfunksjon for treningsdokumentet xi (som returnerer verdi 1 hvis xi er merket med c, eller 0 ellers), merker denne regelen med t med den kategorien som er gitt flest stemmer i k -nærmeste nabolag.

Vi kan bli kartlagt KNN til våre virkelige liv. Hvis du for eksempel vil finne ut noen få personer, som du ikke har noen info om, foretrekker du å bestemme angående hans nære venner, og derfor vil kretsene han flytter inn og få tilgang til hans / hennes informasjon. Denne algoritmen er beregningsdyr.

6. K-betyr


k-betyr klynging er en metode for uten tilsyn læring som er tilgjengelig for klyngeanalyse i data mining. Formålet med denne algoritmen er å dele n observasjoner i k-klynger der hver observasjon tilhører det nærmeste gjennomsnittet av klyngen. Denne algoritmen brukes i markedssegmentering, datasyn og astronomi blant mange andre domener.

7. Beslutningstre


Et beslutningstre er et beslutningsstøtteverktøy som bruker en grafisk fremstilling, dvs.e., tre-lignende graf eller beslutningsmodell. Det er ofte brukt i beslutning analyse og også et populært verktøy i maskinlæring. Beslutningstrær brukes i driftsforskning og driftsledelse.

Den har en flytskjema-lignende struktur der hver intern node representerer en 'test' på et attributt, hver gren representerer resultatet av testen, og hver bladnode representerer en klassemerke. Ruten fra rot til blad er kjent som klassifiseringsregler. Den består av tre typer noder:

Et beslutningstre er enkelt å forstå og tolke. Den bruker en hvit boksmodell. Det kan også kombineres med andre beslutningsteknikker.

8. Tilfeldig skog


Tilfeldig skog er en populær teknikk for ensembleinnlæring som opererer ved å konstruere et mangfold av beslutningstrær ved treningstidspunktet og sende ut kategorien som er modusen for kategoriene (klassifisering) eller gjennomsnittlig prediksjon (regresjon) for hvert tre.

Kjøretiden til denne maskinlæringsalgoritmen er rask, og den kan arbeide med ubalanserte og manglende data. Men når vi brukte den for regresjon, kan den ikke forutsi utover intervallet i treningsdataene, og det kan overpasse data.

9. Vogn


Classification and Regression Tree (CART) er en slags beslutningstreet. Et beslutningstreet fungerer som en rekursiv partisjoneringsmetode, og CART deler hver av inngangsnodene i to underordnede noder. På hvert nivå i et beslutningstreet identifiserer algoritmen en tilstand - hvilken variabel og hvilket nivå som skal brukes til å dele inngangsnoden i to underordnede noder.

CART algoritmetrinn er gitt nedenfor:

10. Apriori maskinlæringsalgoritme


Apriori-algoritmen er en kategoriseringsalgoritme. Denne maskinlæringsteknikken brukes til å sortere store datamengder. Den kan også brukes til å følge opp hvordan relasjoner utvikler seg, og kategorier bygges. Denne algoritmen er en uten tilsyn læringsmetode som genererer tilknytningsregler fra et gitt datasett.

Apriori maskinlæringsalgoritme fungerer som:

Denne ML-algoritmen brukes i en rekke applikasjoner, for eksempel for å oppdage bivirkninger, for analyse av markedskurven og automatisk komplettering av applikasjoner. Det er greit å implementere.

11. Hovedkomponentanalyse (PCA)


Principal component analysis (PCA) er en algoritme uten tilsyn. De nye funksjonene er ortogonale, det betyr at de ikke er korrelert. Før du utfører PCA, bør du alltid normalisere datasettet ditt fordi transformasjonen er avhengig av skala. Hvis du ikke gjør det, vil funksjonene som er i den viktigste skalaen dominere nye hovedkomponenter.

PCA er en allsidig teknikk. Denne algoritmen er enkel og enkel å implementere. Den kan brukes i bildebehandling.

12. CatBoost


CatBoost er en algoritme for maskinlæring med åpen kildekode som kommer fra Yandex. Navnet 'CatBoost' kommer fra to ord 'Category' og 'Boosting.'Det kan kombineres med dype læringsrammer, jeg.e., Googles TensorFlow og Apples Core ML. CatBoost kan arbeide med mange datatyper for å løse flere problemer.

1. 3. Iterativ dikotomiser 3 (ID3)


Iterativ dikotomiser 3 (ID3) er en beslutningstreet læringsalgoritmisk regel presentert av Ross Quinlan som brukes til å levere et beslutningstreet fra et datasett. Det er forløperen til C4.5 algoritmisk program og er ansatt innen maskinlæring og språklige kommunikasjonsprosessdomener.

ID3 kan overdrive til treningsdataene. Denne algoritmiske regelen er tøffere å bruke på kontinuerlige data. Det garanterer ikke en optimal løsning.

14. Hierarkisk klynging


Hierarkisk klynging er en måte å klyngeanalyse på. I hierarkisk klynging utvikles et klyngetre (et dendrogram) for å illustrere data. I hierarkisk klynging lenker hver gruppe (node) til to eller flere etterfølgergrupper. Hver node i klyngetreet inneholder lignende data. Noder grupperes på grafen ved siden av andre lignende noder.

Algoritme

Denne maskinlæringsmetoden kan deles inn i to modeller - opp ned eller ovenfra og ned:

Bottom-up (Hierarchical Agglomerative Clustering, HAC)

en. Komplett kobling: Likhet med det lengste paret. En begrensning er at avvikere kan føre til sammenslåing av nære grupper senere enn det som er optimalt.

b. Enkeltkobling: Likheten med det nærmeste paret. Det kan føre til for tidlig sammenslåing, selv om disse gruppene er ganske forskjellige.

c. Gruppegjennomsnitt: likhet mellom grupper.

d. Centroid likhet: hver iterasjon smelter sammen klyngene med det fremste lignende sentrale punktet.

Ovenfra og ned (Divisive Clustering)

15. Ryggforplantning


Back-propagation er en overvåket læringsalgoritme. Denne ML-algoritmen kommer fra området ANN (Artificial Neural Networks). Dette nettverket er et multilayer feed-forward-nettverk. Denne teknikken tar sikte på å designe en gitt funksjon ved å modifisere de interne vektene av inngangssignalene for å produsere ønsket utgangssignal. Den kan brukes til klassifisering og regresjon.

Back-propagation algoritme har noen fordeler, dvs.e., det er enkelt å implementere. Den matematiske formelen som brukes i algoritmen, kan brukes på ethvert nettverk. Beregningstiden kan reduseres hvis vektene er små.

Tilbake-forplantningsalgoritme har noen ulemper, slik at den kan være følsom for støyende data og avvik. Det er en helt matrisebasert tilnærming. Den faktiske ytelsen til denne algoritmen avhenger helt av inndata. Utgangen kan være ikke-numerisk.

16. AdaBoost


AdaBoost betyr Adaptive Boosting, en maskinlæringsmetode representert av Yoav Freund og Robert Schapire. Det er en meta-algoritme og kan integreres med andre læringsalgoritmer for å forbedre ytelsen. Denne algoritmen er rask og enkel å bruke. Det fungerer bra med store datasett.

17. Dyp læring


Dyp læring er et sett med teknikker inspirert av mekanismen til den menneskelige hjerne. De to primære dyplæringene, jeg.e., Convolution Neural Networks (CNN) og Recurrent Neural Networks (RNN) brukes i tekstklassifisering. Dyplæringsalgoritmer som Word2Vec eller GloVe brukes også for å få høytstående vektorrepresentasjoner av ord og forbedre nøyaktigheten til klassifiserere som er trent med tradisjonelle maskinlæringsalgoritmer.

Denne maskinlæringsmetoden trenger mye treningseksempel i stedet for tradisjonelle maskinlæringsalgoritmer, dvs.e., et minimum av millioner av merkede eksempler. På den motsatte siden når tradisjonelle maskinlæringsteknikker en presis terskel uansett hvor det å legge til flere treningseksempler ikke forbedrer nøyaktigheten. Dyp læringsklassifikatorer overgår bedre resultat med mer data.

18. Gradient Boosting Algorithm


Gradient boosting er en maskinlæringsmetode som brukes til klassifisering og regresjon. Det er en av de mektigste måtene å utvikle en prediktiv modell på. En gradientforsterkende algoritme har tre elementer:

19. Hopfield Network


Et Hopfield-nettverk er en slags tilbakevendende kunstig nevrale nettverk gitt av John Hopfield i 1982. Dette nettverket tar sikte på å lagre ett eller flere mønstre og å huske hele mønstrene basert på delvis inngang. I et Hopfield-nettverk er alle nodene både innganger og utganger og fullt sammenkoblet.

20. C4.5 


C4.5 er et beslutningstreet som er oppfunnet av Ross Quinlan. Det er en oppgraderingsversjon av ID3. Dette algoritmiske programmet omfatter noen få basissaker:

Avslutte tanker


Det er veldig viktig å bruke riktig algoritme basert på dataene og domenet ditt for å utvikle et effektivt maskinlæringsprosjekt. Det er også viktig å forstå den kritiske forskjellen mellom hver maskinlæringsalgoritme for å ta opp "når jeg velger hvilken.'Som i en maskinlæringsmetode har en maskin eller enhet lært gjennom læringsalgoritmen. Jeg tror bestemt at denne artikkelen hjelper deg med å forstå algoritmen. Hvis du har noen forslag eller spørsmål, er du velkommen til å spørre. Fortsett å lese.

Mus Etterlig museklikk ved å sveve med Clickless Mouse i Windows 10
Etterlig museklikk ved å sveve med Clickless Mouse i Windows 10
Bruk av mus eller tastatur i feil stilling for overdreven bruk kan føre til mange helseproblemer, inkludert belastning, karpaltunnelsyndrom og mer. I ...
Mus Legg til musebevegelser i Windows 10 ved hjelp av disse gratisverktøyene
Legg til musebevegelser i Windows 10 ved hjelp av disse gratisverktøyene
De siste årene har datamaskiner og operativsystemer utviklet seg sterkt. Det var en tid da brukere måtte bruke kommandoer for å navigere gjennom filad...
Mus Kontroller og administrer musebevegelser mellom flere skjermer i Windows 10
Kontroller og administrer musebevegelser mellom flere skjermer i Windows 10
Dual Display Mouse Manager lar deg kontrollere og konfigurere musebevegelse mellom flere skjermer, ved å bremse bevegelsene nær grensen. Windows 10/8,...