Hem Personliga finanser Hur man skapar en övervakad lärande modell med logistisk regression - dummies

Hur man skapar en övervakad lärande modell med logistisk regression - dummies

Innehållsförteckning:

Video: The Choice is Ours (2016) Official Full Version 2024

Video: The Choice is Ours (2016) Official Full Version 2024
Anonim

När du har byggt din första klassificeringss predictive modell för analys av data skapar du fler modeller som det är en riktigt enkel uppgift i scikit. Den enda verkliga skillnaden från en modell till nästa är att du kanske måste ställa in parametrarna från algoritmen till algoritmen.

Så här laddar du upp dina data

Denna kodlista laddar irisdatasetet i din session: >>>> från sklearn. dataset import load_iris >>> iris = load_iris ()

Så här skapar du en instans av klassificeringsenheten

Följande två kodkod skapar en instans av klassificeringsenheten. Den första raden importerar det logistiska regressionsbiblioteket. Den andra raden skapar en förekomst av den logistiska regressionsalgoritmen. >>>> från sklearn import linear_model >>> logClassifier = linear_model. LogisticRegression (C = 1, random_state = 111)

Notera parametern (regulariseringsparametern) i konstruktorn.

regulariseringsparametern

används för att förhindra överfitting. Parametern är inte absolut nödvändig (konstruktören fungerar bra utan att den kommer att gå till C = 1). Att skapa en logisk regressions klassificerare med C = 150 skapar en bättre plot av beslutsytan. Du kan se båda diagrammen nedan.

Så här kör du träningsdata

Du måste dela datasetet i träning och testuppsättningar innan du kan skapa en förekomst av logistikregressions klassificeringen. Följande kod kommer att utföra den här uppgiften: >>>> från sklearn import cross_validation >>> X_train, X_test, y_train, y_test = cross_validation. train_test_split (iris. data, iris. target, test_size = 0. 10, random_state = 111) >>> logClassifier. fit (X_train, y_train)

Linje 1 importerar biblioteket som låter dig dela datasatsen i två delar.

Linje 2 kallar funktionen från biblioteket som delar datasetet i två delar och tilldelar de nufördelade dataseten till två par variabler.

Linje 3 tar förekomsten av den logistiska regressions klassificeringen du just skapat och kallar passformmetoden för att träna modellen med träningsdatasatsen.

Så här visualiserar du klassificeringsenheten

Titta på beslutsytan på tomten, det verkar som att vissa inställningar måste göras. Om du tittar nära mitten av tomten kan du se att många av de datapunkter som hör till mittområdet (Versicolor) ligger i området till höger (Virginica).

Denna bild visar beslutsytan med ett C-värde på 150. Det verkar visuellt bättre, så det är lämpligt att välja att använda denna inställning för din logistiska regressionsmodell.

Så här kör testdata

I följande kod matar första raden testdatasetet till modellen och den tredje raden visar utmatningen: >>>> predicted = logClassifier. förutsäga (X_test) >>> predictedarray ([0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2])

Hur man utvärderar modellen < Du kan korsreferera utgången från förutsägelsen mot y_test-matrisen. Som ett resultat kan du se att det förutsagde alla testdatapunkter korrekt. Här är koden: >>>> från sklearnimportvärden >>> predictedarray ([0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2]) >>> y_testarray ([0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2]) >>> mätvärden. accuracy_score (y_test, predicted) 1. 0 # 1. 0 är 100 procent noggrannhet >>> förutsagt == y_testarray ([True, True, True, True, True, True, True, True, True, True, True, True, True, True, True] = bool)

Så jämför den logistiska regressionsmodellen med parameter C = 150 jämfört med det? Tja, du kan inte slå 100 procent. Här är koden för att skapa och utvärdera den logistiska klassificeringen med C = 150: >>>> logClassifier_2 = linear_model. LogistiskRegression (C = 150, random_state = 111) >>> logClassifier_2. passform (X_train, y_train) >>> förutsagt = logClassifier_2. förutsäga (X_test) >>> mätvärden. accuracy_score (y_test, förutsagt) 0. 93333333333333335 >>> mätvärden. Confusion_matrix (y_test, predicted) array ([[5, 0, 0], [0, 2, 0], [0, 1, 7]])

Vi förväntade oss bättre, men det var faktiskt sämre. Det fanns ett fel i förutsägelserna. Resultatet är detsamma som för SVM-modellen (Support Vector Machine).

