HSLU DL4G HS20

Deeplearning 4 Games HS20; Special Thanks to: Cyrille Ulmi

Deeplearning 4 Games HS20; Special Thanks to: Cyrille Ulmi


Fichier Détails

Cartes-fiches 124
Langue Deutsch
Catégorie Informatique
Niveau Université
Crée / Actualisé 22.01.2021 / 09.01.2023
Lien de web
https://card2brain.ch/box/20210122_hslu_dl4g_hs20
Intégrer
<iframe src="https://card2brain.ch/box/20210122_hslu_dl4g_hs20/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>

Was versteht man unter Search Tree Pruning?

Nicht relevante Teilbäume können weggelassen werden, reduziert den Rechenaufwand
 

Was sind die Regeln von Alpha-Beta Pruning?

  • alpha ist der grösste Wert aller MAX Vorfahren eines MIN Knoten
  • beta ist der kleinste Wert aller MIN Vorfahren eines MAX Knoten
  • Den Teilbaum abschneiden, falls er grösser als alpha oder kleiner als beta ist

Was ist der Vorteil von Alpha-Beta Pruning?
 

  • Ordnung verbessert sich von O(b^m) nach O(b^(m/2))
  • halbiert also die Tiefe der Suchbäume
     

Welche Disziplinen gibt es bei Machine Learning?

  • Supervised Learning
  • Unsupervised Learning
  • Semi-Supervised Learning
  •  

Was versteht man unter Supervised Learning

  • Dem Algorithmus werden gelabelte Trainingsdaten übergeben
  • Er lernt, Labels von unbenannten Daten vorherzusagen
     

Was Versteht man unter Unsupervised Learning

  • Dem Algorithmus werden nicht gelabelte Trainingsdaten übergeben
  • Er entdeckt / lernt selbstständig die Struktur der Daten
     

Was versteht man unter Semi-Supervised Learning

  • Mischung zwischen Supervised und Unsupervised Learning
  • Wird meist benutzt, wenn eine kleine Anzahl gelabelter Daten zur Verfügung steht
     

Was versteht man unter Reinforcement Learning

  • Keine Daten stehen zur Verfügung
  • Der Algorithmus wird durch eine Reward Funktion geleitet
  • Das ideale Verhalten wird gesucht, um die Reward Funktion zu maximieren
     

Was können die Gründe für schlechte Datenqualität sein?
 

  • Schlechtes Design, mangelhafte oder inkonsistente Datenformate
  • Programmierfehler oder technische Probleme
  • Alter der Daten (bspw. ungültige E-Mail-Adressen)
  • Schlechte Dateneingabemasken (fehlende Validierung bei Erfassung der Daten)
  • Menschliche Fehler beim Datenexport
  • Ungültige oder falsche Informationen
     

Welche 8 Möglichkeiten gibt es, um die Qualität von Daten festzustellen?
 

  • Datenquellen und deren Zuverlässigkeit überprüfen
  • Statistische Kennzahlen interpretieren und überprüfen
  • Visuelles Überprüfen eines Datenauszugs
  • Manuell Datenbereiche überprüfen (bspw. negative Löhne)
  • Plausibilität von Zusammenhängen überprüfen
  • Redundanz der Daten messen
  • Abweichungen in Syntax und Semantik der Daten
  • NULL-Werte und doppelte Daten untersuchen
     

Wie läuft ganz einfaches Machine Learning ab?
 

  1. Daten in Testdaten und Trainingsdaten aufteilen
  2. Klassifikator auf den Trainingsdaten trainieren
  3. Klassifikator anhand der Testdaten bewerten

Funktioniert nur mit vielen Daten und wenn die Hyperparameter festgelegt sind
 

 

Wie sollten die Daten in einem Date Pool aufgeteilt werden?
 

  • ca. 70-80% Trainingsdaten
  • ca. 20-30% Testdaten
     

Wie sollte beim Aufteilen der Daten vorgegangen werden?
 

  • Daten zufällig mischen
  • Daten aufteilen in Training und Test
  • Training- und Testdaten müssen disjunkt sein (keine gemeinsamen Elemente)
     

  • Was bedeutet Training (ML)?
     

Minimierung einer Kostenfunktion auf den Trainingsdaten durch Anpassen der Modellparameter
 

Was bedeutet Testing? (ML)
 

Nur eine Auswertung auf unbekannten Daten ermöglicht, die Leistung eines Modells festzustellen
 

Was ist k-NN?
 

  • Steht für K-Nearest Neighbors
  • Ist ein sehr einfacher Machine-Learning-Algorithmus
  • Bei k = 1 wird das Label des nächstgelegenen Trainingspunkt verwendet
  • Bei k > 1 findet ein Mehrheitsbeschluss der nächsten k Nachbarn statt
     

Was sind Hyperparameter?
 

  • Entscheidungen, die vom Menschen getroffen werden
  • Zum Beispiel: Angleichung an eine lineare Funktion
     

