logo

Maskininlärningsmodeller

En maskininlärningsmodell definieras som en matematisk representation av resultatet av träningsprocessen. Maskininlärning är studiet av olika algoritmer som kan förbättras automatiskt genom erfarenhet & gammal data och bygga modellen. En maskininlärningsmodell liknar datorprogramvara utformad för att känna igen mönster eller beteenden baserat på tidigare erfarenheter eller data. Inlärningsalgoritmen upptäcker mönster i träningsdatan och den matar ut en ML-modell som fångar dessa mönster och gör förutsägelser om nya data.

Maskininlärningsmodeller

Låt oss förstå ett exempel på ML-modellen där vi skapar en app för att känna igen användarens känslor baserat på ansiktsuttryck. Så att skapa en sådan app är möjligt med maskininlärningsmodeller där vi kommer att träna en modell genom att mata bilder av ansikten med olika känslor märkta på dem. Närhelst den här appen används för att bestämma användarens humör, läser den all matad data och bestämmer sedan vilken användares humör som helst.

Därför kan vi med enkla ord säga att a maskininlärningsmodell är en förenklad representation av något eller en process. I det här ämnet kommer vi att diskutera olika maskininlärningsmodeller och deras tekniker och algoritmer .

Vad är Machine Learning Model?

Machine Learning-modeller kan förstås som ett program som har tränats för att hitta mönster i ny data och göra förutsägelser. Dessa modeller representeras som en matematisk funktion som tar förfrågningar i form av indata, gör förutsägelser om indata och sedan ger en utdata som svar. Först tränas dessa modeller över en uppsättning data, och sedan tillhandahålls de en algoritm för att resonera över data, extrahera mönstret från flödesdata och lära av dessa data. När dessa modeller väl har tränats kan de användas för att förutsäga den osynliga datamängden.

Det finns olika typer av maskininlärningsmodeller tillgängliga baserat på olika affärsmål och datauppsättningar.

Klassificering av maskininlärningsmodeller:

Utifrån olika affärsmål och datamängder finns det tre inlärningsmodeller för algoritmer. Varje maskininlärningsalgoritm sätts in i en av de tre modellerna:

  • Övervakat lärande
  • Oövervakat lärande
  • Förstärkningsinlärning
Maskininlärningsmodeller

Supervised Learning delas vidare in i två kategorier:

  • Klassificering
  • Regression

Oövervakat lärande är också indelat i följande kategorier:

  • Klustring
  • Föreningsregel
  • Dimensionalitetsminskning

1. Övervakade maskininlärningsmodeller

Supervised Learning är den enklaste maskininlärningsmodellen för att förstå där indata kallas träningsdata och har en känd etikett eller resultat som utdata. Så det fungerar enligt principen om input-output-par. Det kräver att man skapar en funktion som kan tränas med hjälp av en träningsdatauppsättning, och sedan appliceras den på okända data och ger en viss prediktiv prestanda. Övervakat lärande är uppgiftsbaserat och testas på märkta datamängder.

Vi kan implementera en övervakad inlärningsmodell på enkla problem i det verkliga livet. Till exempel har vi ett dataset bestående av ålder och längd; sedan kan vi bygga en övervakad inlärningsmodell för att förutsäga personens längd baserat på deras ålder.

Supervised Learning-modeller klassificeras vidare i två kategorier:

Regression

I regressionsproblem är utsignalen en kontinuerlig variabel. Några vanliga regressionsmodeller är följande:

a) Linjär regression

Linjär regression är den enklaste maskininlärningsmodellen där vi försöker förutsäga en utdatavariabel med hjälp av en eller flera indatavariabler. Representationen av linjär regression är en linjär ekvation, som kombinerar en uppsättning ingångsvärden(x) och förutspådd utdata(y) för uppsättningen av dessa ingångsvärden. Det representeras i form av en linje:

Y = bx + c.

Maskininlärningsmodeller

Huvudsyftet med den linjära regressionsmodellen är att hitta den bästa passningslinjen som bäst passar datapunkterna.

Linjär regression utvidgas till multipel linjär regression (hitta ett plan med bästa passform) och polynomregression (hitta kurvan som passar bäst).

b) Beslutsträd

namngivning av javakonventioner

Beslutsträd är de populära maskininlärningsmodellerna som kan användas för både regressions- och klassificeringsproblem.

Ett beslutsträd använder en trädliknande struktur av beslut tillsammans med deras möjliga konsekvenser och utfall. I detta används varje intern nod för att representera ett test på ett attribut; varje gren används för att representera resultatet av testet. Ju fler noder ett beslutsträd har, desto mer exakt blir resultatet.

Fördelen med beslutsträd är att de är intuitiva och lätta att implementera, men de saknar noggrannhet.

Beslutsträd används flitigt i verksamhetsforskning, särskilt inom beslutsanalys, strategisk planering , och främst inom maskininlärning.

c) Random Forest

Random Forest är ensembleinlärningsmetoden, som består av ett stort antal beslutsträd. Varje beslutsträd i en slumpmässig skog förutspår ett utfall, och förutsägelsen med majoriteten av rösterna betraktas som utfallet.

