Lernrekord (14. Tag)
Beginn des Studiums: Samstag, 7. Dezember
Unterrichtsmaterialien usw.:
・ Miyuki Oshige "Details! Python3 Introductory Note ”(Sotech, 2017): 19.12. (Donnerstag) Abgeschlossen
・ Progate Python-Kurs (insgesamt 5 Kurse): Endet am Samstag, den 21. Dezember
・ ** Andreas C. Müller, Sarah Guido "(japanischer Titel) Maschinelles Lernen ab Python" (O'Reilly Japan, 2017) **: Abgeschlossen am Samstag, 23. Dezember
Kapitel 3 Unüberwachtes Lernen und Vorverarbeiten
Unüberwachte Transformation: Erstellt eine verständlichere Datendarstellung für Menschen und andere Algorithmen für maschinelles Lernen. Am häufigsten ist die Dimensionsreduzierung. Oder Themenextraktion aus einer Reihe von Dokumentdaten. Letzteres ist nützlich für die Analyse von Themen in sozialen Medien.
• Clustering-Algorithmen: Teilen Sie Daten in Gruppen ähnlicher Elemente auf. Es ist ein Mechanismus zum Trennen von Fotos auf SNS-Websites nach Personen anwendbar.
・ Nur so kann die Bedeutung von Daten ermittelt werden, wenn keine Lehrerinformationen vorhanden sind.
Schwierigkeiten beim Lernen ohne Lehrer
・ Da unbeaufsichtigtes Lernen Daten enthält, die keine Etiketteninformationen enthalten, müssen Menschen die Ergebnisse häufig bestätigen, um die Ergebnisse bewerten zu können.
-Daher wird es oft explorativ verwendet, um die Daten besser zu verstehen.
Vorverarbeitung und Skalenkonvertierung
・ Neuronale Netze und SVMs für überwachtes Lernen reagieren sehr empfindlich auf Skalenumwandlung.
-Standard Scaler: Konvertiert so, dass der Durchschnitt der Features 0 und die Varianz 1 beträgt.
Robuster Skalierer: Verwendet Median und Quadranten anstelle der mittleren Varianz. Ignoriere den Outliner.
-MinMax Scaler: Konvertiert Daten so, dass sie zwischen 0 und 1 liegen.
-Normalizer: Projiziert Datenpunkte auf einen Kreis mit einem Radius von 1. Es wird verwendet, wenn nur die Richtung oder der Winkel und nicht die Länge des Merkmalsvektors von Bedeutung sind.
-Konvertieren Sie den Testsatz und den Trainingssatz auf die gleiche Weise.
・ Lernen und berechnen Sie die Ergebnisse nach der Vorverarbeitung.
Dimensionsdrama, Merkmalsextraktion, Varietélernen
・ Motivation: Visualisierung, Datenkomprimierung, Ermittlung von Ausdrücken, die für die nachfolgende Verarbeitung geeignet sind usw.
Hauptkomponentenanalyse (PCA)
Der am häufigsten verwendete Algorithmus für alle oben genannten Motive
・ Eine Methode zum Drehen von Merkmalsgrößen, damit sie statistisch nicht miteinander in Beziehung stehen.
・ Setzen Sie die Verteilung mit Standard Scaler → PCA anwenden auf 1
・ Erläuterung der Merkmalsextraktion mit beschrifteten Flächen in freier Wildbahn
Nicht negative Matrixfaktorisierung (NMF)
・ Unüberwachtes Lernen zum Extrahieren nützlicher Funktionen ähnlich wie bei PCA
Diese Methode zum Zerlegen von Daten in nicht negativ gewichtete Summen ist besonders effektiv für Daten, die durch Überlagerung von Daten aus mehreren unabhängigen Quellen erstellt werden, z. B. Sprachdaten, die von mehreren Personen gesprochen werden.
t-SNE-Algorithmus
-Es wird als vielfältige Lernalgorithmen bezeichnet.
- Obwohl eine gute Visualisierung erzielt und eine komplizierte Zuordnung durchgeführt werden kann, können neue Daten nicht konvertiert werden und nur die für das Training verwendeten Daten können konvertiert werden.
Obwohl es für die explorative Datenanalyse nützlich ist, wird es selten verwendet, wenn das Endziel das überwachte Lernen ist.
Clustering
- Teilen Sie den Datensatz in Gruppen auf, die als Cluster bezeichnet werden.
k-bedeutet Clustering
Der einfachste und am weitesten verbreitete Clustering-Algorithmus
-Finden Sie einen Cluster-Schwerpunkt, der einen Bereich mit Daten darstellt, und weisen Sie Datenpunkte zu. Setzen Sie dann den Schwerpunkt jedes Clusters weiter auf den Durchschnitt der Datenpunkte. Dies wird wiederholt und der Algorithmus endet, wenn keine Änderung vorliegt.
- Da die geteilten Daten wie oben beschrieben nicht beschriftet sind, kann der Algorithmus nur erkennen, dass ähnliche Bilder für die angegebene Anzahl von Clustern in einer Reihe angeordnet sind.
・ Vektorquantisierung
Agglomerative Clusterbildung
- Starten Sie jeden Datenpunkt als einzelnen Cluster, führen Sie ähnliche Cluster zusammen und wiederholen Sie den Vorgang, bis die angegebene Anzahl von Clustern erreicht ist.
-Scikit-learn hat drei Implementierungen: Ward, Average und Complete, aber Ward ist normalerweise ausreichend.
-Kann mit einem Dendrogramm visualisiert werden. Kann mit SciPy gezeichnet werden.
DBSCAN (Spatial Clustering mit Rauschen basierend auf der Dichte)
・ Abkürzung für dichtebasierte räumliche Clusterbildung von Anwendungen mit Rauschen
-Finden Sie Punkte in Bereichen mit hoher Dichte im Feature-Space.
- Seien Sie vorsichtig beim Umgang mit den erhaltenen Clustering-Ergebnissen, da dabei Rauschen entsteht.
Kapitel 4 Datendarstellung und Feature Engineering
- Die Suche nach der besten Datendarstellung für eine bestimmte Anwendung wird als Feature-Quantity-Engineering bezeichnet.
-Welche Funktionen verwendet werden und ob sie nach Bedarf hinzugefügt oder kombiniert werden, sind die wichtigsten Faktoren, die den Erfolg von Anwendungen für maschinelles Lernen bestimmen.
One-Hot-Codierung
- Wird manchmal als Dummy-Variable bezeichnet. Ersetzen Sie kategoriale Variablen durch neue Features mit einem oder mehreren 0- und 1-Werten. Konvertieren Sie in ein Formular, mit dem Scikit-Learn umgehen kann.
Binning, Diskretisierung
- Machen Sie das lineare Modell für kontinuierliche Daten leistungsfähiger.
Interaktionsmerkmal und Polynommerkmal
-Effektiv für lineare Modelle, kombiniert Originalmerkmale.
Kapitel 5 Modellbewertung und -verbesserung
-Kreuzvalidierung: Die Daten werden für jedes k (ungefähr 5-10) gefaltet und als Trainingssatz und Testsatz verwendet. Es gibt Shuffle-Divisionen und gruppierte Divisionen.
• Rastersuche: Überprüfen Sie alle Parameterkombinationen.
・ Wenn wir tatsächlich maschinelles Lernen verwenden, sind wir nicht nur an genauen Vorhersagen interessiert, sondern verwenden diese Vorhersagen häufig bei größeren Entscheidungen.
Es ist notwendig, das Modell im Standard mit einem anderen Modell zu vergleichen und die geschäftlichen Auswirkungen sorgfältig zu berücksichtigen.
-Threshold: Ein Schwellenwert.
Kapitel 6 Algorithmuskette und Pipeline
- Mehrere Verarbeitungsschritte können in der Pipeline-Klasse zu einem Schätzer zusammengefügt werden.
-Maschinenlern-Apps in der realen Welt verwenden selten ein unabhängiges Modell allein. Durch Kleben mit dem Pipeline-Modell können Sie Fehler reduzieren, z. B. das Vergessen, die Transformation anzuwenden, oder einen Fehler in der Reihenfolge machen.
Kapitel 7 Verarbeitung von Textdaten
・ Verarbeitung natürlicher Sprache (NLP), Informationsabruf (IR)
-Der Datensatz in der Textanalyse wird als Korpus bezeichnet, und die einzelnen Datenpunkte, die als ein Text ausgedrückt werden, werden als Dokument bezeichnet.
- Da die Textdaten nicht wie sie sind auf maschinelles Lernen angewendet werden können, müssen sie in einen numerischen Ausdruck konvertiert werden, der den Algorithmus verarbeiten kann.
Der einfachste, effizienteste und am weitesten verbreitete Ausdruck ist der BoW-Ausdruck (Bag-of-Words). Verwerfen Sie die Struktur und zählen Sie nur die Anzahl der angezeigten Wörter.
・ 3 Schritte zur Berechnung der BoW-Darstellung
(1) Tokenisierung: Teilen Sie jeden Satz in Wörter ein, indem Sie Leerzeichen und Satzzeichen als Richtlinie verwenden.
(2) Wortschatzbildung: Wörter, die in allen Sätzen vorkommen, werden als Wortschatz gesammelt und nummeriert. (Zum Beispiel in alphabetischer Reihenfolge)
(3) codieren: Zählen Sie die Anzahl der angezeigten Vokabeln.
-Kann mit spärlicher Matrix, komprimierter m .: CSR (komprimierte spärliche Matrix) und SciPy verwendet werden.
-Tf-idf (Begriff Frequenz-inverse Dokumenthäufigkeit): Eine Methode zum Skalieren gemäß dem Gewicht der Merkmalsmengeninformationen, anstatt die Merkmalsmenge zu löschen, die wie eine Stoppliste unbedeutend zu sein scheint.
・ BoW-Problem → Da die Reihenfolge verloren geht, haben einige Sätze mit entgegengesetzter Bedeutung genau die gleiche Bedeutung. (Es ist schlecht, überhaupt nicht gut und es ist gut, überhaupt nicht schlecht usw.)
Es kann jedoch vermieden werden, indem das Token als zwei oder drei aufeinanderfolgende Token anstelle eines einzelnen Tokens behandelt wird. Sie werden Bigram bzw. Trigramm genannt. Die Schwierigkeit besteht darin, dass die Anzahl der Funktionen dramatisch zunimmt.
In den meisten Fällen ist es besser, die Mindestlänge auf 1 zu setzen, da oft nur ein Wort eine erhebliche Bedeutung hat.
-Wortstammverarbeitung (Stemming) und Headwordization (Lemmatization) sind eine der Normalisierung.
"(Japanischer Titel) Maschinelles Lernen beginnend mit Python" lesen