Machine Learning for Engineers I - Introduction to Methods and Tools - Cheatsheet.pdf

Machine Learning for Engineers I - Introduction to Methods and Tools - Cheatsheet
Machine Learning for Engineers I - Introduction to Methods and Tools - Cheatsheet Kategorien maschineller Lernmethoden: Überwachtes vs. unüberwachtes Lernen Definition: Überwachtes vs. unüberwachtes Lernen Details: Überwachtes Lernen: Verwendung von gelabelten Trainingsdaten zur Modellbildung Unüberwachtes Lernen: Entdeckung von Mustern und Strukturen in ungelabelten Daten Ziel überwacht: Vorhersa...

© StudySmarter 2024, all rights reserved.

Machine Learning for Engineers I - Introduction to Methods and Tools - Cheatsheet

Kategorien maschineller Lernmethoden: Überwachtes vs. unüberwachtes Lernen

Definition:

Überwachtes vs. unüberwachtes Lernen

Details:

  • Überwachtes Lernen: Verwendung von gelabelten Trainingsdaten zur Modellbildung
  • Unüberwachtes Lernen: Entdeckung von Mustern und Strukturen in ungelabelten Daten
  • Ziel überwacht: Vorhersagen treffen oder Kategorien zuweisen
  • Ziel unüberwacht: Datenstruktur verstehen oder Gruppen finden
  • Beispiele überwacht: Lineare Regression, Entscheidungsbäume
  • Beispiele unüberwacht: K-Means, Principal Component Analysis (PCA)

Wichtige Algorithmen: Regression, Klassifikation, Clustering, Assoziationsanalyse

Definition:

Wichtige Algorithmen in ML umfassen Regression, Klassifikation, Clustering und Assoziationsanalyse.

Details:

  • Regression: Schätzt kontinuierliche Zielvariablen. Modelle wie lineare Regression.
  • Klassifikation: Kategorisiert Datenpunkte. Algorithmen wie k-NN, SVM.
  • Clustering: Gruppierung ähnlicher Datenpunkte. Algorithmen wie k-Means, DBSCAN.
  • Assoziationsanalyse: Findet Regeln in Daten. Algorithmen wie Apriori, FP-Growth.

Neuronale Netze: Architekturen, Schichten, Neuronen, Gewichte

Definition:

Künstliche neuronale Netze (KNNs) bestehen aus mehreren Schichten, die Neuronen enthalten und mit Gewichten verbunden sind.

Details:

  • Architekturen: Verschiedene Aufbauarten von KNNs, z.B. Feedforward-Netze, rekurrente Netze (RNNs), Convolutional Neural Networks (CNNs).
  • Schichten: Eingabeschicht, eine oder mehrere verborgene Schichten und Ausgabeschicht.
  • Neuronen: Grundbausteine der Schichten, empfangen Eingaben, aktivieren eine Funktion und leiten Ausgaben weiter.
  • Gewichte: Skalare Werte, die die Stärke einer Verbindung zwischen zwei Neuronen bestimmen. Sie werden während des Trainings angepasst.
  • Aktivierungsfunktion: Beispielsweise Sigmoid, Tanh, ReLU, die nicht-lineare Transformationen der Eingaben in den Neuronen ermöglichen.
  • Forward-Propagation: Prozess, bei dem Eingaben durch die Netzwerkarchitektur geleitet werden, um eine Ausgabe zu generieren.
  • Backpropagation: Lernalgorithmus zur Anpassung der Gewichte durch Minimierung eines Fehlers (z.B. mittels Gradientenabstieg).
  • Kostenfunktion: Maß für die Diskrepanz zwischen tatsächlicher und vorhergesagter Ausgabe, z.B. Mean Squared Error (MSE).

Aktivierungsfunktionen und ihre Rolle in neuronalen Netzen

Definition:

Aktivierungsfunktionen ermöglichen nicht-lineare Transformationen der Eingaben, was entscheidend ist für die Leistungsfähigkeit neuronaler Netze.

Details:

  • Lineare Aktivierungsfunktionen: Keine Nicht-Linearität, selten verwendet.
  • Sigmoid: \(\text{sigmoid}(x) = \frac{1}{1 + e^{-x}}\), Probleme mit vanishing gradients.
  • ReLU (Rectified Linear Unit): \(\text{ReLU}(x) = \text{max}(0, x)\), weit verbreitet wegen Effizienz.
  • Tanh: \(\text{tanh}(x) = \frac{e^x - e^{-x}}{e^x + e^{-x}}\), skaliert Werte zwischen -1 und 1, besser als Sigmoid.
  • Softmax: \(\text{softmax}(x_i) = \frac{e^{x_i}}{\text{Sum}({e^{x_i}})}\), verwendet für Wahrscheinlichkeitsverteilungen.