En slumpmässig skogsmodell kan användas för både regressions- och klassificeringsproblem.

För klassificeringsuppgiften tas utfallet av den slumpmässiga skogen från majoriteten av rösterna. Medan i regressionsuppgiften tas resultatet från medelvärdet eller medelvärdet av de förutsägelser som genereras av varje träd.

d) Neurala nätverk

Neurala nätverk är en delmängd av maskininlärning och är också kända som artificiella neurala nätverk. Neurala nätverk är uppbyggda av artificiella neuroner och utformade på ett sätt som liknar den mänskliga hjärnans struktur och funktion. Varje artificiell neuron ansluter till många andra neuroner i ett neuralt nätverk, och sådana miljoner anslutna neuroner skapar en sofistikerad kognitiv struktur.

Maskininlärningsmodeller

Neurala nätverk består av en flerskiktsstruktur som innehåller ett indatalager, ett eller flera dolda lager och ett utdatalager. Eftersom varje neuron är ansluten till en annan neuron överför den data från ett lager till den andra neuronen i nästa lager. Slutligen når data det sista lagret eller utgångsskiktet i det neurala nätverket och genererar utdata.

Neurala nätverk är beroende av träningsdata för att lära sig och förbättra deras noggrannhet. Men ett perfekt utbildat och korrekt neuralt nätverk kan snabbt klustra data och bli ett kraftfullt verktyg för maskininlärning och AI. Ett av de mest kända neurala nätverken är Googles sökalgoritm.

Klassificering

Klassificeringsmodeller är den andra typen av Supervised Learning-tekniker, som används för att generera slutsatser från observerade värden i kategorisk form. Till exempel kan klassificeringsmodellen identifiera om e-postmeddelandet är skräppost eller inte; en köpare kommer att köpa produkten eller inte, etc. Klassificeringsalgoritmer används för att förutsäga två klasser och kategorisera resultatet i olika grupper.

Vid klassificering utformas en klassificeringsmodell som klassificerar datasetet i olika kategorier, och varje kategori tilldelas en etikett.

Det finns två typer av klassificeringar inom maskininlärning:

    Binär klassificering: Om problemet bara har två möjliga klasser, kallas en binär klassificerare. Till exempel katt eller hund, ja eller nej,Flerklassig klassificering: Om problemet har fler än två möjliga klasser är det en klassificerare med flera klasser.

Några populära klassificeringsalgoritmer är följande:

a) Logistisk regression

Logistic Regression används för att lösa klassificeringsproblemen inom maskininlärning. De liknar linjär regression men används för att förutsäga de kategoriska variablerna. Den kan förutsäga utgången i antingen Ja eller Nej, 0 eller 1, Sant eller Falskt, etc. Men istället för att ge de exakta värdena, tillhandahåller den sannolikhetsvärdena mellan 0 och 1.

b) Stöd Vector Machine

Stöd för vektormaskin eller SVM är den populära maskininlärningsalgoritmen, som används flitigt för klassificerings- och regressionsuppgifter. Men specifikt används det för att lösa klassificeringsproblem. Huvudsyftet med SVM är att hitta de bästa beslutsgränserna i ett N-dimensionellt utrymme, som kan segregera datapunkter i klasser, och den bästa beslutsgränsen är känd som Hyperplane. SVM väljer den extrema vektorn för att hitta hyperplanet, och dessa vektorer är kända som stödvektorer.

Maskininlärningsmodeller

c) Naiva Bayes

Naiv Bayes är en annan populär klassificeringsalgoritm som används i maskininlärning. Det kallas så eftersom det är baserat på Bayes teorem och följer det naiva (oberoende) antagandet mellan funktionerna som ges som:

Maskininlärningsmodeller

Varje naiv Bayes-klassificerare antar att värdet på en specifik variabel är oberoende av någon annan variabel/funktion. Till exempel om en frukt behöver klassificeras utifrån färg, form och smak. Så gul, oval och söt kommer att kännas igen som mango. Här är varje funktion oberoende av andra funktioner.

2. Oövervakade maskininlärningsmodeller

Oövervakade maskininlärningsmodeller implementerar inlärningsprocessen motsatsen till övervakad inlärning, vilket innebär att modellen kan lära sig av den omärkta träningsdatauppsättningen. Baserat på den omärkta datamängden förutsäger modellen resultatet. Med hjälp av oövervakad inlärning lär sig modellen dolda mönster från datamängden själv utan övervakning.