Här är den fullständiga listan över koden för att skapa och utvärdera en logistisk regressionsklassificeringsmodell med standardparametrarna: >>>> från sklearn. dataset import load_iris >>> från sklearn import linear_model >>> från sklearn import cross_validation >>> från sklearn import mätvärden >>> iris = load_iris () >>> X_train, X_test, y_train, y_test = cross_validation. train_test_split (iris. data, iris. target, test_size = 0. 10, random_state = 111) >>> logClassifier = linear_model. LogisticRegression (, random_state = 111) >>> logClassifier. passform (X_train, y_train) >>> predicted = logClassifier. förutsäga (X_test) >>> predictedarray ([0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2]) >>> y_testarray ([0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2]) >>> mätvärden. accuracy_score (y_test, predicted) 1. 0 # 1. 0 är 100 procent noggrannhet >>> förutsagt == y_testarray ([True, True, True, True, True, True, True, True, True, True, True, True, True, True, True] = bool)
Hur man skapar en övervakad lärande modell med logistisk regression - dummies

Redaktörens val

Hur man lägger till text i en sätter () Funktion i C Programmering

Hur man lägger till text i en sätter () Funktion i C Programmering

När du behöver visa en annan textrad, använd C-programmeringsfärdigheterna för att skapa en annan puts () -funktion i källkoden, som visas i Visa två textlinjer. VISA TILL TEXTFINER # inkludera int main () {sätter ("Hickory, Dickory, Dock,"); sätter ("musen sprang klockan."); returnera (0);} Den andra ...

Förklarar variabler i C-dummies

Förklarar variabler i C-dummies

Variabler är det som gör dina program zooma. Programmering kan bara inte bli gjort utan dem. Så om du inte har introducerats till variabler än, här går du. Valerie Variable är en numerisk variabel. Hon älskar att hålla nummer - vilket nummer som helst; det spelar ingen roll. När hon ser ett lika tecken tar hon ett värde och ...

Redaktörens val

Gör rädsla för din vän - dummies

Gör rädsla för din vän - dummies

Rädsla är lika verklig som mod. Även om värdet av rädsla inte är lika uppenbart som modets värde, har det dess fördelar. Rädsla är din instinkt som säger att du är obehaglig - även om situationen inte kommer att skada dig. Alla har haft den känslan när man hellre drar locket ...

Hur man ökar din självmedvetenhet - dummies

Hur man ökar din självmedvetenhet - dummies

Du kommer att vara med dig själv under en livstid. Ingenting kommer att förändra det faktum. Att lära känna, som att lyssna på och uppskatta själv är avgörande för din sanity. Kanske kommer du till att älska, acceptera och omfamna alla du är, är svår för dig att föreställa dig just nu, men du kan göra ...

Hur man ökar din mentala flexibilitet - dummies

Hur man ökar din mentala flexibilitet - dummies

ÄR flexibel i arbete och relationer är ett tecken på en högpresterande. Medan perfektionister är styva och obehagliga i sitt arbete och hur de interagerar med andra, är högpresterande mer öppna och tillmötesgående. Att vara mer flexibel på jobbet gav Ralph aldrig förslag under brainstorming vid gruppmöten. Han kände att hans lag ...

Redaktörens val

Nätverksadministration: Linux-installation och virtuella konsoler - dummies

Nätverksadministration: Linux-installation och virtuella konsoler - dummies

Linux är i sig ett kommandoradsorienterat operativsystem. Grafiska användargränssnitt - inklusive installationsprogrammets GUI - tillhandahålls av en valfri komponent som heter X Window System. Men medan du arbetar med det grafiska användargränssnittet för installationsprogrammet, håller Linux flera ytterligare kommandorads-konsoler öppna. Normalt behöver du inte ...

Nätverksadministration: Linux-loggning, logg och systemavstängning - dummies

Nätverksadministration: Linux-loggning, logg och systemavstängning - dummies

Alla användare som åtkomst ett Linux-system, lokalt eller över ett nätverk, måste verifieras av ett giltigt användarkonto på systemet. I det följande får du veta hur du loggar in och ut på ett Linux-system och hur du stänger av systemet. Logga in När Linux startar upp visas det ...

Nätverksadministration: Licensserver - Dummies

Nätverksadministration: Licensserver - Dummies

I vissa program kan du köpa nätverkslicenser som gör att du kan installera programvaran på många datorer som du vill, men reglera antalet personer som kan använda programvaran vid en viss tidpunkt. För att styra hur många som använder programvaran, är en särskild licensserver inrättad. När en användare börjar ...