Modellevaluierung: Genauigkeit, Präzision, Recall, Kreuzvalidierung

Definition:

Modellevaluierung untersucht, wie gut ein maschinelles Lernmodell funktioniert und ob es verallgemeinern kann.

Details:

  • Genauigkeit (Accuracy): Anteil der richtig klassifizierten Instanzen. \( \text{Accuracy} = \frac{\text{true positives} + \text{true negatives}}{\text{total samples}} \)
  • Präzision (Precision): Anteil der korrekt als positiv vorhergesagten Instanzen. \( \text{Precision} = \frac{\text{true positives}}{\text{true positives} + \text{false positives}} \)
  • Recall: Anteil der korrekt identifizierten positiven Instanzen. \( \text{Recall} = \frac{\text{true positives}}{\text{true positives} + \text{false negatives}} \)
  • Kreuzvalidierung (Cross-Validation): Technik zur Bewertung der Generalisierungsfähigkeit eines Modells, indem das Datenset in k-Folds aufgeteilt wird und das Modell k-mal trainiert und getestet wird.

Datenvorverarbeitung mit NumPy und Pandas

Definition:

Datenvorverarbeitung mit NumPy und Pandas: Werkzeuge zum Laden, Analysieren und Transformieren von Daten, um sie für maschinelles Lernen vorzubereiten.

Details:

  • NumPy: effiziente numerische Berechnungen, Arrays, elementweise Berechnungen, lineare Algebra
  • Pandas: Datenstrukturen (DataFrame, Series), Datenmanipulation, fehlende Werte behandeln, Daten aggregieren
  • Daten laden: pd.read_csv(), np.loadtxt()
  • Daten transformieren: skalieren, normalisieren, encoden
  • Fehlende Werte: df.dropna(), df.fillna()
  • Feature-Engineering: neue Features erstellen durch Kombinationen und Transformationen
  • Datenaufteilung: Trainings- und Testdatensätze erstellen (train_test_split())

Entwicklung von neuronalen Netzen mit TensorFlow und Keras

Definition:

Entwicklung neuronaler Netze mit TensorFlow und Keras

Details:

  • TensorFlow: Open-Source-Framework für maschinelles Lernen von Google
  • Keras: Hochlevel-API, vereinfacht die Erstellung und das Training von neuronalen Netzwerken
  • Modellarchitektur: Sequential und Functional API
  • Optimierung: Verlustfunktion, Optimierungsalgorithmus
  • Trainingsprozess: Datenvorverarbeitung, Batch-Training, Evaluierung
  • Codebeispiel:
    import tensorflow as tffrom tensorflow.keras.models import Sequentialfrom tensorflow.keras.layers import Dense# Modell erstellenmodel = Sequential([Dense(64, activation='relu'), Dense(10, activation='softmax')])# Kompilierenmodel.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy'])# Trainingmodel.fit(x_train, y_train, epochs=10)# Evaluierungloss, accuracy = model.evaluate(x_test, y_test)

Vermeidung von Overfitting und Underfitting

Definition:

Vermeidung von Overfitting und Underfitting: Sicherstellen, dass das Modell gut generalisiert und die Balance zwischen Bias und Varianz findet.

Details:

  • Bias-Varianz-Dilemma: Trade-off zwischen Bias (Underfitting) und Varianz (Overfitting)
  • Regularisierung: Hinzufügen einer Strafe für komplexe Modelle, z.B. Lasso (\text{L}_1-Norm) und Ridge (\text{L}_2-Norm)
  • Cross-Validation: Aufteilung der Daten in Trainings- und Validierungssätze zur Bewertung der Modellleistung
  • Feature-Engineering: Relevante Merkmale auswählen und extrahieren
  • Datenaugmentation: Erhöhung der Datenmenge durch Transformationen
  • Ensemble-Methoden: Kombination mehrerer Modelle zur Robustheitssteigerung
  • Frühes Stoppen: Training beenden, wenn sich die Validierungsleistung verschlechtert
Sign Up

Melde dich kostenlos an, um Zugriff auf das vollständige Dokument zu erhalten

Mit unserer kostenlosen Lernplattform erhältst du Zugang zu Millionen von Dokumenten, Karteikarten und Unterlagen.

Kostenloses Konto erstellen

Du hast bereits ein Konto? Anmelden