Oövervakade inlärningsmodeller används huvudsakligen för att utföra tre uppgifter, som är följande:

    Klustring
    Clustering är en oövervakad inlärningsteknik som innebär att klustera eller treva datapunkterna i olika kluster baserat på likheter och skillnader. De föremål som har flest likheter förblir i samma grupp, och de har inga eller mycket få likheter från andra grupper.
    Klustringsalgoritmer kan användas flitigt i olika uppgifter som t.ex Bildsegmentering, Statistisk dataanalys, Marknadssegmentering , etc.
    Några vanligt använda klustringsalgoritmer är K-betyder Clustering, hierarkisk Clustering, DBSCAN , etc.
    Maskininlärningsmodeller Föreningens regellärande
    Associationsregelinlärning är en oövervakad inlärningsteknik, som hittar intressanta relationer mellan variabler inom en stor datamängd. Huvudsyftet med denna inlärningsalgoritm är att hitta beroendet av ett dataobjekt till ett annat dataobjekt och kartlägga dessa variabler i enlighet därmed så att det kan generera maximal vinst. Denna algoritm används huvudsakligen i Marknadskorganalys, gruvdrift av webbanvändning, kontinuerlig produktion , etc.
    Några populära algoritmer för föreningsregelinlärning är Apriori Algorithm, Eclat, FP-tillväxtalgoritm. Dimensionalitetsminskning
    Antalet funktioner/variabler som finns i en datamängd är känd som dimensionaliteten för datamängden, och tekniken som används för att reducera dimensionaliteten är känd som dimensionsreduktionstekniken.
    Även om mer data ger mer exakta resultat, kan det också påverka modellens/algoritmens prestanda, till exempel problem med överutrustning. I sådana fall används dimensionsreduktionstekniker.
    ' Det är en process för att konvertera datauppsättningen med högre dimensioner till datauppsättning med mindre dimensioner för att säkerställa att den ger liknande information .'
    Olika dimensionsreduktionsmetoder såsom som PCA (Principal Component Analysis), Singular Value Decomposition, etc.

Förstärkningsinlärning

Vid förstärkningsinlärning lär sig algoritmen åtgärder för en given uppsättning tillstånd som leder till ett måltillstånd. Det är en återkopplingsbaserad inlärningsmodell som tar återkopplingssignaler efter varje tillstånd eller åtgärd genom att interagera med omgivningen. Denna feedback fungerar som en belöning (positiv för varje bra handling och negativ för varje dålig handling), och agentens mål är att maximera de positiva belöningarna för att förbättra sin prestation.

Modellens beteende vid förstärkningsinlärning liknar mänskligt lärande, eftersom människor lär sig saker genom erfarenheter som feedback och interagerar med omgivningen.

Nedan är några populära algoritmer som ingår i förstärkningsinlärning:

    Q-learning:Q-learning är en av de populära modellfria algoritmerna för förstärkningsinlärning, som är baserad på Bellmans ekvation.

Det syftar till att lära sig den policy som kan hjälpa AI-agenten att vidta de bästa åtgärderna för att maximera belöningen under en specifik omständighet. Den innehåller Q-värden för varje tillstånd-handlingspar som indikerar belöningen för att följa en given tillståndsväg, och den försöker maximera Q-värdet.

    State-Action-Reward-State-Action (SARSA):SARSA är en policyalgoritm baserad på Markovs beslutsprocess. Den använder åtgärden som utförs av den aktuella policyn för att lära sig Q-värdet. SARSA-algoritmen står sig för State Action Reward State Action, som symboliserar tupeln (s, a, r, s', a'). Deep Q Network:DQN eller Deep Q Neural Network är Q-learning inom det neurala nätverket. Den används i grunden i en stor statlig rymdmiljö där det skulle vara en komplex uppgift att definiera en Q-tabell. Så i ett sådant fall, snarare än att använda Q-tabell, använder det neurala nätverket Q-värden för varje åtgärd baserat på tillståndet.

Utbildning av maskininlärningsmodeller

När maskininlärningsmodellen väl har byggts tränas den för att få rätt resultat. För att träna en maskininlärningsmodell behöver man en enorm mängd förbearbetad data. Här menas med förbearbetad data data i strukturerad form med reducerade nollvärden etc. Om vi ​​inte tillhandahåller förbehandlad data så finns det stora chanser att vår modell kan prestera fruktansvärt.

Hur väljer man den bästa modellen?

I avsnittet ovan har vi diskuterat olika maskininlärningsmodeller och algoritmer. Men en mest förvirrande fråga som kan dyka upp för alla nybörjare: 'vilken modell ska jag välja?'. Så svaret är att det främst beror på affärskravet eller projektkravet. Bortsett från detta beror det också på associerade attribut, volymen av tillgänglig datauppsättning, antalet funktioner, komplexitet, etc. Men i praktiken rekommenderas det att vi alltid börjar med den enklaste modellen som kan tillämpas på den specifika modellen. problem och sedan gradvis öka komplexiteten & testa noggrannheten med hjälp av parameterjustering och korsvalidering.

Skillnad mellan maskininlärningsmodell och algoritmer

En av de mest förvirrande frågorna bland nybörjare är att är maskininlärningsmodeller, och algoritmer är desamma? För i olika fall inom maskininlärning och datavetenskap används dessa två termer omväxlande.

Svaret på denna fråga är nej, och maskininlärningsmodellen är inte detsamma som en algoritm. På ett enkelt sätt, en ML-algoritm är som en procedur eller metod som körs på data för att upptäcka mönster från den och skapa modellen. Samtidigt, a maskininlärningsmodell är som ett datorprogram som genererar utdata eller gör förutsägelser . Närmare bestämt, när vi tränar en algoritm med data, blir den en modell.

 Machine Learning Model = Model Data + Prediction Algorithm