Hjem Personlig finansiering Hvordan man opretter en overordnet læringsmodel med logistisk regression - dummier

Hvordan man opretter en overordnet læringsmodel med logistisk regression - dummier

Indholdsfortegnelse:

Video: The Third Industrial Revolution: A Radical New Sharing Economy 2025

Video: The Third Industrial Revolution: A Radical New Sharing Economy 2025
Anonim

Efter at du har opbygget din første klassifikation forudsigende model til analyse af dataene, skaber flere modeller som det en rigtig ligetil opgave i scikit. Den eneste reelle forskel fra den ene model til den næste er, at du måske må afstemme parametrene fra algoritme til algoritme.

Sådan indlæser du dine data

Denne kodeoversigt ilægger irisdatasættet i din session: >>>> fra sklearn. datasæt import load_iris >>> iris = load_iris ()

Sådan opretter du en forekomst af klassifikatoren

Følgende to linjer kode opretter en forekomst af klassifikatoren. Den første linje importerer logistikregressionsbiblioteket. Den anden linje skaber en forekomst af den logistiske regressionsalgoritme. >>>> fra sklearn import linear_model >>> logClassifier = linear_model. LogistiskRegression (C = 1, random_state = 111)

Bemærk parameteren (reguleringsparameter) i konstruktøren.

regulariseringsparameter

bruges til at forhindre overfitting. Parameteren er ikke strengt nødvendigt (konstruktøren vil fungere fint uden den, fordi den vil default til C = 1). Oprettelse af en logistisk regressions klassifikator ved hjælp af C = 150 skaber et bedre billede af beslutningens overflade. Du kan se begge punkter nedenfor.

Sådan kører du træningsdataene

Du skal opdele datasættet i trænings- og testsæt, før du kan oprette en forekomst af logistisk regressions klassifikator. Følgende kode vil udføre denne opgave: >>>> fra 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 importerer biblioteket, som giver dig mulighed for at opdele datasættet i to dele.

Linje 2 kalder funktionen fra biblioteket, der opdeler datasættet i to dele og tildeler de nu opdelte datasæt til to par variabler.

Linje 3 tager forekomsten af ​​den logistiske regressionsklassificator, du lige har oprettet, og kalder tilpasningsmetoden til at træne modellen med træningsdatasættet.

Sådan visualiserer du klassifikatoren

Når man ser på beslutningsoverfladen på plottet, ser det ud til, at nogle afstemninger skal gøres. Hvis du ser tæt på midten af ​​plottet, kan du se, at mange af de datapunkter, der tilhører det midterste område (Versicolor) ligger i området til højre side (Virginica).

Dette billede viser beslutningsoverfladen med en C-værdi på 150. Den ser visuelt bedre ud, så det er passende at vælge at bruge denne indstilling til din logistiske regressionsmodel.

Sådan køres testdataene

I den følgende kode indtaster første linje testdatasættet til modellen, og den tredje linje viser output: >>>> forudsagt = logClassifier. forudsige (X_test) >>> predictedarray ([0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2])

Hvordan evaluere modellen < Du kan krydshenvise output fra forudsigelsen mod y_test array. Som et resultat kan du se, at det forudsagde alle testdatapunkterne korrekt. Her er koden: >>>> fra sklearn importmålinger >>> 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ålinger. accuracy_score (y_test, forudsagt) 1. 0 # 1. 0 er 100 procent nøjagtighed >>> forudsagt == y_testarray ([True, True, True, True, True, True, True, True, True, True, True, True, True, True, True] = bool)

Så sammenligner den logistiske regressionsmodel med parameter C = 150 det? Nå, du kan ikke slå 100 procent. Her er koden til at oprette og evaluere den logistiske klassifikator med C = 150: >>>> logClassifier_2 = linear_model. LogistiskRegression (C = 150, random_state = 111) >>> logClassifier_2. fit (X_train, y_train) >>> forudsagt = logClassifier_2. forudsige (X_test) >>> målinger. accuracy_score (y_test, forudsagt) 0. 93333333333333335 >>> metrics. Confusion_matrix (y_test, forudsagt) array ([[5, 0, 0], [0, 2, 0], [0, 1, 7]])

Vi forventede bedre, men det var faktisk værre. Der var en fejl i forudsigelserne. Resultatet er det samme som for Support Vector Machine (SVM) modellen.

