Huis Persoonlijke financiën Hoe maak je een begeleid leermodel met logistische regressie - dummies

Hoe maak je een begeleid leermodel met logistische regressie - dummies

Inhoudsopgave:

Video: Hoe wordt geld vernietigd? | Doen ze dat zo | Het Klokhuis 2024

Video: Hoe wordt geld vernietigd? | Doen ze dat zo | Het Klokhuis 2024
Anonim

Nadat u uw eerste classificatie voorspellingsmodel voor de analyse van de gegevens hebt gebouwd, creëert u meer modellen alsof het een echt eenvoudige taak is in Scikit. Het enige echte verschil tussen het ene model en het volgende is dat u de parameters mogelijk van algoritme naar algoritme moet afstemmen.

Hoe uw gegevens te laden

Deze codelijst laadt de irisgegevensreeks in uw sessie: >>>> van sklearn. datasets import load_iris >>> iris = load_iris ()

Hoe maak ik een exemplaar van de classifier

De volgende twee regels code maken een instantie van de classifier. De eerste regel importeert de logistische regressiebibliotheek. De tweede regel maakt een instantie van het logistische regressie-algoritme. >>>> van sklearn import linear_model >>> logClassifier = linear_model. LogisticRegression (C = 1, random_state = 111)

Let op de parameter (regularisatieparameter) in de constructor. De

regularisatieparameter

wordt gebruikt om overfitting te voorkomen. De parameter is niet strikt noodzakelijk (de constructor werkt prima zonder deze, omdat hij standaard op C = 1 staat). Het creëren van een logistische regressieclassificator met C = 150 zorgt voor een betere weergave van het beslissingsoppervlak. Je kunt beide grafieken hieronder bekijken.

De trainingsgegevens uitvoeren

U moet de gegevensset splitsen in trainings- en testsets voordat u een instantie van de logistische regressieclassificator kunt maken. De volgende code zal die taak volbrengen: >>>> van 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)

Lijn 1 importeert de bibliotheek waarmee u de gegevensset in twee delen kunt splitsen.

Lijn 2 roept de functie op uit de bibliotheek die de gegevensset in twee delen splitst en wijst de nu verdeelde gegevensreeksen toe aan twee paren variabelen.

Regel 3 neemt het voorbeeld van de logistische regressieklasseerder die u zojuist hebt gemaakt en roept de fitmethode aan om het model te trainen met de trainingsgegevensset.

Hoe de classificator te visualiseren

Kijkend naar het beslissingsoppervlak op de plot, lijkt het of er iets moet worden afgesteld. Als u in het midden van de plot kijkt, kunt u zien dat veel van de gegevenspunten behorende bij het middelste gebied (Versicolor) in het gebied aan de rechterkant liggen (Virginica).

Deze afbeelding toont het beslissingsoppervlak met een C-waarde van 150. Het ziet er visueel beter uit, dus deze instelling voor uw logistische regressiemodel lijkt aangewezen.

Hoe de testgegevens uit te voeren

In de volgende code voert de eerste regel de testgegevensreeks naar het model en de derde regel geeft de uitvoer weer: >>>> voorspeld = logClassifier. voorspellen (X_test) >>> predictedarray ([0, 0, 2, 2, 1, 0, 0, 2, 1, 2, 0, 2, 2, 2])

Hoe het model te evalueren < U kunt de uitvoer van de voorspelling met de y_test-array vergelijken. Als gevolg hiervan kunt u zien dat alle voorspellingsgegevens correct zijn voorspeld. Hier is de code: >>>> van sklearn import-statistieken >>> 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]) >>> statistieken. accuracy_score (y_test, voorspeld) 1. 0 # 1. 0 is 100% nauwkeurigheid >>> voorspeld == y_testarray ([Waar, Waar, Waar, Waar, Waar, Waar, Waar, Waar, Waar, Waar, Waar, Waar, Waar, Waar, Waar], dtype = bool)

Dus hoe verhoudt het logistische regressiemodel met parameter C = 150 zich daarmee? Nou, je kunt niet 100% verslaan. Hier is de code om de logistieke classificator te maken en te evalueren met C = 150: >>>> logClassifier_2 = linear_model. LogisticRegression (C = 150, random_state = 111) >>> logClassifier_2. fit (X_train, y_train) >>> voorspeld = logClassifier_2. voorspellen (X_test) >>> statistieken. accuracy_score (y_test, voorspeld) 0. 93333333333333335 >>> statistieken. confusion_matrix (y_test, voorspeld) array ([[5, 0, 0], [0, 2, 0], [0, 1, 7]])

We hadden beter verwacht, maar het was eigenlijk nog erger. Er was één fout in de voorspellingen. Het resultaat is hetzelfde als dat van het SVM-model (Support Vector Machine).

