Files

18 KiB

Notizen Lektion 1

Thema: Einführung Practical Machine Learning 1 Datum: 22.04.2026 Dozent: Jürgen Vogel

Beispiele von ML Applications

[!NOTE] Definition Tokenization -> Datenpunkte aus Datenmenge extrahieren

  • Sales and customer support
    • Binärklassifikation
  • Process automation
    • Fehlererkennung -> Klassifikationsproblem
  • Maintenance (Industrieanlagen)
    • Wann Wartung nötig? -> Optimierungsproblem
  • Autonomous driving
    • Möglichst keine Fussgänger überfahren -> Klassifikationsproblem
  • Farming
    • Vollautomatisches Pflücken von Unkraut
    • Erkennen von Unkraut -> Klassifikationsproblem
  • Robotics
  • Translation
    • Sprache übersetzen in andere Sprache -> Generative KI
      • Google Translate
      • Deepl

Bsp. E-Mail Classification

[!NOTE] Definition Training Data -> (Feature Engineering) -> Vectorized Data -> (Training) -> ML Algorithm

  • Bsp. automatische Vorsortierung von e-Mail Anfragen von Anfragen beim Kanton - Umweltdepartement - Energiedepartement - Wirtschaftsdepartement
  • Training Data
    • Diverse Ausgangsdaten / Trainingsdaten
    • Müssen vorbereitet werden, das nennt man Feature Engineering
      • Macht aus Training Data Vectorized Data die vom Modell verwendet werden können
      • Schlüsselworterkennung (bspw. Photovoltaik, Energie, Finanzen)
      • 0/1-Feature -> Binäres Feature "Ist Schlüsselwort genannt oder nicht?"
        • Sobald die Trainsingsdaten in Features umgewandelt wurden
        • Müssen sie in eine Datenstruktur abgebildet werden
      • ML Algorithmen sind Problemunabhängig (Bild klassifikation oder Email)
        • Algorithmus hat Feature Erkennung basierend auf Zahlenwerte
          • Input Vektor wird auf Output gemapped
          • Mit bestimmter mathematischer Funktion
          • Daher kann nicht von KI gesprochen werden
        • Eingangsvektor -> Zahlenwerten
        • Ausgangswerte -> Ebenfalls Zahlenwerte
          • Müssen wieder Umgewandelt werden in Features
  • ML Model
    • Resultiert aus Training mit ML Algorithmus basierend auf vektorisierten Daten
    • Stellt den Zusammenhang zwischen Referenzdaten und Departement her
    • Input Layer -> Hidden Layer -> Output Layer
    • Ist im Grunde genommen eine Parameter Optimiertung
    • Lierfert eine Klassifikation als Resultat
  • Wie werden Daten überprüft?
    • ML Engineer muss überprüfen ob das Modell fehler generiert oder nicht
    • Test Data, wo man weiss was das Ergebnis ist
      • Daraus wird eine Error Rate bestimmt
    • Wichtige Fragestellung: Was eine akzeptable Fehlerquote?
      • Iterative Verbesserung

Machine Learning

  • Learning
    • Die Welt wird beobachtet
    • Wissen wird dabei abgeleitet
      • Kann faktenbasiertes Wissen sein (auf dem Bild ist eine Person)
      • Kann regelbasiertes Wissen sein (Bild zeigt Person, wenn Objekt mit Features XYZ vorhanden)
  • Machine Learning
    • Informal
      • Ist ein Algorithmus welcher Learning automatisiert umsetzt
    • Formal
      • an Algorithm learns from experience E to solve some tasks T with performance P if P improves with E
  • Artificial Intelligence (AI)
    • Hat mit machine Learning relativ wenig zu tun
    • Systeme die sich wie ein Mensch verhalten
      • Wie testet man ob ein System intelligent ist?
        • Turing Test
    • Systeme die wie ein Mensch denken
      • Nachbildung Kognitiver Denkprozesse -> Hirnstrukturen nachbilden
      • Nachbildung Logischer Denkprozesse -> Fakten und Regeln verknüpfen
      • Problemlösung -> Lösungen aktiv suchen
      • Reasoning -> Wissen aus bereits gemachten Erfahrungen ableiten
      • Sense and Manipulate -> Mit der Umwelt interagieren und daraus lernen

Machine Learning Models

