Kurz gesagt, die logistische Regression hat probabilistische Konnotationen, die über die Verwendung von Klassifikatoren in ML hinausgehen. Ich habe einige Hinweise auf die logistische Regression hier .
Die Hypothese der logistischen Regression liefert ein Maß für die Unsicherheit beim Auftreten eines binären Ergebnisses auf der Grundlage eines linearen Modells. Der Ausgang wird begrenzt asymptotisch zwischen und , und ist abhängig von einem linearen Modell, so dass , wenn die zugrunde liegende Regressionslinie Wert , die logistische Gleichung , Bereitstellen ein natürlicher Grenzpunkt für Klassifizierungszwecke. Es ist jedoch auf Kosten des Wegwerfens der Wahrscheinlichkeitsinformation im tatsächlichen Ergebnis von , was häufig interessant ist (z. B. Wahrscheinlichkeit eines Kreditausfalls bei gegebenem Einkommen, Kredit-Score, Alter usw.).1 0 0,5 = e 0010 h(ΘTx)=e Θ T x0.5=e01+e0h(ΘTx)=eΘTx1+eΘTx
Der Perzeptron-Klassifizierungsalgorithmus ist ein grundlegenderes Verfahren, das auf Punktprodukten zwischen Beispielen und Gewichten basiert . Wenn ein Beispiel falsch klassifiziert wird, stimmt das Vorzeichen des Skalarprodukts nicht mit dem Klassifizierungswert ( und ) im Trainingssatz überein. Um dies zu korrigieren, wird der Beispielvektor iterativ zum Vektor der Gewichte oder Koeffizienten addiert oder von diesem subtrahiert, wobei seine Elemente schrittweise aktualisiert werden:1−11
Vektoriell sind die Merkmale oder Attribute eines Beispiels , und die Idee ist, das Beispiel zu "bestehen", wenn:xdx
∑1dθixi>theshold oder ...
1 - 1 0 1h(x)=sign(∑1dθixi−theshold) . Die Vorzeichenfunktion ergibt oder im Gegensatz zu und bei der logistischen Regression.1−101
Die Schwelle wird in den Bias- Koeffizienten . Die Formel lautet jetzt:+θ0
h(x)=sign(∑0dθixi) oder vektorisiert: .h(x)=sign(θTx)
Falsch klassifizierte Punkte haben , was bedeutet, dass das Skalarprodukt von und positiv ist (Vektoren in derselben Richtung), wenn negativ ist. oder das Skalarprodukt ist negativ (Vektoren in entgegengesetzte Richtungen), während positiv ist.sign(θTx)≠ynΘxnynyn
Ich habe an den Unterschieden zwischen diesen beiden Methoden in einem Datensatz aus demselben Kurs gearbeitet , in dem die Testergebnisse in zwei separaten Prüfungen mit der endgültigen Zulassung zum College zusammenhängen:
Die Entscheidungsgrenze kann mit logistischer Regression leicht gefunden werden, aber es war interessant zu sehen, dass die mit Perceptron erhaltenen Koeffizienten sich stark von der logistischen Regression unterschieden, die einfache Anwendung der Funktion auf die Ergebnisse jedoch ergab ebenso gut ein Klassifizierungsalgorithmus. Tatsächlich wurde die maximale Genauigkeit (die durch die lineare Untrennbarkeit einiger Beispiele festgelegte Grenze) durch die zweite Iteration erreicht. Hier ist die Folge von Grenzunterteilungslinien, wobei Iterationen die Gewichte ausgehend von einem zufälligen Koeffizientenvektor angenähert haben:sign(⋅)10
Die Genauigkeit der Klassifizierung in Abhängigkeit von der Anzahl der Iterationen steigt schnell an und liegt auf einem Plateau von . Dies stimmt überein, wie schnell eine nahezu optimale Entscheidungsgrenze im obigen Videoclip erreicht wird. Hier ist die Darstellung der Lernkurve:90%
Der verwendete Code ist hier .