Was sind 5 Beispiele für Hyperparameter?
 

  • Anzahl Nachbarn bei k-NN
  • Regularisierung der Parameter
  • Kernel einer Support-Vektoren-Maschine
  • Baumtiefe und Selection-Policy im Entscheidungsbaum
  • Anzahl Layers, Neuronen, Aktivierungsfunktion, Dropout bei Deep Learning
     

Wie sieht ein komplizierter Auswertungsvorgang aus? (ML)
 

  1. Daten aufteilen in 60% Training, 20% Validation und 20% Test
  2. Über alle interessanten Hyperparameter-Konfigurationen iterieren
  3. Modell anhand der ausgewählten Hyperparameter auf den Trainingsdaten trainieren
  4. Modell auf dem Validation-Set überprüfen und Leistung messen
  5. Modell mit der besten Leistung auswählen und auf den Testdaten Leistug messen

Diese variante benötigt ziemlich viele Daten

Wie funktioniert Cross Validation?
 

  • Falls zu wenig Daten vorhanden sind
  • Aufteilen in 80% Training und 20% Test
  • Training aufteilen in k Folds (bspw. 10)
  • Jeder Fold ist einmal das Validation-Set
  • Die restlichen Folds werden als Trainingsdaten verwendet
  • Schlussendlich den Mittelwert über alle Folds ziehen
     

Was ist das Ziel bei Aufteilung in Test- und Trainings-Set?
 

Gleiche Verteilungen über Test- und Trainings-Set
 

Was sollte man über Learning-Curves wissen?
 

  • Wenn Kurven weit auseinander sind, hilft es wenn man mehr Daten nutzt
  • Wenn Kurven parallel sind, dann bringt es ziemlich sicher nichts

 

Welche Möglichkeiten gibt es bei einer Confusion Matrix für einen Binary Classifier?
 

  • Realität war:
    • TP = true-positive
    • FN = false-negative
  • Realität falsch:
    • TN = true-negative
    • FP = false-positive

Wie wird die Accuracy berechnet

\(TP+TN \over Total\) 

TP= true-positive

TN= true-negative

Wie wird die Error rate berechnet?

\({FP + FN \over Total}=1-Accuracy\)

FP= false-positive

FN= false-negative

Was ist der Unterschied zwischen AI, ML und Deep Learning?
 

  • Artificial Intelligence (regelbasiert / MCTS)
  • Machine Learning (Training auf Daten mit festgelegten Features)
  • Deep Learning (Lernen der Features aus den Daten)
     

Was ist die Definition von Machine Learning?

  • Ein Computerprogramm lernt aus der Experience E...
  •  ...mit Rücksicht auf eine Klasse von Tasks T und Performance Measures P...
  •  ...wenn es Tasks in T durchführt, gemessen an P, seine Experience E verbessert.
     

Was ist Task (T) beim Jassen? (ML)
 

  • Tasks (T)
    • Trumpf auswählen
    • Karte auswählen
    • Werte der Karten
    • Punkte im Spiel

Was ist Performance Measure (P) beim Jassen? (ML)

  • Performance Measure (P)
    • Anzahl Gewinne / Punkte
    • Vergleich mit Daten
       

Was ist Experience (E) beim Jassen? (ML)

  • Experience (E)
  • Spielen
  • Daten lesen
     

Welche zwei Task-Typen werden unterschieden? (ML)
 

Regression & Classification
 

Aus welchen 3 Teilen besteht ein Feed Forward Network?
 

  • Input Layer
  • Hidden Layer
  • Output Layer

Was beinhaltet ein Knoten eines Netzwerks?
 

  • Inputs (x1, x2, ...)
  • Internen Parameter ()
  • Funktion, die den Output basierend auf dem Parameter berechnet
     

Was ist eine Epoche?
 

Ein (1) Training des gesamten Datensets
 

Welche Aktivierungsfunktionen gibt es?
 

  • Sigmoid für eine binäre Klassifizierung
  • relu für Nodes innerhalb eines Netzwerks
  • Aktivierungsfunktion sollte nicht linear sein
     

Was ist eine Kostenfunktion?
 

  • Ist die Funktion, welche durch das Lernen minimiert werden soll
  • Häufig wird eine Likelihood-Funktion verwendet
     

Was sollte bei Multi-Class Problemen beachtet werden?
 

  • 1-hot encoded Array für Labels
    Letzter Layer mit softmax Funktion (für Normierung)
     

Was ist ein neuronales Netzwerk? (6 Punkte)
 

  • Besteht aus mathematischen Knoten
  • Knoten haben Inputs und Outputs
  • Knoten sind organisiert in Layers
  • Knoten berechnen aus Inputs und Parameter einen Output
  • Knoten haben lineare Funktion (Gewicht, Bias, Input)
  • Auf Funktion wird eine Aktivierungsfunktion angewendet (sigmoid, relu)
     

Wie berechnet ein neuronales Netzwerk das Resultat?
 

  • Parameter werden während dem Training definiert
  • Danach nur noch Layer für Layer durchrechnen
     

Was ist eine Loss Funktion?
 

  • Grundsätzlich eine Fehlerfunktion
  • Die Funktion, welche während dem Training minimiert werden soll