[!NOTE] Definition an Algorithm learns from experience E to solve some tasks T with performance P if P improves with E

  • Model
    • represents the solution to the tasks T
    • is learnt by the ML algorithm
    • is adapted by the ML algorithm based on E
    • can be evaluated with respect to P
    • can be stored
    • mas be human-readable or not (white box model vs black box)
      • white box -> man kann sich die Parameter anschauen (reinschauen)
        • man kann das Modell debuggen und Fehler nachvollziehen
      • black box -> Neuronale Netze sind immer solche
        • können nicht verstanden oder nachvollzogen werden
        • warum wurde Person auf Bild nicht erkannt? -> Schwierig nachzuvollziehen
    • Für Projekt: Anfangen immer mit einfachem Modell -> um Task und Problematik zu verstehen
      • Dann auf anderen Algorithmus umschwenken
  • Features
    • are the relevant part of the data E for creating the model
    • may have to be designed explicitly depending on the ML algorithm
    • Dazu gibt es für gewisse Modelle Standardfunktionen

Traditional Programming vs Machine Learning

  • Oft ist es wichig zu entscheiden welche Probleme mit welchem Ansatz gelöst werden müssen
  • Was sind vor und nachteile von ML?
    • Viele Probleme lassen sich auch klassisch gut lösen
  • Was sind die unterschiede?
Traditional Programming Machine Learning
transform input data into output data via a series of fixed instructions (conditions, loops, etc) maps input data to output data via an adaptive model
white box problem solving black box problem solving
deterministic results continous result improving
easy to test through classical unit testing unknown environments or situation are not problematic
avoid errors introduced by random noise avoid misconceptions about the real world

Statistics vs Machine Learning

Statistics Machine Learning
analyzing and interpreting data algorithms that improve through training (experience)
relationshios between vars and math equiations statistical and mathematical methods
sacrifices correctness for computability
estimation learning
hypothesis testing classification
datapoint instance/example
independent variable feature
dependent variable class / label

Different Machine Learning Approaches (1)

What experience E can be exploited for learning?

  1. Supervised Learning
    • the ML algorithm infers the model from sample data E for which the task T has been solved with optimal performance P
    • Algorithmus wird anhand von Beispielen trainiert
    • Problem: Trainingsdaten -> wo bekommt man die her?
      • Ist sehr aufwändig und erfordert auch eine hohe Qualität
      • Man braucht Daten die gelabled sind zum Trainieren
  2. Unsupervised Learning
    • The ML algorithm infers the model from data E based on some adaptation to distinctive features of E
    • the algorithm does not have access to P
    • Keine Referenzlösungen sondern "etwas anderes" -> Features
      • Bspw. in Mails wird nach Schlüsselworten gesucht, und in Features umgesetzt
        • Andere Schlüsselworte generiern andere Featurevektoren, die dann verglichen werden können
    • Wie kann ich dem Algorithmus helfen Datenpunkte auseinanderzuhalten auf Basis von einem feature Vektor
    • Man braucht Daten die gelabled sind (Referenzdaten) nur zum Testen
      • Im Gegensatz zum Supervised Learning braucht man also weniger Daten -> Günstiger und effizienter
  3. Reinforcement Learning
    • CAS AI -> da spielt das eine grosse Rolle (Robotik)
    • Man startet mit einem initialen Modell (neuronales Netz) mit default Werten, die Parameter sind zufällig.
    • Dann stellt man das Modell sofort produktiv
    • Man braucht eine Art zu entscheiden ob der Output gut oder schlecht ist
      • Damit hat man einen realen Trainingsdatensatz und kann damit das Modell verbessern
      • Rinse and repeat
      • Trainingsdatensatz wächst kontinuierlich und dadurch wird das Modell besser
    • Modell wird "bestraft" oder "belohnt" bei positivem oder negativem Verhalten
    • Bspw.: Bewegungsabläufe eines Roborters trainieren
      • Welcher Motor dreht sich um wieviel Grad mit welcher stärke
        • Ergebnis: Roboter bewegt sich in Richtung XY mit Geschwindigkeit Z
        • Lässt sich gut beobachten -> Roboter fällt auf die Nase bspw. schlecht
    • Bspw.: Schachcomputer Programm
      • Lässt sich mit RL einfach und effizient umsetzen, da die Regeln des Spiels bekannt sind und bewertet werden können
    • Bspw.: Suchmaschine
      • Query -> Optimale Eergebnisliste
      • Feedback: Wie geht der Benutzer mit der generierten Ergebnisliste um? Worauf wird geklickt?

Different Machine Learning Approaches (2)

