Zukunftsgestaltung für Unternehmen
Die Data Science Business Akademie bietet passgenaue Lösungen, einzigartige Services, eine individuelle Qualifizierung sowie höchste Beratungskompetenz in den Bereichen Predictive Analytics, Artificial Intelligence und Big Data – wir begleiten Sie auf dem Weg zum Data Science Expert.
Ihr Zertifizierungsweg:
Explorer
Grundlagenwoche
- 1 Modul plus Prüfung
- Zertifizierung: Certified Data Science Explorer
Practitioner
Praxiswoche
- 1 Modul plus Prüfung
- wählbar aus 2 Themenfeldern
- Zertifizierung: Certified Data Science Practitioner
Expert
Vertiefungswoche
- 1 Modul plus Prüfung oder 1 Projekt
- wählbar aus 3 Themenfeldern
- Zertifizierung: Certified Data Science Expert
Data Science Seminare
Verwenden Sie genau die Werkzeuge, die Sie in Ihrem Unternehmen benötigen.
Mit unseren aktuellen Angeboten rund um Predictive Analytics, Artificial Intelligence und Big Data qualifizieren und unterstützen wir Sie auf Ihrem Weg durch die digitale Transformation.
Stellen Sie sich aus einer Reihe von Seminaren Ihren Zertifizierungsplan zusammen.
- Einführung in Python
- Syntax von Python
- Die Help-Funktion
- Kommentare
- Allgemeine Datentypen
- int, float, Decimal, bool, string
- Konvertierungen zwischen Datentypen
- Logische und arithmetische Operatoren
- Formatierte Ausgaben mit format()
- Funktionen, Parameterübergabe
- Die pass-Anweisung
- Lambda-Expressions
- Übungen zur Programmlogik
- Viele ausgewählte Übungen
- Schleifen: for und while
- Die range-Funktion
- Bedingungen: if, elif, else
- Übungen zu verbesserter Performance
- Objektorientierte Programmierung
- Einstieg in objektorientierte Programmierung
- Datenkapselung, Vererbung, Polymorphie
- Klassen und Objekte
- Die Klasse Object
- Mehrfachvererbung
- Überschreiben von Methoden der Basisklasse
- Viele Übungen: eigene Klassen schreiben
- Exceptionhandling in Python
- Die Klasse Exception
- try / except / finally
- Erstellen einer eigenen Fehlerklasse
- Weitere optionale Themen
- Dateien lesen und schreiben
- Operatorüberladung
- Reguläre Ausdrücke
- Organisation von Python-Code bei umfangreichen Projekten
- Packages
- import
- list, tuple, dict (Zusammenfassung aus "Python-Einführung"
- list, tuple dict, set (advanced features):
- List Comprehensions
- Generator-Ausdrücke
- Iteratoren
- Mengen (sets)
- dict: update, get, setdefault, pop, items
- Funktionsparameter
- Parameter-Defaults
- Funktionen mit beliebig langen Parameterlisten
- Packen und Entpacken von Listen, Tupeln und Dictionaries
- als Sequenzen von Funktionsparametern
- Typumwandlungen der Grunddatentypen
- int, float, str, dict, list, tuple, set
- Verschachtelte Collections
- Result sets, list of dictionaries
- Dateien, Objektserialisierung und Objektbanken
- file
- shelf als Beispiel von pickle-Anwendung
- Python-Klassen (Python-Typen)
- object methods
- static methods
- class methods
- get/set methods (Vergleich mit JavaBeans)
- properties
- filigrane Zugriffsrechte auf Objektattribute
- (Vergleich mit Java-Zugriffsrechten)
- Operatorenüberladung
- list-like objects
- dictionary-like objects
- callable objects
- Vererbung
- Exceptions
- Eigene Fehlerklassen modellieren
- Eigene Fehlerobjekte in Methoden einbauen
- Das Dokumentationssystem von Python
- das Objektattribut __doc__ (docstring)
- reStructuredText als Syntax von docstring
- automatische Generierung von Dokumentation (epydoc)
- Python UnitTests (eine kurze Einführung)
- der Zusammenhang von UnitTests und docstrings
- der Python-Interpreter als Betriebssystem
- die Module os, sys, shutils
- Graphische Benutzeroberfläche (GUI) (eine kurze Einführung)
- SQL-Datenbankanbindung mit Python (kurze Beispiele)
- Threads (eine kurze Einführung)
- Python SQLite
- neue Tabellen anlegen
- Daten in die Tabelle einfügen
- Daten abfragen
- update
- Datentypen in SQLite
- Adapter und Konvertierer
- Die Einheitliche Python-DB-API
- Python und MySQL (MySQLdb)
- Python und Oracle
- Python und ODBC
- ZODB als selbständige Datenbank installieren (ohne Zope)
- Die Erfüllung von Datenbank-Standards (ACID) durch die ZODB
- Atomicity
- Consistency
- Isolation
- Durability
- Die hierarchische Objektstruktur der ZODB
- Persistenzregeln beim Update von Veränderungen an ZODB-Objekten
- Persistente Objektreferenzen in der ZODB
- Hinweis auf advanced features: mounting, distributing
- Eine einfache Anwendung als Beispiel
- SQLAlchemy als Brücke zwischen ZODB und SQL-Datenbanken
- Einführung in Python
- Syntax von Python
- Die Help-Funktion
- Kommentare
- Allgemeine Datentypen
- int, float, Decimal, bool, string
- Konvertierungen zwischen Datentypen
- Logische und arithmetische Operatoren
- Formatierte Ausgaben mit format()
- Funktionen, Parameterübergabe
- Die pass-Anweisung
- Lambda-Expressions
- Übungen zur Programmlogik
- Viele ausgewählte Übungen
- Schleifen: for und while
- Die range-Funktion
- Bedingungen: if, elif, else
- Übungen zu verbesserter Performance
- Objektorientierte Programmierung
- Einstieg in objektorientierte Programmierung
- Datenkapselung, Vererbung, Polymorphie
- Klassen und Objekte
- Die Klasse Object
- Mehrfachvererbung
- Überschreiben von Methoden der Basisklasse
- Viele Übungen: eigene Klassen schreiben
- Exceptionhandling in Python
- Die Klasse Exception
- try / except / finally
- Erstellen einer eigenen Fehlerklasse
- Weitere optionale Themen
- Dateien lesen und schreiben
- Operatorüberladung
- Reguläre Ausdrücke
- Intelligente Agenten
- Struktur von Agenten, Agentenprogramm, Agentenfunktion
- Agenten-Grundtypen
- Modellbasierter Reflexagent
- Lernender Agent
- Maschinelles Lernen
- Lernformen: nicht überwachtes Lernen, verstärkendes Lernen, überwachtes Lernen
- Lernen aus Beispielen
- Trainingsmenge versus Testmenge
- Generalisierungsfähigkeit der gelernten Abbildung
- Problem der Überanpassung
- Neuronale Netze, Multi Layer Perceptrons
- Vom biologischen zum technischen Neuron
- Perceptron
- Nichtlineare Aktivierungsfunktionen
- Multi-Layer-Perceptrons (mehrschichtige neuronale Netze)
- Lernalgorithmus "Backpropagation of Error"
- Beispiele zu Regression und Klassifikation mit Multi Layer Perceptrons
- praktische Tipps
- deep learning
- Beispiele und Demos zu deep learning
- Neuronale Netze, Convolutional Neural Networks (CNN)
- Grundidee und Topologie CNN
- Beispiele und Demos zu Convolutional Neural Networks / Deep Learning
- Neuronale Netze, Recurrent Neural Networks (RNN, LSTM)
- Grundidee und Topologie RNN
- Lernalgorithmus "Backpropagation Through Time"
- Long Short-Term Memory Networks (LSTM)
- Beispiele und Demos zu RNN und LSTM
- Support-Vektor-Maschinen
- Grundidee und Unterschied zu Neuronalen Netzen
- Kernel-Trick zur Garantie der Linearen Separierbarkeit in höheren Dimensionen
- Beispiele und Demos zu Support Vector Machines
- Praktische Tipps
- Hinweise zu Tools, Internet-Quellen und Literatur
- Diskussion spezifischer Fragestellungen aus der beruflichen Praxis
- Installation Python für Windows
- Installation TensorFlow für Windows
- Installation weiterer nützlicher Python-Packages
- Jupyter Notebooks
- Zahlen, Vektoren, Matrizen und Tensoren
- "Hello world!" mit TensorFlow
- Multi-Layer-Perceptrons (MLP) mit TensorFlow
- Multi-Layer-Perceptrons (MLP) mit TensorFlow Keras
- Convolutional Neural Networks (CNN) mit TensorFlow Keras
- Visualisierung mit TensorBoard
- Diskussion spezifischer Fragestellungen aus der beruflichen Praxis
Coming Soon…
Coming Soon…
Coming Soon…
- Grundlagen der beschreibenden Statistik
- Stichprobe versus Gesamtheit
- statistische Skalen: nominal, ordinal, metrisch
- relative Häufigkeiten und kumulierte relative Häufigkeiten, empirische Verteilungsfunktion
- Histogramm für klassierte Daten
- Lagemaße: arithmetisches Mittel, Median, Quantile
- Box-Whisker-Plot
- Streuungsmaße: Varianz und Standardabweichung
- zweidimensionale Datensätze, Streudiagramm
- Zusammenhangsmaße: Korrelation
- Lineare Regression
- Grundlagen der schließenden Statistik
- Schließen von der Stichprobe auf die Gesamtheit
- Wahrscheinlichkeit versus relative Häufigkeit
- diskrete und stetige Zufallsvariablen
- Gaußkurve, Normalverteilung
- Vertrauensbereich, Konfidenzintervalle
- Grundlagen der Hypothesentests (Nullhypothese, Alternativhypothese, Signifikanzniveau)
- Hypothesentest-Typen (Mittelwerttest, Anteilstest, Unabhängigkeitstest, F-Test als Gesamtmodell-Test, t-Test) und Anwendungsbereiche
- Ausblick: einfaktorielle Varianzanalyse
- Diskussion spezifischer Fragestellungen aus der beruflichen Praxis
- Einführung
- Kurzer Hintergrund zu Python und Anaconda
- Installieren von neuen Paketen
- Die Entwicklungsumgebung (IDE) Spyder
- Aspekte von Python, die anders als in anderen Programmiersprachen sind
- Datenstrukturen in Python
- Unterschied Funktionen vs. Methoden
- Datenstrukturen in Python (number, tuple, list, dictionary, string)
- Überblick und wichtige Methoden zu den Datenstrukturen
- Unterschied list vs. tuple
- Die Besonderheit des Wertes NaN
- Wann benutze ich welche Klammer [], (), {}?
- List comprehension
- Einführung in das Data Science Paket pandas
- Elemente eines pandas data.frame
- Eine Zeile ansprechen, hinzufügen, löschen und verändern
- Eine Spalte ansprechen, hinzufügen, löschen und verändern
- Boolean indexing
- Ein leeres data.frame erstellen
- Überblick über Methoden, ein data.frame anzupassen (Spaltennamen ändern, Werte ersetzen, ein data.frame sortieren, ein data.frame nach einer kategorischen Variable gruppieren, randomisiert Zeilen aus einem data.frame auswählen)
- Grundlegende Statistiken mit pandas
- Überblick über Statistiken, die ich mit einem data.frame berechnen kann (Anzahl an gültigen Beobachtungen, Summe, Mittelwert, Median, Minimum, Maximum, Varianz,...)
- Eine Kreuztabelle (Kontingenztafel) berechnen
- Fehlende Werte ergänzen
- Logische Operatoren
- Daten einlesen
- Das Arbeitsverzeichnis in Python setzen
- Ein CSV einlesen und schreiben und Überblick über die nützlichsten Parameter hierfür
- Python's pickle modul zum Speichern von Python Objekten
- Verschiedene Datentypen konvertieren (integer, unsigned integer, float, string)
- Visualisierung mit matplotlib und seaborn
- Die Hauptelemente beim Plotten mit matplotlib
- Einen Plot anpassen (x- und y-Achse ändern, Beschriftungen, Legende und Titel ändern) und speichern
- Auswahl von Farben
- Subplots erstellen
- Erstellen von Scatterplot, Linienplot, Barplot, (gruppiertes) Histogram, Boxplot
- Control Flows
- Die range() Funktion
- Eine eigene Funktion schreiben
- Default Parameter in einer Funktion setzen
- For Schleifen
- If-Else Bedingungen
- While Schleife
- Logische Vergleichsoperatoren
- Zuweisungsoperatoren
- Überblick über Machine Learning
- Was ist Machine Learning
- Die Einteilung von Algorithmen im Machine Learning (supervised Learning - unsupervised learning - reinforcement learning)
- Overfitting, Train-Test-Split und cross-validation (Kreuzvalidierung)
- Machine Learning Algorithmen (Theorie und Praxis)
- Einführung in den Algorithmus (Lineare Regression, Entscheidungsbaum, Logistische)
- Train-Test Split der Daten
- Umsetzung des Algorithmus in Python
- Validieren der Ergebnisse (u.a. confusion matrix, sensitivity, accuracy)
- Cross-validation (Kreuzvalidierung)
- Weitere Machine Learning Algorithmen in Python
- Erklärung von (SVM), Random Forest und K-means
- Umsetzung dieser Algorithmen in Python
- Validieren der Ergebnisse
- Cross-validation (Kreuzvalidierung)
- Informationssysteme und Kennzahlen
- Data-Warehouse-Systeme
- Relationale Datenmodelle
- Entity-Relationship-Modell
- Normalformen & Historisierung
- Dimensionale Datenmodelle
- Agile dimensionale Modellierung
- Star- und Snowflake-Schema
- Modellierung mit ADAPT
- Data-Vault-Datenmodelle
- Modellierung von Fachlogik
- NoSQL-Datenmodelle
- Daten ziehen und aufbereiten
- Dateien im Verzeichnis ansteuern
- Standardverfahren zum Lesen/Schreiben von Text- und CSV-Dateien
- SQL-Datenbanken ansteuern
- Arbeiten mit Datenmatrizen: Einführung in Numpy & Pandas
- Daten inspizieren und beschreiben
- Fehlende Werte behandeln
- Machine Learning Grundlagen
- Grundlagen, Varianten und Techniken des Machine Learnings.
- Arbeiten mit der Machine Learning Bibliothek scikit-learn.
- Einfache Zusammenhänge zwischen stetigen Variablen modellieren: Lineare Regression
- Klassifizieren mit Logistic Regression, Softmax und Support Vector Machine.
- Modellen evaluieren: Accuracy, Precision, Recall & Confusion matrix
- Unterteilen der Daten in Trainings- und Testdaten
- Feature-Extraction
- Kategoriale Daten vorbereiten: One-Hot Codierung
- Standardisierung von Daten
- Dimensionsreduktion mit PCA (Principle Component Analysis)
- Aufbereitung von Textdaten: Tokenizer und Bag-of-words.
- Machine Learning Workflow
- Daten aufarbeiten und zusammenführen (DataMapper)
- Pipelines einrichten
- Speichern und laden trainierter Klassifizierer
- Organisation von Python-Code bei umfangreichen Projekten
- Packages
- import
- list, tuple, dict (Zusammenfassung aus "Python-Einführung"
- list, tuple dict, set (advanced features):
- List Comprehensions
- Generator-Ausdrücke
- Iteratoren
- Mengen (sets)
- dict: update, get, setdefault, pop, items
- Funktionsparameter
- Parameter-Defaults
- Funktionen mit beliebig langen Parameterlisten
- Packen und Entpacken von Listen, Tupeln und Dictionaries
- als Sequenzen von Funktionsparametern
- Typumwandlungen der Grunddatentypen
- int, float, str, dict, list, tuple, set
- Verschachtelte Collections
- Result sets, list of dictionaries
- Dateien, Objektserialisierung und Objektbanken
- file
- shelf als Beispiel von pickle-Anwendung
- Python-Klassen (Python-Typen)
- object methods
- static methods
- class methods
- get/set methods (Vergleich mit JavaBeans)
- properties
- filigrane Zugriffsrechte auf Objektattribute
- (Vergleich mit Java-Zugriffsrechten)
- Operatorenüberladung
- list-like objects
- dictionary-like objects
- callable objects
- Vererbung
- Exceptions
- Eigene Fehlerklassen modellieren
- Eigene Fehlerobjekte in Methoden einbauen
- Das Dokumentationssystem von Python
- das Objektattribut __doc__ (docstring)
- reStructuredText als Syntax von docstring
- automatische Generierung von Dokumentation (epydoc)
- Python UnitTests (eine kurze Einführung)
- der Zusammenhang von UnitTests und docstrings
- der Python-Interpreter als Betriebssystem
- die Module os, sys, shutils
- Graphische Benutzeroberfläche (GUI) (eine kurze Einführung)
- SQL-Datenbankanbindung mit Python (kurze Beispiele)
- Threads (eine kurze Einführung)
- Python SQLite
- neue Tabellen anlegen
- Daten in die Tabelle einfügen
- Daten abfragen
- update
- Datentypen in SQLite
- Adapter und Konvertierer
- Die Einheitliche Python-DB-API
- Python und MySQL (MySQLdb)
- Python und Oracle
- Python und ODBC
- ZODB als selbständige Datenbank installieren (ohne Zope)
- Die Erfüllung von Datenbank-Standards (ACID) durch die ZODB
- Atomicity
- Consistency
- Isolation
- Durability
- Die hierarchische Objektstruktur der ZODB
- Persistenzregeln beim Update von Veränderungen an ZODB-Objekten
- Persistente Objektreferenzen in der ZODB
- Hinweis auf advanced features: mounting, distributing
- Eine einfache Anwendung als Beispiel
- SQLAlchemy als Brücke zwischen ZODB und SQL-Datenbanken
- Wie lernen Neuronale Netze?
- Variablen, Modelle und Zusammenhänge
- Künstliche Neuronen und neuronale Netze
- Mathematische Grundlagen des Anlernprozesses: Backpropagation, Loss und Gradient Descent
- Neuronale Netze mit Keras aufbauen und trainieren
- Graphen mit Tensorflow erstellen
- Ein einfaches Netz mit Keras und Tensorflow aufbauen und anlernen
- Welches Modell ist das richtige? Evaluation und Anpassung angelernter Modelle.
- Einsatz angelernter Modelle zur Klassifzierung und Schätzung
- Modelle speichern und laden
- Overfitting mit Dropout-Layern verhindern
- Überwachung des Anlernprozesses mit TensorBoard
- Maschinelles Sehen: Konvolutionale neuronale Netze (CNN)
- Bilddateien als mehrdimensionale Matrizen
- Details sehen und Formen abstrahieren: Konvolutionale Netze (CNN)
- Konvolutionale Layer mit Keras aufbauen und anlernen
- Vortrainierte Layer einsetzen
- Mit Sequenzdaten arbeiten: Rekurrente neuronale Netze (RNN)
- Zeitreihendaten und Textsequenzen: Eigenschaften und Eigenheiten
- Neuronale Netze mit Gedächtnis (Feedforward vs. RNN)
- Sequenzdaten mit LSTM (Long Short-Term Memory) aufbauen
- Textdaten mit Embedding-Layers interpretieren
- Feature Extraction: Numerische Daten, Bild und Text-Daten vorbereiten
- Datenrepräsentation: Skalare, Vektoren & Matrizen in Numpy
- Daten einlesen und vorbereiten mit Pandas, Scikit-learn und Keras
- Qualitativer Variablen und Dummy-Sets
- Standardisierung von Daten
- Dimensionsreduktion mit PCA
- Bilddateien transformieren
- Mit Textdaten arbeiten: Zerlegen, tokenizieren, vektorisieren und einbetten.
- Einführung
- Kurzer Hintergrund zu Python und Anaconda
- Installieren von neuen Paketen
- Die Entwicklungsumgebung (IDE) Spyder
- Aspekte von Python, die anders als in anderen Programmiersprachen sind
- Datenstrukturen in Python
- Unterschied Funktionen vs. Methoden
- Datenstrukturen in Python (number, tuple, list, dictionary, string)
- Überblick und wichtige Methoden zu den Datenstrukturen
- Unterschied list vs. tuple
- Die Besonderheit des Wertes NaN
- Wann benutze ich welche Klammer [], (), {}?
- List comprehension
- Einführung in das Data Science Paket pandas
- Elemente eines pandas data.frame
- Eine Zeile ansprechen, hinzufügen, löschen und verändern
- Eine Spalte ansprechen, hinzufügen, löschen und verändern
- Boolean indexing
- Ein leeres data.frame erstellen
- Überblick über Methoden, ein data.frame anzupassen (Spaltennamen ändern, Werte ersetzen, ein data.frame sortieren, ein data.frame nach einer kategorischen Variable gruppieren, randomisiert Zeilen aus einem data.frame auswählen)
- Grundlegende Statistiken mit pandas
- Überblick über Statistiken, die ich mit einem data.frame berechnen kann (Anzahl an gültigen Beobachtungen, Summe, Mittelwert, Median, Minimum, Maximum, Varianz,...)
- Eine Kreuztabelle (Kontingenztafel) berechnen
- Fehlende Werte ergänzen
- Logische Operatoren
- Daten einlesen
- Das Arbeitsverzeichnis in Python setzen
- Ein CSV einlesen und schreiben und Überblick über die nützlichsten Parameter hierfür
- Python's pickle modul zum Speichern von Python Objekten
- Verschiedene Datentypen konvertieren (integer, unsigned integer, float, string)
- Visualisierung mit matplotlib und seaborn
- Die Hauptelemente beim Plotten mit matplotlib
- Einen Plot anpassen (x- und y-Achse ändern, Beschriftungen, Legende und Titel ändern) und speichern
- Auswahl von Farben
- Subplots erstellen
- Erstellen von Scatterplot, Linienplot, Barplot, (gruppiertes) Histogram, Boxplot
- Control Flows
- Die range() Funktion
- Eine eigene Funktion schreiben
- Default Parameter in einer Funktion setzen
- For Schleifen
- If-Else Bedingungen
- While Schleife
- Logische Vergleichsoperatoren
- Zuweisungsoperatoren
- Überblick über Machine Learning
- Was ist Machine Learning
- Die Einteilung von Algorithmen im Machine Learning (supervised Learning - unsupervised learning - reinforcement learning)
- Overfitting, Train-Test-Split und cross-validation (Kreuzvalidierung)
- Machine Learning Algorithmen (Theorie und Praxis)
- Einführung in den Algorithmus (Lineare Regression, Entscheidungsbaum, Logistische)
- Train-Test Split der Daten
- Umsetzung des Algorithmus in Python
- Validieren der Ergebnisse (u.a. confusion matrix, sensitivity, accuracy)
- Cross-validation (Kreuzvalidierung)
- Weitere Machine Learning Algorithmen in Python
- Erklärung von (SVM), Random Forest und K-means
- Umsetzung dieser Algorithmen in Python
- Validieren der Ergebnisse
- Cross-validation (Kreuzvalidierung)
- Pandas im Überblick
- Datenaufbereitung
- Datenaggregation
- Datenvisualisierung
- Einführung in Pandas
- Aggregatfunktionen
- Zeitreihen
- Geodaten
- Best Practices
- Big Data - Konzeptuelle Grundlagen
- Einführung
- Klassifizierung von Methoden
- überwachtes und unüberwachtes Lernen
- Big Data - Grundlegende Tools
- Apache Hadoop
- Hadoop distributed File System (HDFS)
- SQL/NoSQL Abfragen
- AWS Setup für Big Data
- AWS Services für Big Data
- Apache Hadoop und Amazon EMR
- Installation und Konfiguration einesAmazon EMR Clusters
- Programmierframeworks für Amazon EMR (z.B.Hive, Pig, usw.)
- Hadoop User Experience (HUE)
- AWS Datenverarbeitung
- In-Memory Datenanalyse mit Apache Spark und Amazon EMR
- AWS Datenspeicherung
- (Fast) Realtime Datenverarbeitung mit AWS Kinesis
- Effiziente Datenspeicherung und Datenanalyse mit Amazon Redshift
- Kosten,
- -Sicherheit und Visualisierung
- AWS Abrechnungsmodelle
- IT-Sicherheit und AWS Big-Data Anwendungen
- Interaktive Datenabfrage- und Analyse mit Amazon Athena
- Automatisiertes extrahieren, transformieren und laden von Daten mittels AWS Glue
- Visualisierung von Daten und Abfragen via Amazon QuickSight
- Einführung, Überblick
- iPython und Jupyter
- JupyterHub
- nbconvert und nbviewer
- Kernels
- Notebooks erweitern
- Widgets
- nbextensions
- Dashboards
- Notebooks einbetten
- Praxis mit Jupyter
- Reproduzierbare Notebooks
- Parametrisierung
- Zeitplanung
- Refactoring
- Intelligente Agenten
- Struktur von Agenten, Agentenprogramm, Agentenfunktion
- Agenten-Grundtypen
- Modellbasierter Reflexagent
- Lernender Agent
- Maschinelles Lernen
- Lernformen: nicht überwachtes Lernen, verstärkendes Lernen, überwachtes Lernen
- Lernen aus Beispielen
- Trainingsmenge versus Testmenge
- Generalisierungsfähigkeit der gelernten Abbildung
- Problem der Überanpassung
- Neuronale Netze, Multi Layer Perceptrons
- Vom biologischen zum technischen Neuron
- Perceptron
- Nichtlineare Aktivierungsfunktionen
- Multi-Layer-Perceptrons (mehrschichtige neuronale Netze)
- Lernalgorithmus "Backpropagation of Error"
- Beispiele zu Regression und Klassifikation mit Multi Layer Perceptrons
- praktische Tipps
- deep learning
- Beispiele und Demos zu deep learning
- Neuronale Netze, Convolutional Neural Networks (CNN)
- Grundidee und Topologie CNN
- Beispiele und Demos zu Convolutional Neural Networks / Deep Learning
- Neuronale Netze, Recurrent Neural Networks (RNN, LSTM)
- Grundidee und Topologie RNN
- Lernalgorithmus "Backpropagation Through Time"
- Long Short-Term Memory Networks (LSTM)
- Beispiele und Demos zu RNN und LSTM
- Support-Vektor-Maschinen
- Grundidee und Unterschied zu Neuronalen Netzen
- Kernel-Trick zur Garantie der Linearen Separierbarkeit in höheren Dimensionen
- Beispiele und Demos zu Support Vector Machines
- Praktische Tipps
- Hinweise zu Tools, Internet-Quellen und Literatur
- Diskussion spezifischer Fragestellungen aus der beruflichen Praxis
- Vorstellung des Tools und seiner Varianten
- Anbindung von Datenquellen
- Unterschiede Extrakt- und Live-Datenquellen
- Optional: Erstellung von Serverdatenquellen zur gemeinsamen Nutzung
- Ebenen der Datenfilterung
- Erstellung von Visualisierungen
- Zeitliche und geographischen Datenanalyse
- Unterschied diskrete und fortlaufende Dimensionen
- Formelerstellung und Berechnungen
- Berechnungskontexte: Level-of-Detail-Ausdrücke
- Erstellung von Gruppen und Sets
- Erstellung von Dashboards
- Erstellung von Stories
- Verknüpfung unterschiedlicher Datenquellen: Join und Blending
Coming Soon…
- Installation Python für Windows
- Installation TensorFlow für Windows
- Installation weiterer nützlicher Python-Packages
- Jupyter Notebooks
- Zahlen, Vektoren, Matrizen und Tensoren
- "Hello world!" mit TensorFlow
- Multi-Layer-Perceptrons (MLP) mit TensorFlow
- Multi-Layer-Perceptrons (MLP) mit TensorFlow Keras
- Convolutional Neural Networks (CNN) mit TensorFlow Keras
- Visualisierung mit TensorBoard
- Diskussion spezifischer Fragestellungen aus der beruflichen Praxis
- Daten ziehen und aufbereiten
- Dateien im Verzeichnis ansteuern
- Standardverfahren zum Lesen/Schreiben von Text- und CSV-Dateien
- SQL-Datenbanken ansteuern
- Arbeiten mit Datenmatrizen: Einführung in Numpy & Pandas
- Daten inspizieren und beschreiben
- Fehlende Werte behandeln
- Machine Learning Grundlagen
- Grundlagen, Varianten und Techniken des Machine Learnings.
- Arbeiten mit der Machine Learning Bibliothek scikit-learn.
- Einfache Zusammenhänge zwischen stetigen Variablen modellieren: Lineare Regression
- Klassifizieren mit Logistic Regression, Softmax und Support Vector Machine.
- Modellen evaluieren: Accuracy, Precision, Recall & Confusion matrix
- Unterteilen der Daten in Trainings- und Testdaten
- Feature-Extraction
- Kategoriale Daten vorbereiten: One-Hot Codierung
- Standardisierung von Daten
- Dimensionsreduktion mit PCA (Principle Component Analysis)
- Aufbereitung von Textdaten: Tokenizer und Bag-of-words.
- Machine Learning Workflow
- Daten aufarbeiten und zusammenführen (DataMapper)
- Pipelines einrichten
- Speichern und laden trainierter Klassifizierer
- Organisation von Python-Code bei umfangreichen Projekten
- Packages
- import
- list, tuple, dict (Zusammenfassung aus "Python-Einführung"
- list, tuple dict, set (advanced features):
- List Comprehensions
- Generator-Ausdrücke
- Iteratoren
- Mengen (sets)
- dict: update, get, setdefault, pop, items
- Funktionsparameter
- Parameter-Defaults
- Funktionen mit beliebig langen Parameterlisten
- Packen und Entpacken von Listen, Tupeln und Dictionaries
- als Sequenzen von Funktionsparametern
- Typumwandlungen der Grunddatentypen
- int, float, str, dict, list, tuple, set
- Verschachtelte Collections
- Result sets, list of dictionaries
- Dateien, Objektserialisierung und Objektbanken
- file
- shelf als Beispiel von pickle-Anwendung
- Python-Klassen (Python-Typen)
- object methods
- static methods
- class methods
- get/set methods (Vergleich mit JavaBeans)
- properties
- filigrane Zugriffsrechte auf Objektattribute
- (Vergleich mit Java-Zugriffsrechten)
- Operatorenüberladung
- list-like objects
- dictionary-like objects
- callable objects
- Vererbung
- Exceptions
- Eigene Fehlerklassen modellieren
- Eigene Fehlerobjekte in Methoden einbauen
- Das Dokumentationssystem von Python
- das Objektattribut __doc__ (docstring)
- reStructuredText als Syntax von docstring
- automatische Generierung von Dokumentation (epydoc)
- Python UnitTests (eine kurze Einführung)
- der Zusammenhang von UnitTests und docstrings
- der Python-Interpreter als Betriebssystem
- die Module os, sys, shutils
- Graphische Benutzeroberfläche (GUI) (eine kurze Einführung)
- SQL-Datenbankanbindung mit Python (kurze Beispiele)
- Threads (eine kurze Einführung)
- Python SQLite
- neue Tabellen anlegen
- Daten in die Tabelle einfügen
- Daten abfragen
- update
- Datentypen in SQLite
- Adapter und Konvertierer
- Die Einheitliche Python-DB-API
- Python und MySQL (MySQLdb)
- Python und Oracle
- Python und ODBC
- ZODB als selbständige Datenbank installieren (ohne Zope)
- Die Erfüllung von Datenbank-Standards (ACID) durch die ZODB
- Atomicity
- Consistency
- Isolation
- Durability
- Die hierarchische Objektstruktur der ZODB
- Persistenzregeln beim Update von Veränderungen an ZODB-Objekten
- Persistente Objektreferenzen in der ZODB
- Hinweis auf advanced features: mounting, distributing
- Eine einfache Anwendung als Beispiel
- SQLAlchemy als Brücke zwischen ZODB und SQL-Datenbanken
- Data-Warehouse-Architekturen
- Datenmodelle
- Data-Warehouse-Prozesse
- Reporting und Analyse
- Moderne Datenhaltungskonzepte
- Big-Data-Architekturen
- Data Lake und Big Data Warehouse
- Grundlagen der beschreibenden Statistik
- Stichprobe versus Gesamtheit
- statistische Skalen: nominal, ordinal, metrisch
- relative Häufigkeiten und kumulierte relative Häufigkeiten, empirische Verteilungsfunktion
- Histogramm für klassierte Daten
- Lagemaße: arithmetisches Mittel, Median, Quantile
- Box-Whisker-Plot
- Streuungsmaße: Varianz und Standardabweichung
- zweidimensionale Datensätze, Streudiagramm
- Zusammenhangsmaße: Korrelation
- Lineare Regression
- Grundlagen der schließenden Statistik
- Schließen von der Stichprobe auf die Gesamtheit
- Wahrscheinlichkeit versus relative Häufigkeit
- diskrete und stetige Zufallsvariablen
- Gaußkurve, Normalverteilung
- Vertrauensbereich, Konfidenzintervalle
- Grundlagen der Hypothesentests (Nullhypothese, Alternativhypothese, Signifikanzniveau)
- Hypothesentest-Typen (Mittelwerttest, Anteilstest, Unabhängigkeitstest, F-Test als Gesamtmodell-Test, t-Test) und Anwendungsbereiche
- Ausblick: einfaktorielle Varianzanalyse
- Diskussion spezifischer Fragestellungen aus der beruflichen Praxis
- Excel: Statistik mit den Analyse-Funktionen
- Excel: Statistik mit den Formeln
- Excel: Statistik mit den Diagrammen
- Fallstudie, Berechnung von statistischen Kennzahlen
- Fallstudie, Darstellung von statistischen Diagrammen
- Unterschiede in den verschiedenen Excel-Versionen
- Diskussion spezifischer Fragestellungen aus der beruflichen Praxis
- Wie lernen Neuronale Netze?
- Variablen, Modelle und Zusammenhänge
- Künstliche Neuronen und neuronale Netze
- Mathematische Grundlagen des Anlernprozesses: Backpropagation, Loss und Gradient Descent
- Neuronale Netze mit Keras aufbauen und trainieren
- Graphen mit Tensorflow erstellen
- Ein einfaches Netz mit Keras und Tensorflow aufbauen und anlernen
- Welches Modell ist das richtige? Evaluation und Anpassung angelernter Modelle.
- Einsatz angelernter Modelle zur Klassifzierung und Schätzung
- Modelle speichern und laden
- Overfitting mit Dropout-Layern verhindern
- Überwachung des Anlernprozesses mit TensorBoard
- Maschinelles Sehen: Konvolutionale neuronale Netze (CNN)
- Bilddateien als mehrdimensionale Matrizen
- Details sehen und Formen abstrahieren: Konvolutionale Netze (CNN)
- Konvolutionale Layer mit Keras aufbauen und anlernen
- Vortrainierte Layer einsetzen
- Mit Sequenzdaten arbeiten: Rekurrente neuronale Netze (RNN)
- Zeitreihendaten und Textsequenzen: Eigenschaften und Eigenheiten
- Neuronale Netze mit Gedächtnis (Feedforward vs. RNN)
- Sequenzdaten mit LSTM (Long Short-Term Memory) aufbauen
- Textdaten mit Embedding-Layers interpretieren
- Feature Extraction: Numerische Daten, Bild und Text-Daten vorbereiten
- Datenrepräsentation: Skalare, Vektoren & Matrizen in Numpy
- Daten einlesen und vorbereiten mit Pandas, Scikit-learn und Keras
- Qualitativer Variablen und Dummy-Sets
- Standardisierung von Daten
- Dimensionsreduktion mit PCA
- Bilddateien transformieren
- Mit Textdaten arbeiten: Zerlegen, tokenizieren, vektorisieren und einbetten.
- Einführung in Python
- Syntax von Python
- Die Help-Funktion
- Kommentare
- Allgemeine Datentypen
- int, float, Decimal, bool, string
- Konvertierungen zwischen Datentypen
- Logische und arithmetische Operatoren
- Formatierte Ausgaben mit format()
- Funktionen, Parameterübergabe
- Die pass-Anweisung
- Lambda-Expressions
- Übungen zur Programmlogik
- Viele ausgewählte Übungen
- Schleifen: for und while
- Die range-Funktion
- Bedingungen: if, elif, else
- Übungen zu verbesserter Performance
- Objektorientierte Programmierung
- Einstieg in objektorientierte Programmierung
- Datenkapselung, Vererbung, Polymorphie
- Klassen und Objekte
- Die Klasse Object
- Mehrfachvererbung
- Überschreiben von Methoden der Basisklasse
- Viele Übungen: eigene Klassen schreiben
- Exceptionhandling in Python
- Die Klasse Exception
- try / except / finally
- Erstellen einer eigenen Fehlerklasse
- Weitere optionale Themen
- Dateien lesen und schreiben
- Operatorüberladung
- Reguläre Ausdrücke
- Einführung
- Kurzer Hintergrund zu Python und Anaconda
- Installieren von neuen Paketen
- Die Entwicklungsumgebung (IDE) Spyder
- Aspekte von Python, die anders als in anderen Programmiersprachen sind
- Datenstrukturen in Python
- Unterschied Funktionen vs. Methoden
- Datenstrukturen in Python (number, tuple, list, dictionary, string)
- Überblick und wichtige Methoden zu den Datenstrukturen
- Unterschied list vs. tuple
- Die Besonderheit des Wertes NaN
- Wann benutze ich welche Klammer [], (), {}?
- List comprehension
- Einführung in das Data Science Paket pandas
- Elemente eines pandas data.frame
- Eine Zeile ansprechen, hinzufügen, löschen und verändern
- Eine Spalte ansprechen, hinzufügen, löschen und verändern
- Boolean indexing
- Ein leeres data.frame erstellen
- Überblick über Methoden, ein data.frame anzupassen (Spaltennamen ändern, Werte ersetzen, ein data.frame sortieren, ein data.frame nach einer kategorischen Variable gruppieren, randomisiert Zeilen aus einem data.frame auswählen)
- Grundlegende Statistiken mit pandas
- Überblick über Statistiken, die ich mit einem data.frame berechnen kann (Anzahl an gültigen Beobachtungen, Summe, Mittelwert, Median, Minimum, Maximum, Varianz,...)
- Eine Kreuztabelle (Kontingenztafel) berechnen
- Fehlende Werte ergänzen
- Logische Operatoren
- Daten einlesen
- Das Arbeitsverzeichnis in Python setzen
- Ein CSV einlesen und schreiben und Überblick über die nützlichsten Parameter hierfür
- Python's pickle modul zum Speichern von Python Objekten
- Verschiedene Datentypen konvertieren (integer, unsigned integer, float, string)
- Visualisierung mit matplotlib und seaborn
- Die Hauptelemente beim Plotten mit matplotlib
- Einen Plot anpassen (x- und y-Achse ändern, Beschriftungen, Legende und Titel ändern) und speichern
- Auswahl von Farben
- Subplots erstellen
- Erstellen von Scatterplot, Linienplot, Barplot, (gruppiertes) Histogram, Boxplot
- Control Flows
- Die range() Funktion
- Eine eigene Funktion schreiben
- Default Parameter in einer Funktion setzen
- For Schleifen
- If-Else Bedingungen
- While Schleife
- Logische Vergleichsoperatoren
- Zuweisungsoperatoren
- Überblick über Machine Learning
- Was ist Machine Learning
- Die Einteilung von Algorithmen im Machine Learning (supervised Learning - unsupervised learning - reinforcement learning)
- Overfitting, Train-Test-Split und cross-validation (Kreuzvalidierung)
- Machine Learning Algorithmen (Theorie und Praxis)
- Einführung in den Algorithmus (Lineare Regression, Entscheidungsbaum, Logistische)
- Train-Test Split der Daten
- Umsetzung des Algorithmus in Python
- Validieren der Ergebnisse (u.a. confusion matrix, sensitivity, accuracy)
- Cross-validation (Kreuzvalidierung)
- Weitere Machine Learning Algorithmen in Python
- Erklärung von (SVM), Random Forest und K-means
- Umsetzung dieser Algorithmen in Python
- Validieren der Ergebnisse
- Cross-validation (Kreuzvalidierung)
- Einführung und Einbindung von Data Science in einen betriebswirtschaftlichen Rahmen
- Vorgehensmodelle und Zieldefinitionen für Data-Science-Projekte
- Data-Science-Methoden (insbesondere Machine Learning) und Werkzeuge
- Praktische Umsetzung eines Data-Science- Prozesses in einem Tool
- Tipps, Tricks und Kniffe für ein gutes Data-Science-Produkt
- Einführung und Einbindung von Data Science in einen betriebswirtschaftlichen Rahmen
- Vorgehensmodelle und Zieldefinitionen für Data-Science-Projekte
- Data-Science-Methoden (insbesondere Machine Learning) und Werkzeuge
- Praktische Umsetzung eines Data-Science- Prozesses in einem Tool
- Tipps, Tricks und Kniffe für ein gutes Data-Science-Produkt
- Funktionale Programmierung
- Grundlagen der Skriptsprache R
- Entwicklungsumgebung Rstudio
- Grundlegende statistische Verfahren
- Umsetzung exemplarischer Data-Science-Prozesse in R
- Visualisierung und Vorverarbeitung der Daten
- Modellbildung mit aktuellen Machine-Learning-Algorithmen
- Erstellung und Bewertung von Prognosen für typische Anwendungsfälle
- Big Data - Konzeptuelle Grundlagen
- Einführung
- Klassifizierung von Methoden
- überwachtes und unüberwachtes Lernen
- Big Data - Grundlegende Tools
- Apache Hadoop
- Hadoop distributed File System (HDFS)
- SQL/NoSQL Abfragen
- AWS Setup für Big Data
- AWS Services für Big Data
- Apache Hadoop und Amazon EMR
- Installation und Konfiguration einesAmazon EMR Clusters
- Programmierframeworks für Amazon EMR (z.B.Hive, Pig, usw.)
- Hadoop User Experience (HUE)
- AWS Datenverarbeitung
- In-Memory Datenanalyse mit Apache Spark und Amazon EMR
- AWS Datenspeicherung
- (Fast) Realtime Datenverarbeitung mit AWS Kinesis
- Effiziente Datenspeicherung und Datenanalyse mit Amazon Redshift
- Kosten,
- -Sicherheit und Visualisierung
- AWS Abrechnungsmodelle
- IT-Sicherheit und AWS Big-Data Anwendungen
- Interaktive Datenabfrage- und Analyse mit Amazon Athena
- Automatisiertes extrahieren, transformieren und laden von Daten mittels AWS Glue
- Visualisierung von Daten und Abfragen via Amazon QuickSight
- Funktionale Programmierung
- Grundlagen der Skriptsprache R
- Entwicklungsumgebung Rstudio
- Grundlegende statistische Verfahren
- Umsetzung exemplarischer Data-Science-Prozesse in R
- Visualisierung und Vorverarbeitung der Daten
- Modellbildung mit aktuellen Machine-Learning-Algorithmen
- Erstellung und Bewertung von Prognosen für typische Anwendungsfälle
- Pandas im Überblick
- Datenaufbereitung
- Datenaggregation
- Datenvisualisierung
- Einführung in Pandas
- Aggregatfunktionen
- Zeitreihen
- Geodaten
- Best Practices
- Organisation von Python-Code bei umfangreichen Projekten
- Packages
- import
- list, tuple, dict (Zusammenfassung aus "Python-Einführung"
- list, tuple dict, set (advanced features):
- List Comprehensions
- Generator-Ausdrücke
- Iteratoren
- Mengen (sets)
- dict: update, get, setdefault, pop, items
- Funktionsparameter
- Parameter-Defaults
- Funktionen mit beliebig langen Parameterlisten
- Packen und Entpacken von Listen, Tupeln und Dictionaries
- als Sequenzen von Funktionsparametern
- Typumwandlungen der Grunddatentypen
- int, float, str, dict, list, tuple, set
- Verschachtelte Collections
- Result sets, list of dictionaries
- Dateien, Objektserialisierung und Objektbanken
- file
- shelf als Beispiel von pickle-Anwendung
- Python-Klassen (Python-Typen)
- object methods
- static methods
- class methods
- get/set methods (Vergleich mit JavaBeans)
- properties
- filigrane Zugriffsrechte auf Objektattribute
- (Vergleich mit Java-Zugriffsrechten)
- Operatorenüberladung
- list-like objects
- dictionary-like objects
- callable objects
- Vererbung
- Exceptions
- Eigene Fehlerklassen modellieren
- Eigene Fehlerobjekte in Methoden einbauen
- Das Dokumentationssystem von Python
- das Objektattribut __doc__ (docstring)
- reStructuredText als Syntax von docstring
- automatische Generierung von Dokumentation (epydoc)
- Python UnitTests (eine kurze Einführung)
- der Zusammenhang von UnitTests und docstrings
- der Python-Interpreter als Betriebssystem
- die Module os, sys, shutils
- Graphische Benutzeroberfläche (GUI) (eine kurze Einführung)
- SQL-Datenbankanbindung mit Python (kurze Beispiele)
- Threads (eine kurze Einführung)
- Python SQLite
- neue Tabellen anlegen
- Daten in die Tabelle einfügen
- Daten abfragen
- update
- Datentypen in SQLite
- Adapter und Konvertierer
- Die Einheitliche Python-DB-API
- Python und MySQL (MySQLdb)
- Python und Oracle
- Python und ODBC
- ZODB als selbständige Datenbank installieren (ohne Zope)
- Die Erfüllung von Datenbank-Standards (ACID) durch die ZODB
- Atomicity
- Consistency
- Isolation
- Durability
- Die hierarchische Objektstruktur der ZODB
- Persistenzregeln beim Update von Veränderungen an ZODB-Objekten
- Persistente Objektreferenzen in der ZODB
- Hinweis auf advanced features: mounting, distributing
- Eine einfache Anwendung als Beispiel
- SQLAlchemy als Brücke zwischen ZODB und SQL-Datenbanken
- Einführung, Überblick
- iPython und Jupyter
- JupyterHub
- nbconvert und nbviewer
- Kernels
- Notebooks erweitern
- Widgets
- nbextensions
- Dashboards
- Notebooks einbetten
- Praxis mit Jupyter
- Reproduzierbare Notebooks
- Parametrisierung
- Zeitplanung
- Refactoring
- Data-Warehouse-Architekturen
- Datenmodelle
- Data-Warehouse-Prozesse
- Reporting und Analyse
- Moderne Datenhaltungskonzepte
- Big-Data-Architekturen
- Data Lake und Big Data Warehouse
- Intelligente Agenten
- Struktur von Agenten, Agentenprogramm, Agentenfunktion
- Agenten-Grundtypen
- Modellbasierter Reflexagent
- Lernender Agent
- Maschinelles Lernen
- Lernformen: nicht überwachtes Lernen, verstärkendes Lernen, überwachtes Lernen
- Lernen aus Beispielen
- Trainingsmenge versus Testmenge
- Generalisierungsfähigkeit der gelernten Abbildung
- Problem der Überanpassung
- Neuronale Netze, Multi Layer Perceptrons
- Vom biologischen zum technischen Neuron
- Perceptron
- Nichtlineare Aktivierungsfunktionen
- Multi-Layer-Perceptrons (mehrschichtige neuronale Netze)
- Lernalgorithmus "Backpropagation of Error"
- Beispiele zu Regression und Klassifikation mit Multi Layer Perceptrons
- praktische Tipps
- deep learning
- Beispiele und Demos zu deep learning
- Neuronale Netze, Convolutional Neural Networks (CNN)
- Grundidee und Topologie CNN
- Beispiele und Demos zu Convolutional Neural Networks / Deep Learning
- Neuronale Netze, Recurrent Neural Networks (RNN, LSTM)
- Grundidee und Topologie RNN
- Lernalgorithmus "Backpropagation Through Time"
- Long Short-Term Memory Networks (LSTM)
- Beispiele und Demos zu RNN und LSTM
- Support-Vektor-Maschinen
- Grundidee und Unterschied zu Neuronalen Netzen
- Kernel-Trick zur Garantie der Linearen Separierbarkeit in höheren Dimensionen
- Beispiele und Demos zu Support Vector Machines
- Praktische Tipps
- Hinweise zu Tools, Internet-Quellen und Literatur
- Diskussion spezifischer Fragestellungen aus der beruflichen Praxis
- Installation Python für Windows
- Installation TensorFlow für Windows
- Installation weiterer nützlicher Python-Packages
- Jupyter Notebooks
- Zahlen, Vektoren, Matrizen und Tensoren
- "Hello world!" mit TensorFlow
- Multi-Layer-Perceptrons (MLP) mit TensorFlow
- Multi-Layer-Perceptrons (MLP) mit TensorFlow Keras
- Convolutional Neural Networks (CNN) mit TensorFlow Keras
- Visualisierung mit TensorBoard
- Diskussion spezifischer Fragestellungen aus der beruflichen Praxis
- Vorstellung des Tools und seiner Varianten
- Anbindung von Datenquellen
- Unterschiede Extrakt- und Live-Datenquellen
- Optional: Erstellung von Serverdatenquellen zur gemeinsamen Nutzung
- Ebenen der Datenfilterung
- Erstellung von Visualisierungen
- Zeitliche und geographischen Datenanalyse
- Unterschied diskrete und fortlaufende Dimensionen
- Formelerstellung und Berechnungen
- Berechnungskontexte: Level-of-Detail-Ausdrücke
- Erstellung von Gruppen und Sets
- Erstellung von Dashboards
- Erstellung von Stories
- Verknüpfung unterschiedlicher Datenquellen: Join und Blending
- Informationssysteme und Kennzahlen
- Data-Warehouse-Systeme
- Relationale Datenmodelle
- Entity-Relationship-Modell
- Normalformen & Historisierung
- Dimensionale Datenmodelle
- Agile dimensionale Modellierung
- Star- und Snowflake-Schema
- Modellierung mit ADAPT
- Data-Vault-Datenmodelle
- Modellierung von Fachlogik
- NoSQL-Datenmodelle
- Einführung
- Kurzer Hintergrund zu Python und Anaconda
- Installieren von neuen Paketen
- Die Entwicklungsumgebung (IDE) Spyder
- Aspekte von Python, die anders als in anderen Programmiersprachen sind
- Datenstrukturen in Python
- Unterschied Funktionen vs. Methoden
- Datenstrukturen in Python (number, tuple, list, dictionary, string)
- Überblick und wichtige Methoden zu den Datenstrukturen
- Unterschied list vs. tuple
- Die Besonderheit des Wertes NaN
- Wann benutze ich welche Klammer [], (), {}?
- List comprehension
- Einführung in das Data Science Paket pandas
- Elemente eines pandas data.frame
- Eine Zeile ansprechen, hinzufügen, löschen und verändern
- Eine Spalte ansprechen, hinzufügen, löschen und verändern
- Boolean indexing
- Ein leeres data.frame erstellen
- Überblick über Methoden, ein data.frame anzupassen (Spaltennamen ändern, Werte ersetzen, ein data.frame sortieren, ein data.frame nach einer kategorischen Variable gruppieren, randomisiert Zeilen aus einem data.frame auswählen)
- Grundlegende Statistiken mit pandas
- Überblick über Statistiken, die ich mit einem data.frame berechnen kann (Anzahl an gültigen Beobachtungen, Summe, Mittelwert, Median, Minimum, Maximum, Varianz,...)
- Eine Kreuztabelle (Kontingenztafel) berechnen
- Fehlende Werte ergänzen
- Logische Operatoren
- Daten einlesen
- Das Arbeitsverzeichnis in Python setzen
- Ein CSV einlesen und schreiben und Überblick über die nützlichsten Parameter hierfür
- Python's pickle modul zum Speichern von Python Objekten
- Verschiedene Datentypen konvertieren (integer, unsigned integer, float, string)
- Visualisierung mit matplotlib und seaborn
- Die Hauptelemente beim Plotten mit matplotlib
- Einen Plot anpassen (x- und y-Achse ändern, Beschriftungen, Legende und Titel ändern) und speichern
- Auswahl von Farben
- Subplots erstellen
- Erstellen von Scatterplot, Linienplot, Barplot, (gruppiertes) Histogram, Boxplot
- Control Flows
- Die range() Funktion
- Eine eigene Funktion schreiben
- Default Parameter in einer Funktion setzen
- For Schleifen
- If-Else Bedingungen
- While Schleife
- Logische Vergleichsoperatoren
- Zuweisungsoperatoren
- Überblick über Machine Learning
- Was ist Machine Learning
- Die Einteilung von Algorithmen im Machine Learning (supervised Learning - unsupervised learning - reinforcement learning)
- Overfitting, Train-Test-Split und cross-validation (Kreuzvalidierung)
- Machine Learning Algorithmen (Theorie und Praxis)
- Einführung in den Algorithmus (Lineare Regression, Entscheidungsbaum, Logistische)
- Train-Test Split der Daten
- Umsetzung des Algorithmus in Python
- Validieren der Ergebnisse (u.a. confusion matrix, sensitivity, accuracy)
- Cross-validation (Kreuzvalidierung)
- Weitere Machine Learning Algorithmen in Python
- Erklärung von (SVM), Random Forest und K-means
- Umsetzung dieser Algorithmen in Python
- Validieren der Ergebnisse
- Cross-validation (Kreuzvalidierung)
- Daten ziehen und aufbereiten
- Dateien im Verzeichnis ansteuern
- Standardverfahren zum Lesen/Schreiben von Text- und CSV-Dateien
- SQL-Datenbanken ansteuern
- Arbeiten mit Datenmatrizen: Einführung in Numpy & Pandas
- Daten inspizieren und beschreiben
- Fehlende Werte behandeln
- Machine Learning Grundlagen
- Grundlagen, Varianten und Techniken des Machine Learnings.
- Arbeiten mit der Machine Learning Bibliothek scikit-learn.
- Einfache Zusammenhänge zwischen stetigen Variablen modellieren: Lineare Regression
- Klassifizieren mit Logistic Regression, Softmax und Support Vector Machine.
- Modellen evaluieren: Accuracy, Precision, Recall & Confusion matrix
- Unterteilen der Daten in Trainings- und Testdaten
- Feature-Extraction
- Kategoriale Daten vorbereiten: One-Hot Codierung
- Standardisierung von Daten
- Dimensionsreduktion mit PCA (Principle Component Analysis)
- Aufbereitung von Textdaten: Tokenizer und Bag-of-words.
- Machine Learning Workflow
- Daten aufarbeiten und zusammenführen (DataMapper)
- Pipelines einrichten
- Speichern und laden trainierter Klassifizierer
- Wie lernen Neuronale Netze?
- Variablen, Modelle und Zusammenhänge
- Künstliche Neuronen und neuronale Netze
- Mathematische Grundlagen des Anlernprozesses: Backpropagation, Loss und Gradient Descent
- Neuronale Netze mit Keras aufbauen und trainieren
- Graphen mit Tensorflow erstellen
- Ein einfaches Netz mit Keras und Tensorflow aufbauen und anlernen
- Welches Modell ist das richtige? Evaluation und Anpassung angelernter Modelle.
- Einsatz angelernter Modelle zur Klassifzierung und Schätzung
- Modelle speichern und laden
- Overfitting mit Dropout-Layern verhindern
- Überwachung des Anlernprozesses mit TensorBoard
- Maschinelles Sehen: Konvolutionale neuronale Netze (CNN)
- Bilddateien als mehrdimensionale Matrizen
- Details sehen und Formen abstrahieren: Konvolutionale Netze (CNN)
- Konvolutionale Layer mit Keras aufbauen und anlernen
- Vortrainierte Layer einsetzen
- Mit Sequenzdaten arbeiten: Rekurrente neuronale Netze (RNN)
- Zeitreihendaten und Textsequenzen: Eigenschaften und Eigenheiten
- Neuronale Netze mit Gedächtnis (Feedforward vs. RNN)
- Sequenzdaten mit LSTM (Long Short-Term Memory) aufbauen
- Textdaten mit Embedding-Layers interpretieren
- Feature Extraction: Numerische Daten, Bild und Text-Daten vorbereiten
- Datenrepräsentation: Skalare, Vektoren & Matrizen in Numpy
- Daten einlesen und vorbereiten mit Pandas, Scikit-learn und Keras
- Qualitativer Variablen und Dummy-Sets
- Standardisierung von Daten
- Dimensionsreduktion mit PCA
- Bilddateien transformieren
- Mit Textdaten arbeiten: Zerlegen, tokenizieren, vektorisieren und einbetten.
- Einführung in Python
- Syntax von Python
- Die Help-Funktion
- Kommentare
- Allgemeine Datentypen
- int, float, Decimal, bool, string
- Konvertierungen zwischen Datentypen
- Logische und arithmetische Operatoren
- Formatierte Ausgaben mit format()
- Funktionen, Parameterübergabe
- Die pass-Anweisung
- Lambda-Expressions
- Übungen zur Programmlogik
- Viele ausgewählte Übungen
- Schleifen: for und while
- Die range-Funktion
- Bedingungen: if, elif, else
- Übungen zu verbesserter Performance
- Objektorientierte Programmierung
- Einstieg in objektorientierte Programmierung
- Datenkapselung, Vererbung, Polymorphie
- Klassen und Objekte
- Die Klasse Object
- Mehrfachvererbung
- Überschreiben von Methoden der Basisklasse
- Viele Übungen: eigene Klassen schreiben
- Exceptionhandling in Python
- Die Klasse Exception
- try / except / finally
- Erstellen einer eigenen Fehlerklasse
- Weitere optionale Themen
- Dateien lesen und schreiben
- Operatorüberladung
- Reguläre Ausdrücke
- Big Data - Konzeptuelle Grundlagen
- Einführung
- Klassifizierung von Methoden
- überwachtes und unüberwachtes Lernen
- Big Data - Grundlegende Tools
- Apache Hadoop
- Hadoop distributed File System (HDFS)
- SQL/NoSQL Abfragen
- AWS Setup für Big Data
- AWS Services für Big Data
- Apache Hadoop und Amazon EMR
- Installation und Konfiguration einesAmazon EMR Clusters
- Programmierframeworks für Amazon EMR (z.B.Hive, Pig, usw.)
- Hadoop User Experience (HUE)
- AWS Datenverarbeitung
- In-Memory Datenanalyse mit Apache Spark und Amazon EMR
- AWS Datenspeicherung
- (Fast) Realtime Datenverarbeitung mit AWS Kinesis
- Effiziente Datenspeicherung und Datenanalyse mit Amazon Redshift
- Kosten,
- -Sicherheit und Visualisierung
- AWS Abrechnungsmodelle
- IT-Sicherheit und AWS Big-Data Anwendungen
- Interaktive Datenabfrage- und Analyse mit Amazon Athena
- Automatisiertes extrahieren, transformieren und laden von Daten mittels AWS Glue
- Visualisierung von Daten und Abfragen via Amazon QuickSight
- Organisation von Python-Code bei umfangreichen Projekten
- Packages
- import
- list, tuple, dict (Zusammenfassung aus "Python-Einführung"
- list, tuple dict, set (advanced features):
- List Comprehensions
- Generator-Ausdrücke
- Iteratoren
- Mengen (sets)
- dict: update, get, setdefault, pop, items
- Funktionsparameter
- Parameter-Defaults
- Funktionen mit beliebig langen Parameterlisten
- Packen und Entpacken von Listen, Tupeln und Dictionaries
- als Sequenzen von Funktionsparametern
- Typumwandlungen der Grunddatentypen
- int, float, str, dict, list, tuple, set
- Verschachtelte Collections
- Result sets, list of dictionaries
- Dateien, Objektserialisierung und Objektbanken
- file
- shelf als Beispiel von pickle-Anwendung
- Python-Klassen (Python-Typen)
- object methods
- static methods
- class methods
- get/set methods (Vergleich mit JavaBeans)
- properties
- filigrane Zugriffsrechte auf Objektattribute
- (Vergleich mit Java-Zugriffsrechten)
- Operatorenüberladung
- list-like objects
- dictionary-like objects
- callable objects
- Vererbung
- Exceptions
- Eigene Fehlerklassen modellieren
- Eigene Fehlerobjekte in Methoden einbauen
- Das Dokumentationssystem von Python
- das Objektattribut __doc__ (docstring)
- reStructuredText als Syntax von docstring
- automatische Generierung von Dokumentation (epydoc)
- Python UnitTests (eine kurze Einführung)
- der Zusammenhang von UnitTests und docstrings
- der Python-Interpreter als Betriebssystem
- die Module os, sys, shutils
- Graphische Benutzeroberfläche (GUI) (eine kurze Einführung)
- SQL-Datenbankanbindung mit Python (kurze Beispiele)
- Threads (eine kurze Einführung)
- Python SQLite
- neue Tabellen anlegen
- Daten in die Tabelle einfügen
- Daten abfragen
- update
- Datentypen in SQLite
- Adapter und Konvertierer
- Die Einheitliche Python-DB-API
- Python und MySQL (MySQLdb)
- Python und Oracle
- Python und ODBC
- ZODB als selbständige Datenbank installieren (ohne Zope)
- Die Erfüllung von Datenbank-Standards (ACID) durch die ZODB
- Atomicity
- Consistency
- Isolation
- Durability
- Die hierarchische Objektstruktur der ZODB
- Persistenzregeln beim Update von Veränderungen an ZODB-Objekten
- Persistente Objektreferenzen in der ZODB
- Hinweis auf advanced features: mounting, distributing
- Eine einfache Anwendung als Beispiel
- SQLAlchemy als Brücke zwischen ZODB und SQL-Datenbanken
- Einführung
- Kurzer Hintergrund zu Python und Anaconda
- Installieren von neuen Paketen
- Die Entwicklungsumgebung (IDE) Spyder
- Aspekte von Python, die anders als in anderen Programmiersprachen sind
- Datenstrukturen in Python
- Unterschied Funktionen vs. Methoden
- Datenstrukturen in Python (number, tuple, list, dictionary, string)
- Überblick und wichtige Methoden zu den Datenstrukturen
- Unterschied list vs. tuple
- Die Besonderheit des Wertes NaN
- Wann benutze ich welche Klammer [], (), {}?
- List comprehension
- Einführung in das Data Science Paket pandas
- Elemente eines pandas data.frame
- Eine Zeile ansprechen, hinzufügen, löschen und verändern
- Eine Spalte ansprechen, hinzufügen, löschen und verändern
- Boolean indexing
- Ein leeres data.frame erstellen
- Überblick über Methoden, ein data.frame anzupassen (Spaltennamen ändern, Werte ersetzen, ein data.frame sortieren, ein data.frame nach einer kategorischen Variable gruppieren, randomisiert Zeilen aus einem data.frame auswählen)
- Grundlegende Statistiken mit pandas
- Überblick über Statistiken, die ich mit einem data.frame berechnen kann (Anzahl an gültigen Beobachtungen, Summe, Mittelwert, Median, Minimum, Maximum, Varianz,...)
- Eine Kreuztabelle (Kontingenztafel) berechnen
- Fehlende Werte ergänzen
- Logische Operatoren
- Daten einlesen
- Das Arbeitsverzeichnis in Python setzen
- Ein CSV einlesen und schreiben und Überblick über die nützlichsten Parameter hierfür
- Python's pickle modul zum Speichern von Python Objekten
- Verschiedene Datentypen konvertieren (integer, unsigned integer, float, string)
- Visualisierung mit matplotlib und seaborn
- Die Hauptelemente beim Plotten mit matplotlib
- Einen Plot anpassen (x- und y-Achse ändern, Beschriftungen, Legende und Titel ändern) und speichern
- Auswahl von Farben
- Subplots erstellen
- Erstellen von Scatterplot, Linienplot, Barplot, (gruppiertes) Histogram, Boxplot
- Control Flows
- Die range() Funktion
- Eine eigene Funktion schreiben
- Default Parameter in einer Funktion setzen
- For Schleifen
- If-Else Bedingungen
- While Schleife
- Logische Vergleichsoperatoren
- Zuweisungsoperatoren
- Überblick über Machine Learning
- Was ist Machine Learning
- Die Einteilung von Algorithmen im Machine Learning (supervised Learning - unsupervised learning - reinforcement learning)
- Overfitting, Train-Test-Split und cross-validation (Kreuzvalidierung)
- Machine Learning Algorithmen (Theorie und Praxis)
- Einführung in den Algorithmus (Lineare Regression, Entscheidungsbaum, Logistische)
- Train-Test Split der Daten
- Umsetzung des Algorithmus in Python
- Validieren der Ergebnisse (u.a. confusion matrix, sensitivity, accuracy)
- Cross-validation (Kreuzvalidierung)
- Weitere Machine Learning Algorithmen in Python
- Erklärung von (SVM), Random Forest und K-means
- Umsetzung dieser Algorithmen in Python
- Validieren der Ergebnisse
- Cross-validation (Kreuzvalidierung)
- Pandas im Überblick
- Datenaufbereitung
- Datenaggregation
- Datenvisualisierung
- Einführung in Pandas
- Aggregatfunktionen
- Zeitreihen
- Geodaten
- Best Practices
- Einführung, Überblick
- iPython und Jupyter
- JupyterHub
- nbconvert und nbviewer
- Kernels
- Notebooks erweitern
- Widgets
- nbextensions
- Dashboards
- Notebooks einbetten
- Praxis mit Jupyter
- Reproduzierbare Notebooks
- Parametrisierung
- Zeitplanung
- Refactoring
- Vorstellung des Tools und seiner Varianten
- Anbindung von Datenquellen
- Unterschiede Extrakt- und Live-Datenquellen
- Optional: Erstellung von Serverdatenquellen zur gemeinsamen Nutzung
- Ebenen der Datenfilterung
- Erstellung von Visualisierungen
- Zeitliche und geographischen Datenanalyse
- Unterschied diskrete und fortlaufende Dimensionen
- Formelerstellung und Berechnungen
- Berechnungskontexte: Level-of-Detail-Ausdrücke
- Erstellung von Gruppen und Sets
- Erstellung von Dashboards
- Erstellung von Stories
- Verknüpfung unterschiedlicher Datenquellen: Join und Blending
- Data-Warehouse-Architekturen
- Datenmodelle
- Data-Warehouse-Prozesse
- Reporting und Analyse
- Moderne Datenhaltungskonzepte
- Big-Data-Architekturen
- Data Lake und Big Data Warehouse
- Intelligente Agenten
- Struktur von Agenten, Agentenprogramm, Agentenfunktion
- Agenten-Grundtypen
- Modellbasierter Reflexagent
- Lernender Agent
- Maschinelles Lernen
- Lernformen: nicht überwachtes Lernen, verstärkendes Lernen, überwachtes Lernen
- Lernen aus Beispielen
- Trainingsmenge versus Testmenge
- Generalisierungsfähigkeit der gelernten Abbildung
- Problem der Überanpassung
- Neuronale Netze, Multi Layer Perceptrons
- Vom biologischen zum technischen Neuron
- Perceptron
- Nichtlineare Aktivierungsfunktionen
- Multi-Layer-Perceptrons (mehrschichtige neuronale Netze)
- Lernalgorithmus "Backpropagation of Error"
- Beispiele zu Regression und Klassifikation mit Multi Layer Perceptrons
- praktische Tipps
- deep learning
- Beispiele und Demos zu deep learning
- Neuronale Netze, Convolutional Neural Networks (CNN)
- Grundidee und Topologie CNN
- Beispiele und Demos zu Convolutional Neural Networks / Deep Learning
- Neuronale Netze, Recurrent Neural Networks (RNN, LSTM)
- Grundidee und Topologie RNN
- Lernalgorithmus "Backpropagation Through Time"
- Long Short-Term Memory Networks (LSTM)
- Beispiele und Demos zu RNN und LSTM
- Support-Vektor-Maschinen
- Grundidee und Unterschied zu Neuronalen Netzen
- Kernel-Trick zur Garantie der Linearen Separierbarkeit in höheren Dimensionen
- Beispiele und Demos zu Support Vector Machines
- Praktische Tipps
- Hinweise zu Tools, Internet-Quellen und Literatur
- Diskussion spezifischer Fragestellungen aus der beruflichen Praxis
- Installation Python für Windows
- Installation TensorFlow für Windows
- Installation weiterer nützlicher Python-Packages
- Jupyter Notebooks
- Zahlen, Vektoren, Matrizen und Tensoren
- "Hello world!" mit TensorFlow
- Multi-Layer-Perceptrons (MLP) mit TensorFlow
- Multi-Layer-Perceptrons (MLP) mit TensorFlow Keras
- Convolutional Neural Networks (CNN) mit TensorFlow Keras
- Visualisierung mit TensorBoard
- Diskussion spezifischer Fragestellungen aus der beruflichen Praxis
- Organisation von Python-Code bei umfangreichen Projekten
- Packages
- import
- list, tuple, dict (Zusammenfassung aus "Python-Einführung"
- list, tuple dict, set (advanced features):
- List Comprehensions
- Generator-Ausdrücke
- Iteratoren
- Mengen (sets)
- dict: update, get, setdefault, pop, items
- Funktionsparameter
- Parameter-Defaults
- Funktionen mit beliebig langen Parameterlisten
- Packen und Entpacken von Listen, Tupeln und Dictionaries
- als Sequenzen von Funktionsparametern
- Typumwandlungen der Grunddatentypen
- int, float, str, dict, list, tuple, set
- Verschachtelte Collections
- Result sets, list of dictionaries
- Dateien, Objektserialisierung und Objektbanken
- file
- shelf als Beispiel von pickle-Anwendung
- Python-Klassen (Python-Typen)
- object methods
- static methods
- class methods
- get/set methods (Vergleich mit JavaBeans)
- properties
- filigrane Zugriffsrechte auf Objektattribute
- (Vergleich mit Java-Zugriffsrechten)
- Operatorenüberladung
- list-like objects
- dictionary-like objects
- callable objects
- Vererbung
- Exceptions
- Eigene Fehlerklassen modellieren
- Eigene Fehlerobjekte in Methoden einbauen
- Das Dokumentationssystem von Python
- das Objektattribut __doc__ (docstring)
- reStructuredText als Syntax von docstring
- automatische Generierung von Dokumentation (epydoc)
- Python UnitTests (eine kurze Einführung)
- der Zusammenhang von UnitTests und docstrings
- der Python-Interpreter als Betriebssystem
- die Module os, sys, shutils
- Graphische Benutzeroberfläche (GUI) (eine kurze Einführung)
- SQL-Datenbankanbindung mit Python (kurze Beispiele)
- Threads (eine kurze Einführung)
- Python SQLite
- neue Tabellen anlegen
- Daten in die Tabelle einfügen
- Daten abfragen
- update
- Datentypen in SQLite
- Adapter und Konvertierer
- Die Einheitliche Python-DB-API
- Python und MySQL (MySQLdb)
- Python und Oracle
- Python und ODBC
- ZODB als selbständige Datenbank installieren (ohne Zope)
- Die Erfüllung von Datenbank-Standards (ACID) durch die ZODB
- Atomicity
- Consistency
- Isolation
- Durability
- Die hierarchische Objektstruktur der ZODB
- Persistenzregeln beim Update von Veränderungen an ZODB-Objekten
- Persistente Objektreferenzen in der ZODB
- Hinweis auf advanced features: mounting, distributing
- Eine einfache Anwendung als Beispiel
- SQLAlchemy als Brücke zwischen ZODB und SQL-Datenbanken
- Grundlagen der beschreibenden Statistik
- Stichprobe versus Gesamtheit
- statistische Skalen: nominal, ordinal, metrisch
- relative Häufigkeiten und kumulierte relative Häufigkeiten, empirische Verteilungsfunktion
- Histogramm für klassierte Daten
- Lagemaße: arithmetisches Mittel, Median, Quantile
- Box-Whisker-Plot
- Streuungsmaße: Varianz und Standardabweichung
- zweidimensionale Datensätze, Streudiagramm
- Zusammenhangsmaße: Korrelation
- Lineare Regression
- Grundlagen der schließenden Statistik
- Schließen von der Stichprobe auf die Gesamtheit
- Wahrscheinlichkeit versus relative Häufigkeit
- diskrete und stetige Zufallsvariablen
- Gaußkurve, Normalverteilung
- Vertrauensbereich, Konfidenzintervalle
- Grundlagen der Hypothesentests (Nullhypothese, Alternativhypothese, Signifikanzniveau)
- Hypothesentest-Typen (Mittelwerttest, Anteilstest, Unabhängigkeitstest, F-Test als Gesamtmodell-Test, t-Test) und Anwendungsbereiche
- Ausblick: einfaktorielle Varianzanalyse
- Diskussion spezifischer Fragestellungen aus der beruflichen Praxis
- Excel: Statistik mit den Analyse-Funktionen
- Excel: Statistik mit den Formeln
- Excel: Statistik mit den Diagrammen
- Fallstudie, Berechnung von statistischen Kennzahlen
- Fallstudie, Darstellung von statistischen Diagrammen
- Unterschiede in den verschiedenen Excel-Versionen
- Diskussion spezifischer Fragestellungen aus der beruflichen Praxis
- Einführung
- Kurzer Hintergrund zu Python und Anaconda
- Installieren von neuen Paketen
- Die Entwicklungsumgebung (IDE) Spyder
- Aspekte von Python, die anders als in anderen Programmiersprachen sind
- Datenstrukturen in Python
- Unterschied Funktionen vs. Methoden
- Datenstrukturen in Python (number, tuple, list, dictionary, string)
- Überblick und wichtige Methoden zu den Datenstrukturen
- Unterschied list vs. tuple
- Die Besonderheit des Wertes NaN
- Wann benutze ich welche Klammer [], (), {}?
- List comprehension
- Einführung in das Data Science Paket pandas
- Elemente eines pandas data.frame
- Eine Zeile ansprechen, hinzufügen, löschen und verändern
- Eine Spalte ansprechen, hinzufügen, löschen und verändern
- Boolean indexing
- Ein leeres data.frame erstellen
- Überblick über Methoden, ein data.frame anzupassen (Spaltennamen ändern, Werte ersetzen, ein data.frame sortieren, ein data.frame nach einer kategorischen Variable gruppieren, randomisiert Zeilen aus einem data.frame auswählen)
- Grundlegende Statistiken mit pandas
- Überblick über Statistiken, die ich mit einem data.frame berechnen kann (Anzahl an gültigen Beobachtungen, Summe, Mittelwert, Median, Minimum, Maximum, Varianz,...)
- Eine Kreuztabelle (Kontingenztafel) berechnen
- Fehlende Werte ergänzen
- Logische Operatoren
- Daten einlesen
- Das Arbeitsverzeichnis in Python setzen
- Ein CSV einlesen und schreiben und Überblick über die nützlichsten Parameter hierfür
- Python's pickle modul zum Speichern von Python Objekten
- Verschiedene Datentypen konvertieren (integer, unsigned integer, float, string)
- Visualisierung mit matplotlib und seaborn
- Die Hauptelemente beim Plotten mit matplotlib
- Einen Plot anpassen (x- und y-Achse ändern, Beschriftungen, Legende und Titel ändern) und speichern
- Auswahl von Farben
- Subplots erstellen
- Erstellen von Scatterplot, Linienplot, Barplot, (gruppiertes) Histogram, Boxplot
- Control Flows
- Die range() Funktion
- Eine eigene Funktion schreiben
- Default Parameter in einer Funktion setzen
- For Schleifen
- If-Else Bedingungen
- While Schleife
- Logische Vergleichsoperatoren
- Zuweisungsoperatoren
- Überblick über Machine Learning
- Was ist Machine Learning
- Die Einteilung von Algorithmen im Machine Learning (supervised Learning - unsupervised learning - reinforcement learning)
- Overfitting, Train-Test-Split und cross-validation (Kreuzvalidierung)
- Machine Learning Algorithmen (Theorie und Praxis)
- Einführung in den Algorithmus (Lineare Regression, Entscheidungsbaum, Logistische)
- Train-Test Split der Daten
- Umsetzung des Algorithmus in Python
- Validieren der Ergebnisse (u.a. confusion matrix, sensitivity, accuracy)
- Cross-validation (Kreuzvalidierung)
- Weitere Machine Learning Algorithmen in Python
- Erklärung von (SVM), Random Forest und K-means
- Umsetzung dieser Algorithmen in Python
- Validieren der Ergebnisse
- Cross-validation (Kreuzvalidierung)
- Einführung und Einbindung von Data Science in einen betriebswirtschaftlichen Rahmen
- Vorgehensmodelle und Zieldefinitionen für Data-Science-Projekte
- Data-Science-Methoden (insbesondere Machine Learning) und Werkzeuge
- Praktische Umsetzung eines Data-Science- Prozesses in einem Tool
- Tipps, Tricks und Kniffe für ein gutes Data-Science-Produkt
- Einführung und Einbindung von Data Science in einen betriebswirtschaftlichen Rahmen
- Vorgehensmodelle und Zieldefinitionen für Data-Science-Projekte
- Data-Science-Methoden (insbesondere Machine Learning) und Werkzeuge
- Praktische Umsetzung eines Data-Science- Prozesses in einem Tool
- Tipps, Tricks und Kniffe für ein gutes Data-Science-Produkt
- Funktionale Programmierung
- Grundlagen der Skriptsprache R
- Entwicklungsumgebung Rstudio
- Grundlegende statistische Verfahren
- Umsetzung exemplarischer Data-Science-Prozesse in R
- Visualisierung und Vorverarbeitung der Daten
- Modellbildung mit aktuellen Machine-Learning-Algorithmen
- Erstellung und Bewertung von Prognosen für typische Anwendungsfälle
- Funktionale Programmierung
- Grundlagen der Skriptsprache R
- Entwicklungsumgebung Rstudio
- Grundlegende statistische Verfahren
- Umsetzung exemplarischer Data-Science-Prozesse in R
- Visualisierung und Vorverarbeitung der Daten
- Modellbildung mit aktuellen Machine-Learning-Algorithmen
- Erstellung und Bewertung von Prognosen für typische Anwendungsfälle
- Wie lernen Neuronale Netze?
- Variablen, Modelle und Zusammenhänge
- Künstliche Neuronen und neuronale Netze
- Mathematische Grundlagen des Anlernprozesses: Backpropagation, Loss und Gradient Descent
- Neuronale Netze mit Keras aufbauen und trainieren
- Graphen mit Tensorflow erstellen
- Ein einfaches Netz mit Keras und Tensorflow aufbauen und anlernen
- Welches Modell ist das richtige? Evaluation und Anpassung angelernter Modelle.
- Einsatz angelernter Modelle zur Klassifzierung und Schätzung
- Modelle speichern und laden
- Overfitting mit Dropout-Layern verhindern
- Überwachung des Anlernprozesses mit TensorBoard
- Maschinelles Sehen: Konvolutionale neuronale Netze (CNN)
- Bilddateien als mehrdimensionale Matrizen
- Details sehen und Formen abstrahieren: Konvolutionale Netze (CNN)
- Konvolutionale Layer mit Keras aufbauen und anlernen
- Vortrainierte Layer einsetzen
- Mit Sequenzdaten arbeiten: Rekurrente neuronale Netze (RNN)
- Zeitreihendaten und Textsequenzen: Eigenschaften und Eigenheiten
- Neuronale Netze mit Gedächtnis (Feedforward vs. RNN)
- Sequenzdaten mit LSTM (Long Short-Term Memory) aufbauen
- Textdaten mit Embedding-Layers interpretieren
- Feature Extraction: Numerische Daten, Bild und Text-Daten vorbereiten
- Datenrepräsentation: Skalare, Vektoren & Matrizen in Numpy
- Daten einlesen und vorbereiten mit Pandas, Scikit-learn und Keras
- Qualitativer Variablen und Dummy-Sets
- Standardisierung von Daten
- Dimensionsreduktion mit PCA
- Bilddateien transformieren
- Mit Textdaten arbeiten: Zerlegen, tokenizieren, vektorisieren und einbetten.
- Big Data - Konzeptuelle Grundlagen
- Einführung
- Klassifizierung von Methoden
- überwachtes und unüberwachtes Lernen
- Big Data - Grundlegende Tools
- Apache Hadoop
- Hadoop distributed File System (HDFS)
- SQL/NoSQL Abfragen
- AWS Setup für Big Data
- AWS Services für Big Data
- Apache Hadoop und Amazon EMR
- Installation und Konfiguration einesAmazon EMR Clusters
- Programmierframeworks für Amazon EMR (z.B.Hive, Pig, usw.)
- Hadoop User Experience (HUE)
- AWS Datenverarbeitung
- In-Memory Datenanalyse mit Apache Spark und Amazon EMR
- AWS Datenspeicherung
- (Fast) Realtime Datenverarbeitung mit AWS Kinesis
- Effiziente Datenspeicherung und Datenanalyse mit Amazon Redshift
- Kosten,
- -Sicherheit und Visualisierung
- AWS Abrechnungsmodelle
- IT-Sicherheit und AWS Big-Data Anwendungen
- Interaktive Datenabfrage- und Analyse mit Amazon Athena
- Automatisiertes extrahieren, transformieren und laden von Daten mittels AWS Glue
- Visualisierung von Daten und Abfragen via Amazon QuickSight
- Informationssysteme und Kennzahlen
- Data-Warehouse-Systeme
- Relationale Datenmodelle
- Entity-Relationship-Modell
- Normalformen & Historisierung
- Dimensionale Datenmodelle
- Agile dimensionale Modellierung
- Star- und Snowflake-Schema
- Modellierung mit ADAPT
- Data-Vault-Datenmodelle
- Modellierung von Fachlogik
- NoSQL-Datenmodelle
- Daten ziehen und aufbereiten
- Dateien im Verzeichnis ansteuern
- Standardverfahren zum Lesen/Schreiben von Text- und CSV-Dateien
- SQL-Datenbanken ansteuern
- Arbeiten mit Datenmatrizen: Einführung in Numpy & Pandas
- Daten inspizieren und beschreiben
- Fehlende Werte behandeln
- Machine Learning Grundlagen
- Grundlagen, Varianten und Techniken des Machine Learnings.
- Arbeiten mit der Machine Learning Bibliothek scikit-learn.
- Einfache Zusammenhänge zwischen stetigen Variablen modellieren: Lineare Regression
- Klassifizieren mit Logistic Regression, Softmax und Support Vector Machine.
- Modellen evaluieren: Accuracy, Precision, Recall & Confusion matrix
- Unterteilen der Daten in Trainings- und Testdaten
- Feature-Extraction
- Kategoriale Daten vorbereiten: One-Hot Codierung
- Standardisierung von Daten
- Dimensionsreduktion mit PCA (Principle Component Analysis)
- Aufbereitung von Textdaten: Tokenizer und Bag-of-words.
- Machine Learning Workflow
- Daten aufarbeiten und zusammenführen (DataMapper)
- Pipelines einrichten
- Speichern und laden trainierter Klassifizierer
- Organisation von Python-Code bei umfangreichen Projekten
- Packages
- import
- list, tuple, dict (Zusammenfassung aus "Python-Einführung"
- list, tuple dict, set (advanced features):
- List Comprehensions
- Generator-Ausdrücke
- Iteratoren
- Mengen (sets)
- dict: update, get, setdefault, pop, items
- Funktionsparameter
- Parameter-Defaults
- Funktionen mit beliebig langen Parameterlisten
- Packen und Entpacken von Listen, Tupeln und Dictionaries
- als Sequenzen von Funktionsparametern
- Typumwandlungen der Grunddatentypen
- int, float, str, dict, list, tuple, set
- Verschachtelte Collections
- Result sets, list of dictionaries
- Dateien, Objektserialisierung und Objektbanken
- file
- shelf als Beispiel von pickle-Anwendung
- Python-Klassen (Python-Typen)
- object methods
- static methods
- class methods
- get/set methods (Vergleich mit JavaBeans)
- properties
- filigrane Zugriffsrechte auf Objektattribute
- (Vergleich mit Java-Zugriffsrechten)
- Operatorenüberladung
- list-like objects
- dictionary-like objects
- callable objects
- Vererbung
- Exceptions
- Eigene Fehlerklassen modellieren
- Eigene Fehlerobjekte in Methoden einbauen
- Das Dokumentationssystem von Python
- das Objektattribut __doc__ (docstring)
- reStructuredText als Syntax von docstring
- automatische Generierung von Dokumentation (epydoc)
- Python UnitTests (eine kurze Einführung)
- der Zusammenhang von UnitTests und docstrings
- der Python-Interpreter als Betriebssystem
- die Module os, sys, shutils
- Graphische Benutzeroberfläche (GUI) (eine kurze Einführung)
- SQL-Datenbankanbindung mit Python (kurze Beispiele)
- Threads (eine kurze Einführung)
- Python SQLite
- neue Tabellen anlegen
- Daten in die Tabelle einfügen
- Daten abfragen
- update
- Datentypen in SQLite
- Adapter und Konvertierer
- Die Einheitliche Python-DB-API
- Python und MySQL (MySQLdb)
- Python und Oracle
- Python und ODBC
- ZODB als selbständige Datenbank installieren (ohne Zope)
- Die Erfüllung von Datenbank-Standards (ACID) durch die ZODB
- Atomicity
- Consistency
- Isolation
- Durability
- Die hierarchische Objektstruktur der ZODB
- Persistenzregeln beim Update von Veränderungen an ZODB-Objekten
- Persistente Objektreferenzen in der ZODB
- Hinweis auf advanced features: mounting, distributing
- Eine einfache Anwendung als Beispiel
- SQLAlchemy als Brücke zwischen ZODB und SQL-Datenbanken
- Intelligente Agenten
- Struktur von Agenten, Agentenprogramm, Agentenfunktion
- Agenten-Grundtypen
- Modellbasierter Reflexagent
- Lernender Agent
- Maschinelles Lernen
- Lernformen: nicht überwachtes Lernen, verstärkendes Lernen, überwachtes Lernen
- Lernen aus Beispielen
- Trainingsmenge versus Testmenge
- Generalisierungsfähigkeit der gelernten Abbildung
- Problem der Überanpassung
- Neuronale Netze, Multi Layer Perceptrons
- Vom biologischen zum technischen Neuron
- Perceptron
- Nichtlineare Aktivierungsfunktionen
- Multi-Layer-Perceptrons (mehrschichtige neuronale Netze)
- Lernalgorithmus "Backpropagation of Error"
- Beispiele zu Regression und Klassifikation mit Multi Layer Perceptrons
- praktische Tipps
- deep learning
- Beispiele und Demos zu deep learning
- Neuronale Netze, Convolutional Neural Networks (CNN)
- Grundidee und Topologie CNN
- Beispiele und Demos zu Convolutional Neural Networks / Deep Learning
- Neuronale Netze, Recurrent Neural Networks (RNN, LSTM)
- Grundidee und Topologie RNN
- Lernalgorithmus "Backpropagation Through Time"
- Long Short-Term Memory Networks (LSTM)
- Beispiele und Demos zu RNN und LSTM
- Support-Vektor-Maschinen
- Grundidee und Unterschied zu Neuronalen Netzen
- Kernel-Trick zur Garantie der Linearen Separierbarkeit in höheren Dimensionen
- Beispiele und Demos zu Support Vector Machines
- Praktische Tipps
- Hinweise zu Tools, Internet-Quellen und Literatur
- Diskussion spezifischer Fragestellungen aus der beruflichen Praxis
- Installation Python für Windows
- Installation TensorFlow für Windows
- Installation weiterer nützlicher Python-Packages
- Jupyter Notebooks
- Zahlen, Vektoren, Matrizen und Tensoren
- "Hello world!" mit TensorFlow
- Multi-Layer-Perceptrons (MLP) mit TensorFlow
- Multi-Layer-Perceptrons (MLP) mit TensorFlow Keras
- Convolutional Neural Networks (CNN) mit TensorFlow Keras
- Visualisierung mit TensorBoard
- Diskussion spezifischer Fragestellungen aus der beruflichen Praxis
- Einführung
- Kurzer Hintergrund zu Python und Anaconda
- Installieren von neuen Paketen
- Die Entwicklungsumgebung (IDE) Spyder
- Aspekte von Python, die anders als in anderen Programmiersprachen sind
- Datenstrukturen in Python
- Unterschied Funktionen vs. Methoden
- Datenstrukturen in Python (number, tuple, list, dictionary, string)
- Überblick und wichtige Methoden zu den Datenstrukturen
- Unterschied list vs. tuple
- Die Besonderheit des Wertes NaN
- Wann benutze ich welche Klammer [], (), {}?
- List comprehension
- Einführung in das Data Science Paket pandas
- Elemente eines pandas data.frame
- Eine Zeile ansprechen, hinzufügen, löschen und verändern
- Eine Spalte ansprechen, hinzufügen, löschen und verändern
- Boolean indexing
- Ein leeres data.frame erstellen
- Überblick über Methoden, ein data.frame anzupassen (Spaltennamen ändern, Werte ersetzen, ein data.frame sortieren, ein data.frame nach einer kategorischen Variable gruppieren, randomisiert Zeilen aus einem data.frame auswählen)
- Grundlegende Statistiken mit pandas
- Überblick über Statistiken, die ich mit einem data.frame berechnen kann (Anzahl an gültigen Beobachtungen, Summe, Mittelwert, Median, Minimum, Maximum, Varianz,...)
- Eine Kreuztabelle (Kontingenztafel) berechnen
- Fehlende Werte ergänzen
- Logische Operatoren
- Daten einlesen
- Das Arbeitsverzeichnis in Python setzen
- Ein CSV einlesen und schreiben und Überblick über die nützlichsten Parameter hierfür
- Python's pickle modul zum Speichern von Python Objekten
- Verschiedene Datentypen konvertieren (integer, unsigned integer, float, string)
- Visualisierung mit matplotlib und seaborn
- Die Hauptelemente beim Plotten mit matplotlib
- Einen Plot anpassen (x- und y-Achse ändern, Beschriftungen, Legende und Titel ändern) und speichern
- Auswahl von Farben
- Subplots erstellen
- Erstellen von Scatterplot, Linienplot, Barplot, (gruppiertes) Histogram, Boxplot
- Control Flows
- Die range() Funktion
- Eine eigene Funktion schreiben
- Default Parameter in einer Funktion setzen
- For Schleifen
- If-Else Bedingungen
- While Schleife
- Logische Vergleichsoperatoren
- Zuweisungsoperatoren
- Überblick über Machine Learning
- Was ist Machine Learning
- Die Einteilung von Algorithmen im Machine Learning (supervised Learning - unsupervised learning - reinforcement learning)
- Overfitting, Train-Test-Split und cross-validation (Kreuzvalidierung)
- Machine Learning Algorithmen (Theorie und Praxis)
- Einführung in den Algorithmus (Lineare Regression, Entscheidungsbaum, Logistische)
- Train-Test Split der Daten
- Umsetzung des Algorithmus in Python
- Validieren der Ergebnisse (u.a. confusion matrix, sensitivity, accuracy)
- Cross-validation (Kreuzvalidierung)
- Weitere Machine Learning Algorithmen in Python
- Erklärung von (SVM), Random Forest und K-means
- Umsetzung dieser Algorithmen in Python
- Validieren der Ergebnisse
- Cross-validation (Kreuzvalidierung)
- Data-Warehouse-Architekturen
- Datenmodelle
- Data-Warehouse-Prozesse
- Reporting und Analyse
- Moderne Datenhaltungskonzepte
- Big-Data-Architekturen
- Data Lake und Big Data Warehouse
- Pandas im Überblick
- Datenaufbereitung
- Datenaggregation
- Datenvisualisierung
- Einführung in Pandas
- Aggregatfunktionen
- Zeitreihen
- Geodaten
- Best Practices
- Einführung, Überblick
- iPython und Jupyter
- JupyterHub
- nbconvert und nbviewer
- Kernels
- Notebooks erweitern
- Widgets
- nbextensions
- Dashboards
- Notebooks einbetten
- Praxis mit Jupyter
- Reproduzierbare Notebooks
- Parametrisierung
- Zeitplanung
- Refactoring
Die Data Science Business Akademie ist eine Initiative der Informationsfabrik, des Instituts für Angewandte Informatik der Knowledge Foundation @ Reutlingen University und der GFU Cyrus AG mit dem Ziel, Unternehmen in ihrem Bestreben der Weiterbildung im Bereich Predictive Analytics, Artificial Intelligence und Big Data zu bündeln und qualitativ auszubauen.
Dabei bieten wir Ihnen eine langfristige, vertrauensvolle und partnerschaftliche Zusammenarbeit.
Unsere Referenten
Über 20 Referenten, Dozenten und Trainer sind für die Data Science Business Akademie tätig.
Sie alle verfügen über einen umfangreichen Erfahrungshorizont, methodische Kompetenz und langjährige Praxiserfahrung in ihrem jeweiligen Fachgebiet. Ein Auszug:

Dr. Thomas Wörmann
Artificial Intelligence und Business Analytics

Dr. Thorben Jensen
Business Analytics und Data Science

Dr. Michael Hoschek
Machine Learning und Business Analytics

Tobias Rippel
Machine Learning und Prognosemodelle

Ulrich Zellbeck
Data Science, Machine Learning, Data Warehouse, Big Data, Business Intelligence

Prof. Dr. Heike Trautmann
Data Science, Social Media Analytics

Dr. Pascal Kerschke
Machine Learning und Data Science

Dr. Mike Preuß
Data Science und Machine Learning

Dr. Thomas Frontzek
Statistische Analysen und Neuronale Netze

Jan Mathias Köhler
Data Science, Data Mining, Deep Learning
IHRE VORTEILE MIT DER DATA SCIENCE BUSINESS AKADEMIE
Die Data Science Business Akademie bietet eine Auswahl von mehr als zwanzig „Hands-on“-Workshops auf drei Zertifizierungslevels. Das modulare System lässt eine flexible Themen- und Terminwahl zu und bleibt dabei jederzeit praxisnah.
Modulares System
Die flexible Themen- und Terminwahl garantiert, dass nur das für Sie relevante Fachwissen vermittelt wird.
Praxisnah
Die Referenten der Data Science Business Akademie vermitteln ihr Fachwissen in praktischen, direkt anwendbaren Übungen.
Drei starke Partner
Drei Partner garantieren praxisnahes Lernen, berufsbegleitende Weiterbildung und ein professionelles Weiterbildungsmanagement.
Ausführlich
Die Data Science Business Akademie vermittelt fachkundige Einblicke und ist dabei ausführlicher als vergleichbare Angebote.
Zertifizierung
Stellen Sie sich Ihren persönlichen Zertifizierungsplan zusammen und gehen Sie den Weg zum Data Science Expert.
Anwendungsorientiert
Die Data Science Business Akademie verbindet theoretische Grundlagen mit wirtschaftlichen Fragestellungen und anwendungsorientierten Projekten.
Unterlagen und Technik sehr gut. Erwartungen mehr als erfüllt. Qualität bestens!
Horst K.
Gute Kombination aus Theorie und Anwendung. Meiner Erwartungen an Data Science und R wurden erfüllt.
(ohne Angabe)
Die Kombination von perfekt organisierter Schulung mit sehr interessantem Themenbereich ist unschlagbar.
Sabine B.
Gute Strukturierung, Angeregte Diskussionen zum Thema, fachlich gute Erläuterungen und Beispiele
Thomas R.
Hat sich echt gelohnt
Heike Thomas,
TUI InfoTec GmbH
Die Schulung hat Spaß gemacht, war anschaulich und vor allem wegen des großen Praxisanteils sehr hilfreich
Andreas Ochs
Rundum top
Stephan Frenzel,
Kybeidos GmbH
Sehr professionelle Schulung, immer wieder gerne.

Stefanie de Buhr,
Erste Abwicklungsanstalt
Unser Standort

Data Science Seminare in Köln
Die Seminare am Standort Köln finden in ausgesprochen netter und persönlicher Atmosphäre in den Räumen der GFU statt – zentral gelegen und äußerst verkehrsgünstig. Das erleichtert die Anreise und erhöht so die Nettoseminarzeit erheblich.
Unsere Partner
Drei starke Partner bilden das Fundament für die Data Science Business Akademie: sie garantieren praxisnahes Lernen, berufsbegleitende Weiterbildung und ein professionelles Weiterbildungsmanagement.
Die Informationsfabrik ist auf die Bereiche Predictive Analytics, Business Analytics, Business Intelligence, Big Data sowie Data Science spezialisiert. Sie stellt wertvolles und praxisnahes Expertenwissen für die Zertifizierung zur Verfügung.
Das Institut für Angewandte Informatik (IAI) gehört zur Knowledge Foundation @ Reutlingen University. Die Professoren sind renommierte Wissenschaftler mit langjähriger Erfahrung. Das IAI als Institut der Knowledge Foundation @ Reutlingen University übernimmt die Ausstellung des Zertifikats.
Die GFU ist mit mehr als 1.350 Seminarthemen, 100 Dozenten Ihr Partner für IT in der D-A-CH-Region. Die GFU übernimmt das Weiterbildungsmanagement und die Durchführung der Seminare.
Ihre Nachricht!
Ob online oder telefonisch – unsere Experten für Data Science Seminare beraten Sie bei der Entwicklung der für Sie idealen Lernlösung.
Sprechen Sie uns an.
Köln
Am Grauen Stein 27
51105 Köln
Telefon +49 221 828090
E-Mail info@gfu.net