Her er den fulde liste over koden til at oprette og evaluere en logistisk regressionsklassifikationsmodel med standardparametrene: >>>> fra sklearn. datasæt import load_iris >>> fra sklearn import linear_model >>> fra sklearn import cross_validation >>> fra sklearn import målinger >>> 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. fit (X_train, y_train) >>> forudsagt = logClassifier. forudsige (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]) >>> metrics. accuracy_score (y_test, forudsagt) 1. 0 # 1. 0 er 100 procent nøjagtighed >>> forudsagt == y_testarray ([True, True, True, True, True, True, True, True, True, True, True, True, True, True, True] = bool)
Hvordan man opretter en overordnet læringsmodel med logistisk regression - dummier

Valg af editor

Fotografering af fugle Brug af dine digitale spejlreflekskameraer

Fotografering af fugle Brug af dine digitale spejlreflekskameraer

Du kan optage interessante billeder af fugle store og små med din digitale spejlreflekskamera . Du behøver bare lidt tålmodighed og lidt viden om den fugl, du vil fotografere. En fuglefoder er et ideelt sted at fotografere små fugle. Du kan rejse til et område med en sø eller flod eller til ...

Fotografering af byer med dine digitale spejlreflekskameraer

Fotografering af byer med dine digitale spejlreflekskameraer

Om du bor i en søvnig lille by eller en storby, der overfylder menneskeheden kan din digitale spejlreflekskamera fange hjertet og sjælen i din hjemby. Du kan eksperimentere med at tage billeder om natten, når byen er dramatisk eller øde eller om dagen, når beboerne og deres aktiviteter gør byen ...

Fotografering af objekter i bevægelse - dummier

Fotografering af objekter i bevægelse - dummier

Der er et par tankeskoler om fotografering af objekter i bevægelse. Opskriften på en perfekt eksponering kan opnås på mange måder. Du kan vælge en lille blænde (stort f-stopnummer) for at få en stor dybdeskarphed, eller du kan vælge en hurtig lukkerhastighed, hvilket betyder en stor blænde (lille ...

Valg af editor

Hvordan man fortjener mor fra blogging uden at sælge - dummier

Hvordan man fortjener mor fra blogging uden at sælge - dummier

Sælger er et udtryk, der anvendes til kompromittere din integritet, principper eller moral for at vinde penge eller succes. Problemet er, at hvis alle havde de samme principper og definition af integritet, ville der ikke være meget behov for forskellige politiske partier eller religioner. Folk kan anklaget for at sælge ud, hvis de simpelthen gør ting som ...

Hvordan man korrekt bruger nøgleord til din online community - dummies

Hvordan man korrekt bruger nøgleord til din online community - dummies

Når du har en god ide om hvilke typer søgeord der skal bruges i dit online-fællesskab, er det tid til at skrive indholdet, så det ser naturligt ud. For mange mennesker peber søgeord liberalt omkring deres blogindlæg, web artikler, Om sider og andet indhold, som ser dumt og forkert ud. Selvom du bruger nøgleord, er det godt ...

Sådan sættes annoncer på din blog - dummies

Sådan sættes annoncer på din blog - dummies

For at få annoncer på din blogwebsite, de programmer du tilmelde dig normalt give dig en smule kode, som du indsætter i din hjemmeside skabeloner. Nogle programmer har trinvise instruktioner til populære blogsoftwarepakker, men vær opmærksom på at du måske også har brug for at konsultere dokumentation til blogsoftware til hjælp med ...

Valg af editor

Ompirrende Signaler og hvad de betyder i Cricket - Dummies

Ompirrende Signaler og hvad de betyder i Cricket - Dummies

Embedsmændene med ansvar for et cricketpil er kaldet umpires, og de har en lang række signaler til at angive de beslutninger, de træffer i løbet af et spil. Disse er de vigtigste. Højre arm udstrakte. No-bold. Dette signal indikerer, at bowlerens fod har landet over frontlinjen af ​​...

Vælg en Tennis Racquet - Dummies

Vælg en Tennis Racquet - Dummies

Ja, du kan støv af den racquet, du spillede for fem år siden og give det en strålende tilbagevenden til retten - hvis det føles godt i din hånd og det får dine skud hvor (og hvordan) vil du have dem til at gå. Hvis du er på markedet for et nyt våben, vil du dog ...

Skæring og dicing, tennis stil - dummies

Skæring og dicing, tennis stil - dummies

Skive eller backspin, får tennisbolden til at vende tilbage mod effektkilde (dig). Når et stykke skud springer, forbliver bolden lavt, hvilket tvinger din modstander til virkelig at strække for at komme til bolden. Hvis spillere gerne angriber nettet og volley, skar de meget. Skiven kan være en nyttig ...