[!NOTE] Definition What type of Task T is solved?

  1. Clustering
    • Input data should be divided into distinctive groups
    • Man hat eine Datenmenge und man vermutet, dass die sich aufteilen lässt in Teilmengen
      • Ich will Kategorien herausfinden
    • Bspw.: Kundensegmentierung
      • Kundengruppen in onlineshop erkennen
      • Regionale Gruppen, Altersgruppen, Einkommensklassen, Hobby, etc.
    • model often based on similarity: members in one group are similar
    • Unsupervised Learning ist hier sehr prominent
  2. Classification
    • input data should be assigned a certain class/category/label
    • Ich will eine vorgegebene Anzahl von Kategorien zuweisen
    • bspw.: an email is classified as spam or as not-spam
    • Supervised Learning ist hier sehr prominent
  3. Regression
    • estimates the relationship between input data (independent variables) and the output we are interested in (dependent variable)
    • model is a regression function, often for continous variables
    • Mit einer Regression lassen sich auch Klassifikationsprobleme lösen, aber nicht umgekehrt
    • bspw: prediciton of birth date

Generative AI (GenAI): Large Language Model (LLM)

  • Modell Speichert grosse Mengen an vorhanden Daten (Internet)
    • Lernt Sprache
  • Was löst das LLM?
    • Klassifikationsproblem -> Es ist eigentlich ein Classifier
  • Wie funktioniert ein LLM?
    • Output ist lediglich eine Wortsequenz
    • Input -> Prompt -> wird umgewandelt zum Feature Vektor und dem Modell übergeben
    • Output -> Klassifikation oder Vorhersage welches Wort am besten zum Prompt passt
    • Man nennt das auch Word Prediction
    • Es wird immer nur ein Wort predicted, der Rest findet iterativ statt, Wort für Wort
      • Prompt und Erstes Wort als Input geben
      • Dann das nächste Wort, und so weiter
      • Iterative Klassifikation

Machine Learning Workflow (CRISP-DM)

  • Wir arbeiten iterativ und es wird eine Reihe von Arbeitsschritten durchlaufen
    • der erste Wurf ist meist nicht gut genug
  • Der Ablauf lässt isch wie folgt definieren:
    1. Welches Problem will ich lösen -> Business Understanding
    2. Daten verstehn und labeln -> Data Understanding
    3. Daten in Feature Vektor umwandeln -> Data preparation
    4. Aus Daten ein Modell ableiten -> Modeling
    5. Metrik Feststellen und Testen -> Evaluation
    6. Praktisches Einsetzen -> Deployment

Business understanding

  • Problem definieren "Welches Problem will ich überhaupt lösen?"
  • Für Projektarbeit: Klar abgegrenztes, einfach lösbares Problem definieren
    • predict the remaining lifetime of a machine
    • classify email as spam or not
    • detect a human face in an image
  • Antibeispiel: "We have a ton of XYZ data -> can you make something useful out of it?"
    • data science: iteratively addressing the information needed
    • machine learning not necessarily means automation
      • Es muss nicht alles automatisiert werden, auch Unterstützung ist sinnvol
        • Statt vollautomatischem Mailbeantworten vielleicht eher eine Vorsortierung oder ein Templating der Antworten
    • bspw.: Supermarkt
      • Leute kaufen oft Bier und Chips zusammen
      • Was kann mit dieser Information gemacht werden?
        • Entweder Produkte nebeneinander Stellen damit der Durchlauf höher wird
        • Oder möglichst weit auseinander, damit die Zeit im Shop maximiert wird -> grösserer Einkauf

Example: To Wait or Not to Wait

