feature: add more L3 theory notes
This commit is contained in:
@@ -179,3 +179,189 @@
|
||||
```python
|
||||
new_names = old_names.str.replace('[^a-zA-Z0-9_]', '_', regex=True)
|
||||
```
|
||||
|
||||
## Dekomposition
|
||||
|
||||
- Informatik: Kernmethode um grosse Probleme in kleine, handhabbare Teilaufgaben aufzuteilen
|
||||
- Wirtschaft und Mathematik: Analyse von Daten und Prozesse in einzelne Komponenten aufteilen, Trends, Zeitreihenanalyse und Restrauschen
|
||||
- In der Datenanalyse:
|
||||
- Saisonbereinigung vs. Trend
|
||||
- Prognose/Forecasting -> Aus Trend und Saisonalität kann Zukunft abgeleitet werden
|
||||
- Fehleranalyse -> Ist das "Restrauschen" normal oder hat es plötzliche Ausschläge?
|
||||
|
||||
### Beispiel: Eisverkauf
|
||||
|
||||
- Saisonalität ist eindeutig
|
||||
- Wird die Saisonalität herausgerechnet, sieht man den Trend
|
||||
- Zufälle: Bspw Firmenfeier oder Schulabschluss
|
||||
|
||||
## Merkmals-Dekomposition
|
||||
|
||||
- Standardverfahren zur Dimensionsreduktion
|
||||
- Viele Features können zu wenigen aussagekräftigen Hauptfaktoren zusammengelegt werden
|
||||
- Die wichtigsten Algorithmen
|
||||
- PCA (principlan component analysis)
|
||||
- Sucht nach den Richtungen (Achsen) in denen die Daten die grösste Varianz aufweisen
|
||||
- t-SNE (t-distributed Stochastic Neighbor Embedding)
|
||||
- Besonders gut darin nicht lineare Daten abzubilden
|
||||
- Faktorenanalyse
|
||||
- Geht davon aus, dass es latente Variablen gibt
|
||||
|
||||
### PCA
|
||||
|
||||
- Zentrierung: Man schiebt die Datenwolke (Pixelhaufen) so, dass ihr Mittelpunkt genau bei Null liegt
|
||||
- Berechnung der Hauptkomponenten
|
||||
- Die 1. Hauptkomponente PC1 ist die Linie die so mitten durch die Daten gelegt wird, dass die Punkte so weit wie möglich darauf verteilt sind
|
||||
- Die 2. Hauptkomponente PC2 steht im rechten Winkel zur ersten und fängt den rest der Infromation ein
|
||||
- Vereinfacht einen riesigen Datensatz so, dass
|
||||
- nur die wichtigsten Merkmale bleiben
|
||||
- ohne das Gesamtbild zu verlieren
|
||||
- Visualisierung
|
||||
- Daten mit 10 oder 50 Merkmalen kann man nicht zeichnen
|
||||
- Nach PCA hat man 2 Hauptkomponenten und
|
||||
- man kann sie als Punkte darstellen
|
||||
- Geschwindigkeit: KI-Modelle lernen viel schneller wenn sie statt 1000 nur noch 10 komprimierte Merkmale verarbeiten müssen
|
||||
- Rauschunterdrückung: Kleine unwichtige Schwankungen (Rauschen) gehen verloren!
|
||||
- Voraussetzungen
|
||||
- keine Missing values
|
||||
- keine numerischen Daten
|
||||
- bereinigung anderer möglichen Anomalien
|
||||
- Features -> X
|
||||
- Target -> Y
|
||||
```python
|
||||
from sklearn.decomposition import PCA
|
||||
model = PCA()
|
||||
pred = model.fit_transform(X) # train and apply trainer on data
|
||||
print(pred[:3,:]) # check result
|
||||
```
|
||||
- Interessant: Scatterplot PC1 vs PC2
|
||||
|
||||
## Stichproben
|
||||
|
||||
- Eie Stichprobe ist ein vollständiges, verkleinertes Spiegelbild der Grundgesamtheit.
|
||||
- Sie gibt damit auch alle wesentlichen Eigenschaften der Grundgesamtheit wieder
|
||||
- Mit eine Probeziehung wird ein repräsentativer Teil einer Population ausgewählt um Rückschlüsse auf die Gesamtheit zu ziehen
|
||||
- Repräsentativ
|
||||
- Eine Stichprobe ist dann repräsentativ wenn alle Beobachtungen der Grundgesamtheit die gleiche Chance besessen haben, Teil dieser Stichprobe zu werden
|
||||
|
||||
### Stichprobengrösse
|
||||
|
||||
- Maschinelles Lernen: Als Faustregel gilt, dass Sie mindestens zehnmalso viele Datenpunkte/Beobachtungen benötigen, wie Ihr Datensatz Features enthält
|
||||
- Art des Ziehens
|
||||
- Mit oder ohne zurücklegen
|
||||
|
||||
### Einfache Stichprobe (Zufallsstichprobe)
|
||||
|
||||
- Rein zufällige Features werden gezogen
|
||||
- Jede Beobachtung hat die gleiche Chance gezogen zu werden
|
||||
- Vorteil
|
||||
- Ist die Zufallsstichprobe gross genug werden automatisch alle Beobachtungen in der Stichprobe auftauchen
|
||||
|
||||
### Geschichtete Stichprobenziehung (Stratifizierung)
|
||||
|
||||
- Ziel
|
||||
- Die Grundgesamtheit so genau wie möglich darzustellen
|
||||
- Anforderungen an die Schichten
|
||||
- Sie sollten sich gegenseitig ausschliessen und gemeinsam erschöpfend sein
|
||||
- Vorgehen
|
||||
- relevante Variablen identifizieren
|
||||
- alter, geschlecht, einkommen, standort
|
||||
- Grundgesamtheit wird auf Grundlage dieser Variablen in Untergruppen (schichten) eingeteilt
|
||||
- Zufallsstichprobe aus jeder Schicht wählen:
|
||||
- Proportional -> entsprechend dem Anteil der Schicht an der Grundgesamtheit
|
||||
- Disproportional -> etwa Gleich grosse Stichproben aus jeder Schicht
|
||||
|
||||
### Proportionale Stratifizierung
|
||||
|
||||
- Die schichten werden originalgetreu gewichtet
|
||||
- Vorteile
|
||||
- Repräsentativität -> die Grundgesamtheit ist in der Stichprobe gut abgebildet
|
||||
- Präzise Schätzungen möglich
|
||||
- Nachteile
|
||||
- Aufwand
|
||||
- Komplexität
|
||||
|
||||
### Disproportionale Stratifizierung
|
||||
|
||||
- Die Schichten werden unterschiedlich stark gewichtet
|
||||
- Verwendung wenn
|
||||
- bestimmte Schichten von besonderem Interesse sind
|
||||
- Kosten der Datenerhebung in den veschiedenen Schichten variieren
|
||||
- Ziel: Ausreichende Anzahl von Elementen jeder Schicht zu haben
|
||||
- Gewichtung: Faktor der die ursprüngliche Verteilung der Grundgesamtheit berücksichtigt
|
||||
- Vorteile:
|
||||
- Genauigkeit
|
||||
- Effizienz
|
||||
- Berücksichtigt Heterogenität
|
||||
- Detailiertere Analyse der unterschiedlichen Schichten möglich
|
||||
- Nachteile:
|
||||
- Verzerrte Ergebnisse
|
||||
- Aufwändige Analyse
|
||||
|
||||
### Klumpenstichprobe
|
||||
|
||||
- Grundgesamtheit zunächst hinsichtlich eines Merkmals in natürliche Klumpen einteilen
|
||||
- Wie bspw. Klassen in einer Schule
|
||||
- Klumpen untereinander Homogen
|
||||
- Jeder Klumpen ist ein verkleinertes Abbild der Population
|
||||
- Alle Klumpen können sich stark ähneln
|
||||
|
||||
## Algorithmen
|
||||
|
||||
- Wichtig
|
||||
- Distanzmasse
|
||||
- Overfitting
|
||||
- Training vs Anwenden
|
||||
|
||||
## Euklidisches Distanzmass
|
||||
|
||||
- Wird am häufigsten verwendet in der Clusteranalyse
|
||||
- "Luftlinie", die den geometrischen Abstand zwischen zwei Punkten in einem Koordinatensystem misst
|
||||
- Für zwei Punkte P und Q in einem mehrdimensionalen Raum berechnet sich die Distanz nach dem Satz des Pythagoras
|
||||
- Optische Verzerrung
|
||||
- Nicht alle Features fallen gleich stark ins Gewicht
|
||||
- Lösung: Standardisierung
|
||||
|
||||
## Manhattan-Distanz (Taxi Prinzip)
|
||||
|
||||
- Summe der absoluten Differenzen ihrer Einzelmasse und keine "Luftlinie"
|
||||
- Wenig anfälliger für Ausreisser
|
||||
|
||||
## Overfitting
|
||||
|
||||
- Ein ML-Model lernen die Trainingsdaten zu gut auswendig und lernt
|
||||
- Zufallsschwankungen und Rauschen
|
||||
- Es wirkt intelligent aber in Wahrheit ist es nicht mehr generalisierungsfähig
|
||||
- Modell sieht Muster wo keine sind
|
||||
- Passiert wenn das Modell
|
||||
- zu komplex ist
|
||||
- zu wenig Daten hat
|
||||
- zu lange trainiert wure
|
||||
- Rauschen in den Daten als echtes Muster interpretiert wird
|
||||
- Ein Entscheidungsbaum könnte so stark wachsen, dass er jeden einzelnen Trainingspunkt perfekt trennt, sogar Ausreisser
|
||||
- Wie verhindert man das?
|
||||
- Cross-Validation
|
||||
- bei kleinen Datensätzen wichtig
|
||||
- Teilung des Datensatz in bestimmte Mengen
|
||||
- Bspw: Ten-fold cross validation (10:1 Trainings zu Testdaten)
|
||||
- Regularisierungen (L1,L2)
|
||||
- Frühzeitiges Stoppen
|
||||
- Pruning bei Entscheidungsbäumen
|
||||
- Mehr Trainingsdaten
|
||||
- Dropout bei neuronalen Netzen
|
||||
- Modell vereinfachen
|
||||
- Wenn sich Test Error und Training Error stark unterscheiden
|
||||
- Ist das fast immer ein Zeichen für Overfitting
|
||||
|
||||
## Modeltraining vs Modelanwendung
|
||||
|
||||
- Modelltraining
|
||||
- Input
|
||||
- Daten
|
||||
- Antworten (Zielvariable)
|
||||
- Algorithmus aussuchen
|
||||
- Algorithmen lernen Regeln
|
||||
- Auswählen des Algorithmus der am besten performed
|
||||
- Modelanwendung
|
||||
- Das Modell bekommt neue unbekannte Daten
|
||||
- Macht eine Vorhersage basierend auf den Trainingsdaten
|
||||
|
||||
Reference in New Issue
Block a user