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

Sammenligning af Hadoop-distributioner - dummier

Sammenligning af Hadoop-distributioner - dummier

Du vil opdage, at Hadoop-økosystemet har mange komponenter, som alle eksisterer som deres egne Apache projekter. Fordi Hadoop er vokset betydeligt og står over for nogle betydelige yderligere ændringer, er forskellige versioner af disse komponenter i open source-fællesskabet måske ikke fuldt kompatible med andre komponenter. Dette giver betydelige vanskeligheder for folk, der søger at få ...

Faktorer, der øger omfanget af statistisk analyse i Hadoop - dummies

Faktorer, der øger omfanget af statistisk analyse i Hadoop - dummies

Grunden til, at folk udprøver deres data før du kører statistisk analyse i Hadoop er, at denne form for analyse ofte kræver betydelige databehandlingsressourcer. Det handler ikke kun om datamængder: der er fem hovedfaktorer, der påvirker omfanget af statistisk analyse: Denne er let, men vi skal nævne det: mængden af ​​data på ...

Komprimering af data i Hadoop - dummies

Komprimering af data i Hadoop - dummies

Er de enorme datamængder, der er realiteter i en typisk Hadoop-implementering, en nødvendighed. Datakomprimering sparer helt sikkert en stor mængde lagerplads og er sikker på at fremskynde bevægelsen af ​​disse data i hele din klynge. Ikke overraskende er der en række tilgængelige komprimeringsordninger, kaldet codecs, derude for ...

Valg af editor

Hvordan man bruger Wordtracker Søgeordsværktøj - dummies

Hvordan man bruger Wordtracker Søgeordsværktøj - dummies

Wordracker er måske det mest populære kommercielle søgeordværktøj blandt seo fagfolk. Wordtracker har adgang til data fra et par store metakrawlere og en stor britisk internetudbyder. En metacrawler er et system, der søger flere søgemaskiner til dig. Skriv f.eks. Et ord i Dogpiles søgefelt, og systemet søger på Google, ...

Identificere mobile brugers søgemønstre for SEO - dummies

Identificere mobile brugers søgemønstre for SEO - dummies

I begyndelsen af ​​2014 Endelig skete: Internetbrug via mobile enheder oversteg faktisk desktop internetbrug i USA for første gang. Overveje det, alle har en smartphone i disse dage, og folk bruger i stigende grad disse handy-enheder, tabletter som iPad og det nye mellemstore sortiment af tabletter (overdimensionerede telefon-tablet-enheder) ...

Hvordan man bruger single page analyser til konkurrencedygtig seo forskning - dummies

Hvordan man bruger single page analyser til konkurrencedygtig seo forskning - dummies

Single Page Analyzer værktøj kan hjælpe dig med at forbedre dit websted til SEO. Det fortæller dig, hvad en websides søgeord er og beregner deres tæthed. Søgeordsdensitet er en procentdel, der angiver det antal gange søgeordet opstår i forhold til det samlede antal ord på siden. Når du kører en konkurrents side ...

Valg af editor

Sådan konstrueres en funktion i C Programmering - dummier

Sådan konstrueres en funktion i C Programmering - dummier

I C-programmering, alle funktioner kaldes med en navn, som skal være unikt ingen to funktioner kan have samme navn, og en funktion kan heller ikke have samme navn som et søgeord. Navnet efterfølges af parenteser, som derefter efterfølges af et sæt krøllede parenteser. Så i sin enkleste konstruktion, en ...

Sådan oprettes en ny kode:: Blokerer projekt i C-dummier

Sådan oprettes en ny kode:: Blokerer projekt i C-dummier

I C programmeringssprog, en konsol-applikation er en, der kører i tekst-tilstand i et terminalvindue. Selv om et integreret udviklingsmiljø er i stand til mere, er det den bedste måde at lære grundlæggende programmeringskoncepter på, uden at overvældende dig med et stort, komplekst grafisk dyr af et program. Sådan fungerer det: Start ...

Hvordan man viser tekst på skærmen i C med sætter () og printf () - Dummies

Hvordan man viser tekst på skærmen i C med sætter () og printf () - Dummies

De ting, som et C-program kan gøre, er ubegrænset, men når du først lærer sproget, skal du starte lille. En af de mest almindelige funktioner, du vil have dit C-program til at gøre, er at vise tekst på skærmen, og der er to måder at gøre: sætter () og printf (). sætter () Sætter sandsynligvis ...