Hier volgt de volledige lijst van de code om een ​​logistisch regressieclassificatiemodel met de standaardparameters te maken en te evalueren: >>>> van sklearn. datasets importeren load_iris >>> uit sklearn importeren linear_model >>> uit sklearn import cross_validation >>> uit sklearn import-statistieken >>> 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) >>> voorspeld = logClassifier. voorspellen (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, voorspeld) 1. 0 # 1. 0 is 100% nauwkeurigheid >>> voorspeld == y_testarray ([Waar, Waar, Waar, Waar, Waar, Waar, Waar, Waar, Waar, Waar, Waar, Waar, Waar, Waar, Waar], dtype = bool)
Hoe maak je een begeleid leermodel met logistische regressie - dummies

Bewerkers keuze

Hoe u uw LinkedIn-profiel kunt vermarkten voor de markt - dummies

Hoe u uw LinkedIn-profiel kunt vermarkten voor de markt - dummies

Wanneer het komt om het voordeel dat u van LinkedIn krijgt te maximaliseren, bent u uw grootste pleitbezorger. Hoewel je netwerk van connecties je helpt te groeien, gebeurt veel van je marketing zonder dat je erbij betrokken bent. Nadat je je profiel hebt aangemaakt, worden die en andere LinkedIn-activiteit van je gelezen en beoordeeld door de ...

Hoe u uw LinkedIn-netwerk kunt bouwen voordat u naar een nieuwe stad gaat - dummies

Hoe u uw LinkedIn-netwerk kunt bouwen voordat u naar een nieuwe stad gaat - dummies

Deze dagen, wanneer u naar een nieuwe stad moet verhuizen, kunt u er veel plannen voor maken op LinkedIn en op internet. Je kunt de buurten onderzoeken, de schoolsystemen bekijken en online naar huizen gaan. Je kunt een stap verder gaan als je van plan bent om naar een andere ...

Hoe u uw LinkedIn-contactinstellingen controleert - dummies

Hoe u uw LinkedIn-contactinstellingen controleert - dummies

U zeker wilt dat u de juiste instellingen selecteert contactinstellingen voor uw LinkedIn-profiel. Als u bijvoorbeeld op zoek bent naar een nieuwe baan, wilt u er zeker van zijn dat de optie voor Carrièremogelijkheden is gecontroleerd. Wanneer u klaar bent om uw contactinstellingen te controleren, volgt u deze stappen: Ga naar ...

Bewerkers keuze

Canon EOS Rebel XS / 1000D voor Dummy's Cheat Sheet - dummies

Canon EOS Rebel XS / 1000D voor Dummy's Cheat Sheet - dummies

Uw Canon EOS Rebel XS / 1000D heeft alle functies die u kunt gebruiken om fantastische foto's te maken. Je moet de beeldmodus instellen op het onderwerp van je foto en de Canon EOS Rebel XS / 1000D laat je volledig of gedeeltelijk automatisch gaan met de belichtingsinstellingen.

Canon Rebel T3-serie camera's: Live-modus Autofocus in Live View - dummies

Canon Rebel T3-serie camera's: Live-modus Autofocus in Live View - dummies

Live-modus Met autofocus kunt u de focus instellen op uw Canon EOS Rebel T3 of T3i zonder tijdelijk het voorbeeld van de monitor te verliezen. Bovendien, in plaats van het selecteren van negen autofocuspunten, verplaatst u eenvoudig een enkel scherpstelpunt over uw onderwerp. Aan de andere kant is de autofocus van de Live-modus merkbaar langzamer dan in de Quick-modus, en ...

Bewerkers keuze

Wijzigt Hoe tekstgrootte te wijzigen in Word 2016 - dummies

Wijzigt Hoe tekstgrootte te wijzigen in Word 2016 - dummies

Tekstgrootte wordt ingesteld in uw Word 2016 document gebaseerd over de meting van de oude letterzetter, ook wel punten genoemd. Hier zijn enkele aandachtspunten waarmee u rekening moet houden bij het opmaken van tekst in Word: hoe groter de puntgrootte, hoe groter de tekst. De meeste gedrukte tekst is 10 of 12 punten lang. Koppen zijn meestal 14 ...

Grammatica controleren in Word 2007 - dummies

Grammatica controleren in Word 2007 - dummies

Naast het controleren op correcte spelling, kunt u met Word 2007 ook om uw documenten te bewijzen om grammaticale fouten te voorkomen. U kunt de grammaticasuggesties van Word bekijken terwijl u door het document bladert, of u kunt een traditionele spellingcontrole uitvoeren. Word biedt u zelfs de kans om de gemarkeerde fout te onderzoeken en meer te leren van ...

Spelling controleren terwijl u typt in Word 2013 - dummies

Spelling controleren terwijl u typt in Word 2013 - dummies

Woord 2013 heeft een interne bibliotheek vol met ontelbare woorden, allemaal correct gespeld. Telkens wanneer u een woord typt, wordt het vergeleken met dat woordenboek. Wanneer het woord niet wordt gevonden, wordt dit als verdacht gemarkeerd in uw document. Het merk is een rode zigzaglijn. Mijn advies: blijf typen. Laat de "rode zigzag van een ...