[!NOTE] Fragestellung Will people wait in line for eating in a restaurant?

  1. Collecting data
    • Internal or external sources?
      • Intern: Unternehmensdaten anzapfen
      • Extern: Referenzdatensatz aus der Verhaltensforschung
    • Fragestellgun: Sind die Daten bereits gelabeled?
      • Wenn ein Problem mit SL gelöst werden soll -> Ist es realistisch die Daten im Rahmen des Projekts zu Labeln? Aufwändig! Wenn nein, mach was anderes.
        • Es werden schnell 4 oder 5 stellige Mengen an Daten benötigt
    • Kaggel-> Data Science challenges sind bspw. eine gute Quelle
    • Forschungscommunity -> Referenzdatensätze
    • Google Scholar -> in den referenzen stehen meist die Datensätze
  2. Understanding Data
    • Which aspects of available data can be utilized as features?
      • Was wurde in Referenzprojekten verwendet?
    • feature types: boolean, nominal (categorial), or numeric
    • often helpful to look at basic statistics to develop a "feeling"
      • histograms and frequency distributions or graphs
      • Verteilungsfunktion
      • Welche features kommen in welchen Klassen vor?
      • Viel Zeit reservieren für Semesterarbeit
    • Wie häufig sind meine Klassen in den Daten vertreten?
      • many classification problems are unbalanced!
        • 99% der emails sind nicht spam und 1% spam
        • Das Modell wird oft auf die Klasse optimiert, auf die Klasse die am Meisten vorkommt
      • classes are not evenly distributed but a class may be very rare or very frequent
        • e.g: detecting rare diseases: only x cases in a million
        • may not even occur in a dataset at hand
  3. Preparing (cleaning) Data
    • data integration: data from different sources may use different schema (syntax) or semantics
    • data transformation: e.g. turn numeric feature (age) into nominal (age-category)
    • data may be missing: e.g some features have not been recorded for some instances -> Daten können fehlen oder fehlerhaft sein!
      • Messfehler, Duplikate
      • Bewusste Irreführung bei Umfragen
      • Features können fehlen da sie noch nicht gemessen wurde
      • Veraltete Daten die vielleicht sogar obsolet sind
    • feature generation: processing low-level data into higher-level features
    • feature selection: selecting the best features from a (too) large set
      • Brauche ich wirklich alle Features in einem Datenset?
  4. Modeling
    1. Selecting an appropriate ML algorithm
      • black box or white box
      • Im Restaurants-Beispiel entscheiden wir uns für einen Entscheidungsbaum
        • Das ist ein Supervised Classifier
    2. Building the Model
      • via training (automatically)
      • via configuration (manually)
    3. Decision Tree (DT)
      • Supervised Classification Algorithm
        • binary classification: two classes true/false
      • tree leaves represent class labels
      • all other nodes represent a devision based on a certain feature
      • path between parent to child nodes represents next relevant decision
      • path from root to leaf node represents conjunctive devisions
      • Der Aufbau des Baumes wird durch den Algorithmus spezifiziert
      • Es handelt sich um ein white box Verfahren
      • DT Construction
        • Challenge: many alternative and equivalent DT exits
        • Correct but inefficient DT: All samples are leaf nodes with path utilizing all present features (bruteforce)
        • Bei numerischen Variablen wird es schwierig einen Schwellwert zu setzen
          • Wartezeiten sind individuell und schwierig zu klassifizieren
          • Fehler potenzieren sich pro Entscheidung
          • Strategie: Pfade möglichst kurz halten, entscheidungen möglichst schnell treffen, daher ist ein Bruteforce apporach mit allen entscheidungen schlecht
          • Wichtig: Entscheidungspfade müssen kurz sein (optimaler Baum)
        • Optimaler Algorithmus:
          • for the next node, choose feature that splits the sample data into the most homogeneous subsets.
          • Attribute die die Samples möglichst stark aufteilen (klassifizieren) zuerst!
            • Patrons -> (None,Some,Full) -> liefert die beste Trennung
            • Type -> (French, Italian, Thai, Burger) -> Informationsgewinn gleich Null
            • Für jeden Teilschritt muss das optimale Attribute herausgesucht werden
            • formally: the feature that minimizes the remaining entropy (optimale codierung)
        • Different DT Algorithms around this Idea: ID3, C4.5, C5
  5. Evaluating the Model
    • Is the model good enough?
    • what is the metric for good enough?
      • fester Wertebereich -> zwischen 0 und 1
    • durchschnittlicher Fehler bspw.
    • kann auch der worst case sein
      • So setzen, dass worst case noch akzeptabel
    • processing time and scalability
    • offers a human-understandable explanation (white box)
    • in real-world scenarios it's impossible to have error-free models
      • missing or noisy data
      • model tries to generalize but there may be executions
  6. Productizing a Model
    • Some aspects to consider
    • Human and Computational resources
      • Training des Models kann viel kosten
      • Feature Generierung kann auch teuer sein
    • Ist das Model update fähig?
      • some models may be incrementally updated
    • ML Ops considerations
      • runtime environment
      • interface
      • versioning (Model und Daten)
    • Application development
      • model provides useful features of a larger application
      • human factors: trust, bias, accountability, security

Summary: Machine Learning Challenges

For ML to work, we need the following:

  • Konkrete Aufgabenstellung, bei welcher man eine wohldefinierte Überprüfungsfunktion hat
  • Man benötigt Daten in der notwendigen Quantität und Qualität
    • data may be garbled or missing
    • dataset may be too small for the task at hand
    • dataset may not be representative or biased
  • Man braucht gute Features
    • Welche in welcher Kombination?
  • Decisive patterns
    • patterns may be inexact or spurious
    • most patterns are not interesting
  • Auswahl des passenden ML Algorithmus
    • which one in which configuration
    • Kombinationen von Parametern wichtig
    • Ist es eine zukunftsfähige Lösung? Was wenn sich die Datenmenge verzehnfacht?
  • Akzeptable Fehlerquote definieren
    • kein Modell ist frei von Fehlern!