Spickzettel (A4)
Ultra-kompakte Formel- und Faktensammlung fuer die EKI-Klausur - gedacht zum dichten Abschreiben auf ein beidseitig handbeschriebenes DIN-A4-Blatt (das einzige zugelassene Hilfsmittel).
EKI00 - Einführung
- KI = Maschinen/Software, die menschliches Verhalten zeigen: Wahrnehmen, Lernen/Wissen/Nachdenken, Kommunizieren, Handeln.
- KI-Landkarte: Achse Acquiring vs. Applying; Paradigmen non-symbolic (ML) vs. symbolic (wissensbasiert).
- 6 Bereiche: Perceiving (CV), Communicating (NLP), Reasoning (CEP), Acting, Learning (ML), Knowing (Wissensrepr.).
- Hype-Zyklus (Gartner): Trigger -> Peak -> Trough (= KI-Winter) -> Slope -> Plateau.
- Geschichte: Turing (Turing-Test), Dartmouth 1956 (Begriff "AI", McCarthy/Minsky).
EKI02 - Klassifikation
- ML = Modell aus Training erzeugen + fuer Vorhersage nutzen; nicht explizit programmiert.
- Kategorien: Supervised (Klassifikation, Regression), Unsupervised (Clustering...), Reinforcement.
- Klassifikation = Kategorie; Regression = Zahl.
- Features =
X(Matrix, Gross), Label =y(Vektor, klein). - Entscheidungsbaum: Klassen = Blaetter, Entscheidungen = innere Knoten, Werte = Kanten.
- Entropie: , ; max bei 50/50, 0 bei reiner Klasse.
- Bsp: .
- Information Gain: ; Split mit groesstem Gewinn.
- Workflow:
read_csv-> vorverarbeiten ->DecisionTreeClassifier()->fit(X,y)->predict(X_test)->to_csv. - Vorverarbeitung:
fillna(wert),SimpleImputer(strategy='mean'); Test wie Train vorverarbeiten.
EKI03 - Regression + Validierung
- Konfusionsmatrix (Zeile=Vorhersage, Spalte=Wahrheit): TP, FP (Type I), FN (Type II), TN.
- Beispiel: TP=1, FP=1, FN=8, TN=90.
- (harmonisches Mittel).
- Accuracy versagt bei unausgewogenen Daten -> F-Score nehmen.
- Regressionsmasse: , , (MSE bestraft grosse Fehler, RMSE = Einheit der Zielgroesse).
- Warnung: gute Kennzahl () allein reicht nicht (Scheinkorrelation/Overfitting).
- k-fold CV: in Folds splitten, -mal 1 Fold Test / Rest Train, Mittelwert; Default
cross_val_score: accuracy, k=5. - Regression:
SVR(); Scorescoring='neg_root_mean_squared_error'.
EKI04 - Wissensrepräsentation
- Wissensgraph = gerichteter Graph: Knoten (Objekte/Klassen/Werte), benannte Kanten (Beziehungen).
- 3 Bausteine: Objekte/Instanzen, Klassen, Beziehungen.
- RDF = W3C-Sprache fuer Wissensgraphen; Notation Turtle. Resource per URI (
@base/PREFIXkuerzt). - Tripel = Subjekt + Praedikat + Objekt. Subj/Praed = Resource, Objekt = Resource oder Wert.
.beendet,;verkettet,a=rdf:type. - SPARQL (W3C 1.1):
PREFIX+SELECT ?v+WHERE { muster }; Variablen mit?. - Ergebnis = Tabelle: 1 Spalte pro Query-Variable, 1 Zeile pro passender Zuweisung.
- Join = dieselbe Variable mehrfach (erzwingt gleichen Wert);
DISTINCTgegen Duplikate. - Weitere: ASK, COUNT, FILTER, OPTIONAL, ORDER BY, GROUP BY, CONSTRUCT.
- Tools: Apache Jena/Fuseki (localhost:3030), rdflib (Python).
EKI05 - Complex Event Processing
- CEP = Verarbeiten eines Ereignisstroms + Ableiten von Schluessen daraus (Bereich Reasoning).
- Ereignis (etwas Passiertes) / Ereignisobjekt (Datensatz dazu) / Ereignistyp (Struktur: Attribute+Typen).
- DBMS: persistente Daten + volatile Query. CEP: persistente Regel + fliessender Strom (Umkehrung!).
- Iteratives CEP: low-level -> high-level Ereignisse durch Rueckkopplung.
- Sliding/rolling window: = Dauer, = Haeufigkeit/Versatz; pandas
rolling(window=...). - Anwendungen: Betrugserkennung, Predictive Maintenance, Logistik, Wertpapierhandel, COVID-Monitoring.
- Technologien: Kafka, Flink, Spark, Drools Fusion, Azure/Oracle Stream Analytics, Apama, SAP/SAS ESP, TIBCO.
EKI06 - Computer Vision
- Bild = Zahlenmatrix; MNIST 28x28 = 784 Werte, Datensatz
[55000,784], Form(28,28,1). - Neuron: (Bias: ); Sigmoid , .
- ANN: Eingabe-/Zwischen-/Ausgabeschicht; feed-forward vs. recurrent.
- Kostenfunktion: .
- Gradientenabstieg: Update Richtung , = Lernrate.
- Backpropagation (Rumelhart/Hinton/Williams), 5 Schritte: vorwaerts -> Fehler -> letzte Schicht -> rueckwaerts -> Gewichte.
- (letzte); (innere).
- Update: .
- Deep Learning: viele Schichten, low (Pixel) -> medium (Formen) -> high (Klassen).
- CNN: Convolution (Kernel, erhaelt Nachbarschaft, bei stride 1) -> Pooling (Max/Avg/Sum, z.B. 2x2) -> Fully Connected (Ausgabeneuronen = Klassen).
- Keras:
Sequential([Conv2D, MaxPooling2D, ..., Flatten, Dense(10,'softmax')]);compile(optimizer,loss,metrics)->fit(batch_size,epochs). - Vorverarbeitung: /255 normalisieren, One-Hot (10 Klassen), reshape
(28,28,1); Vorhersagenp.argmax.
EKI07 - NLP
- 6 Bereiche: Information Retrieval, Textklassifikation, Information Extraction, Question Answering, Maschinelles Uebersetzen, Texterzeugung.
- Bag of Words: Text = Multi-Set von Worten + Haeufigkeiten, ohne Grammatik/Reihenfolge -> Feature-Vektoren.
- Bsp: "John likes to watch movies. Mary likes movies too." -> likes:2, movies:2, ...
- tf-idf: , ; haeufige Fuellwoerter abwerten (idf("the")=).
- tf = Haeufigkeit im Text; df = Anzahl Dokumente mit dem Wort.
- n-Gramm: aufeinanderfolgende Worte; erfasst Kontext, mit tf-idf kombinierbar.
- Pipeline:
CountVectorizer -> TfidfTransformer -> MultinomialNB; Guete viacross_val_score. - spaCy: Tokenization, POS-Tagging, Dependency Parsing, Lemmatization, SBD, NER, Entity Linking, Similarity (Wortvektoren), Text Classification, Rule-based Matching.
- Einfaches QA: neue Frage mit FAQ-Fragen vergleichen -> Antwort der aehnlichsten Frage.
EKI08 - Ethik
- Leitfrage: "Wer soll entscheiden, Mensch oder Maschine?"
- Hype = Hyperbel (Uebertreibung); Fehlprognosen Minsky 1967/1970, Kurzweil 2005.
- Cyborg = technisch erweiterter Mensch (Antenne, Prothese, Hoergeraet, Herzschrittmacher).
- Bias: ML lernt aus historischen Daten -> projiziert Vorurteile in die Zukunft (ProPublica/COMPAS: Prater vs. Borden).
- Arbeitsplatzverlust (Frey & Osborne, z.B. Versicherungspruefer 99 %); autonome Entscheidungen: HFT/Flash Crash, autonome Waffen ("dritte Revolution der Kriegsfuehrung").
EKI09 - Unsupervised Learning
- Kein Label; Ziele: Ausreissererkennung, Clustering, Dimensionsreduktion, Datengenerierung.
- Curse of Dimensionality (Bellman): , Diagonale ; Volumen .
- Dimensionsreduktion , . Einfach: Weglassen, Zufallsprojektion (), Feature Engineering (min/max), gelernt (PCA/Autoencoder).
- PCA (5 Schritte): 1. zentrieren (Mittelwert 0), 2. Kovarianzmatrix (), 3. Eigenvektoren/-werte , 4. nach Eigenwert sortieren, 5. PCs als Linearkombination.
- (groesster Eigenwert). Erklaerte Varianz; PC1+PC2 fuer 2D-Plot.
PCA(n_components=2).fit_transform(X).
- (groesster Eigenwert). Erklaerte Varianz; PC1+PC2 fuer 2D-Plot.
- Varianz: .
- Autoencoder: Encoder -> Latent Space (Flaschenhals) -> Decoder -> ; nichtlinear; Noise Reduction, Outlier Detection, Datengenerierung.
- k-Means: 1. zufaellige Zentren, 2. Zuordnung (min. euklid. Abstand), 3. Update , 4. bis Konvergenz.
- Distanz: .
- Vor k-Means Min-Max normalisieren: (sonst dominiert grosses Feature).
- Varianten: k-means++ (Init ), k-medians (Median), k-medoids (Zentrum = Datenpunkt).