[PYTHON] Memo zum Kurs für maschinelles Lernen
Einleitung [P01]
Was ist maschinelles Lernen?
Technischer Forschungsbereich, damit die Maschine selbst das Verhalten aus den Daten lernen kann
-
Überwachtes Lernen
Lernen Sie die Beziehung zwischen dem verursachenden System X und dem Ergebnis y
-
Unbeaufsichtigtes Lernen
Erfassen Sie Datenmuster und neue Ausdrucksformen
Visualisierung von Datenmustern
Wird wie oben beurteilt, wenn keine der oben genannten Bedingungen zutrifft (Erkennung von Anomalien).
-
Verbessertes Lernen
Ziel ist es, Aktionsregeln zu erhalten, die die Belohnungen maximieren
Unterschied zwischen Deep Learning und traditionellem maschinellem Lernen
Das Feature Quantity Engineering wurde von der Algorithmus-Seite übernommen
Welle der Demokratie
-
DataRobot
https://www.datarobot.com/jp/
-
Amazon SageMaker
https://aws.amazon.com/jp/sagemaker/
-
Featuretools | An open source framework for automated feature engineering Quick Start
https://www.featuretools.com/
-
Was mit Pandas zu verwenden
-
dataframe, series
-
join, merge
-
iloc,loc
-
map, apply, applymap
(2)
Theorem zum kostenlosen Mittagessen
Der optimale Algorithmus hängt von den Daten ab
Strafzeit = Schaden
PCA: Hauptkomponente? ??
Im Algorithmus
Regularisierung: Holdout
Vor dem Algorithmus
Dimensionsreduzierung (Merkmalsextraktion, Merkmalsauswahl)
Nach dem Algorithmus
Crossover-Überprüfung: kfold
StandardScaler()
Subtrahieren Sie den Mittelwert und dividieren Sie durch die Standardabweichung
from sklearn.model_selection import cross_val_score, KFold
# build models
kf = KFold(n_splits=3, shuffle=True, random_state=0)
for pipe_name, est in pipelines.items():
cv_results = cross_val_score(est,
X, y,
cv=kf,
scoring='r2')
print('----------')
print('algorithm:', pipe_name)
print('cv_results:', cv_results)
print('avg +- std_dev', cv_results.mean(),'+-', cv_results.std())
Lernen mit dem Lehrer (Rückkehr) [P02]
- Regression: Kontinuierliche Menge korrekter Antwortdaten
- Klassifizierung: Richtige Antwortdaten sind binär
Phase
- Modellierungsphase
- Bewertungsphase
Erhöhung der Generalisierungsfähigkeit
- Datenmenge
- Feature-Design, das Geschäftswissen widerspiegelt
- Datenvorverarbeitung und Algorithmusbewertung
Regressionsalgorithmus
- Minimale quadratische Regression
- Ridge-Regression: L2-Regularisierungsterm einfügen
Wenn der Regularisierungsparameter groß ist, nähert sich der Regressionskoeffizient 0.
Umgang mit Überlernen
- Regulierung
- L1-Regularisierung (Lasso-Regression): Sparse (Feature-Auswahl)
- L2-Regularisierung (Ridge-Regression): Analytische Lösung
- Dimensionsreduzierung (Merkmalsextraktion)
- Dimensionsreduzierung (Funktionsauswahl)
- Holdout / Crossover-Überprüfung
- Holdout-Methode
- k-fold(Cross validation)
Algorithmus
- Entscheidungsbaum
- Zufälliger Wald
- Gradientenverstärkung
Bewertung des Regressionsmodells
- Absoluter Durchschnittsfehler (MAE): Der Durchschnitt der Absolutwerte der Differenz zwischen dem gemessenen Wert und dem vorhergesagten Wert.
- Durchschnittlicher quadratischer Fehler (MSE): Durchschnitt des quadratischen Wertes der Differenz zwischen dem gemessenen Wert und dem vorhergesagten Wert
- Zentraler absoluter Fehler: Der Medianwert des Absolutwerts der Differenz zwischen dem gemessenen Wert und dem vorhergesagten Wert
Weniger anfällig für Ausreißer
- R2-Wert: 1,0 mit 0 Fehler, 0,0 mit Durchschnittswert-Vorhersageäquivalent. Schlecht und negativ
Lernen mit dem Lehrer (Klassifizierung) [P03]
Klassifizierungsalgorithmus
- K-Nächste Nachbarn
- Logistische Regression
- Höchstwahrscheinlich Methode
- neurales Netzwerk
- Formale Neuronen
- Einfaches Perceptron: Gewichtslernen hinzugefügt
→ Lineare untrennbare Probleme können nicht gelöst werden
- Mehrschichtiges Perceptron: Fügen Sie eine Zwischenebene zwischen der Eingabeebene und der Ausgabeebene ein
Gewichtslernen durch Fehlerrückausbreitungsmethode
- Support Vector Machine (SVM)
Bewertungsmethode des Klassifizierungsmodells
- Verwirrung Matrix
- Falsch negativ (FN): P wird fälschlicherweise als N beurteilt
- Falsch positiv (FP): N wird fälschlicherweise als P beurteilt
- Genauigkeit: Prozentsatz der richtigen Antworten (TP + TN / ALL)
- Präzision: Richtige Antwortrate positiv (TP / TP + FP)
- Rückrufrate: Richtige Antwortrate ((TP / TP + FN))
- AUC-ROC
- F-Wert (F-Maß): Harmonisierter Durchschnitt von Präzision und Rückruf
Datenvorverarbeitung und Dimensionsreduzierung [P04]
Datenvorverarbeitung
- One-Hot-Codierung
- Fehlende Wertvervollständigung
- Standardisierung
- Ersetzen Sie Datum und Uhrzeit durch die verstrichene Zeit
Dimensionsreduzierung
- Dimensionsfluch: Der Generalisierungsfehler nimmt mit zunehmender Anzahl von Dimensionen zu.
- Funktionsauswahl: Wählen Sie wichtige Variablen aus
- Regelauswahl: Fehlend, verteilt
- Auswahl nach Basisstatistik: Auswahl nach Klassifikation und Regression
- Modellauswahl (RFE):
from sklearn.feature_selection import RFE
selector = RFE(RandomForestRegressor(n_estimators=100, random_state=42), n_features_to_select=5)
- Merkmalsextraktion: Löschen Sie die Dimension der Merkmalsmenge vor der Eingabe
- PCA (Hauptkomponentenanalyse)
Lernen ohne Lehrer [P06]
Clustering
Sammeln Sie Daten mit hoher Ähnlichkeit aus Daten, die keine richtige Antwort haben
k-means
-
Clustering: unbeaufsichtigtes Lernen
-
Rückkehr, Klassifizierung: Betreutes Lernen
-
K-Mittel
Stellen Sie den Schwerpunkt nach dem Zufallsprinzip ein, gruppieren Sie sich und wiederholen Sie das Zurücksetzen des Schwerpunkts
Beurteilung, dass die Ähnlichkeit hoch ist, wenn der Abstand zwischen den Proben groß ist
-
DBSCAN
Klassifiziert in Kernpunkte, Grenzpunkte und Rauschpunkte. Cluster schließen Kerne und Grenzpunkte gruppieren sich zu nahe gelegenen Kernpunkten
Eine höhere Dichte zwischen den Proben wird als ähnlicher beurteilt
-
Dimensionsreduzierung
-
Hauptkomponentenanalyse
Lernen ohne Lehrer von Grund auf neu! Lernen Sie ganz einfach die Grundlagen der Hauptkomponentenanalyse / PCA | AIZINE
https://aizine.ai/unsupervised-learning0531/
-
Hard Clustering: Ordnen Sie einem Cluster ein Sample zu
-
Soft Clustering: Ordnen Sie jedes Sample mehreren Clustern zu
Geplant, hinzugefügt zu werden
- Logistische Regression
- Ridge-Regression / Lasso-Regression
- Restfehler
- Regressionskoeffizienten
- ROC-Kurve
- Ensemble lernen