Course Code: mltfbes
Duration: 35 hours
Prerequisites:
  • An understanding of ___.
  • Experience with ___.
  • ___ programming experience.

Audience

  • ___
  • ___
  • ___
Course Outline:
  1. Machine Learning introduction
    • Types of Machine learning – supervised vs unsupervised learning
    • From Statistical learning to Machine learning
    • The Data Mining workflow:
      • Business understanding
      • Data Understanding
      • Data preparation
      • Modelling
      • Evaluation
      • Deployment
    • Machine learning algorithms
    • Choosing appropriate algorithm to the problem
    • Overfitting and bias-variance tradeoff in ML
  2. ML libraries and programming languages
    • Why use a programming language
    • Choosing between R and Python
    • Python crash course
    • Python resources
    • Python Libraries for Machine learning
    • Jupyter notebooks and interactive coding
  3. Testing ML algorithms
    • Generalization and overfitting
    • Avoiding overfitting
      • Holdout method
      • Cross-Validation
      • Bootstrapping
    • Evaluating numerical predictions
      • Measures of accuracy: ME, MSE, RMSE, MAPE
      • Parameter and prediction stability
    • Evaluating classification algorithms
      • Accuracy and its problems
      • The confusion matrix
      • Unbalanced classes problem
    • Visualizing model performance
      • Profit curve
      • ROC curve
      • Lift curve
    • Model selection
    • Model tuning – grid search strategies
    • Examples in Python
  4. Data preparation
    • Data import and storage
    • Understand the data – basic explorations
    • Data manipulations with pandas library
    • Data transformations – Data wrangling
    • Exploratory analysis
    • Missing observations – detection and solutions
    • Outliers – detection and strategies
    • Standarization, normalization, binarization
    • Qualitative data recoding
    • Examples in Python
  5. Classification
    • Binary vs multiclass classification
    • Classification via mathematical functions
      • Linear discriminant functions
      • Quadratic discriminant functions
    • Logistic regression and probability approach
    • k-nearest neighbors
    • Naïve Bayes
    • Decision trees
      • CART
      • Bagging
      • Random Forests
      • Boosting
      • Xgboost
    • Support Vector Machines and kernels
      • Maximal Margin Classifier
      • Support Vector Machine
    • Ensemble learning
    • Examples in Python
  6. Regression and numerical prediction
    • Least squares estimation
    • Variables selection techniques
    • Regularization and stability- L1, L2
    • Nonlinearities and generalized least squares
    • Polynomial regression
    • Regression splines
    • Regression trees
    • Examples in Python
  7. Unsupervised learning
    • Clustering
      • Centroid-based clustering – k-means, k-medoids, PAM, CLARA
      • Hierarchical clustering – Diana, Agnes
      • Model-based clustering - EM
      • Self organising maps
      • Clusters evaluation and assessment
    • Dimensionality reduction
      • Principal component analysis and factor analysis
      • Singular value decomposition
    • Multidimensional Scaling
    • Examples in Python
  8. Text mining
    • Preprocessing data
    • The bag-of-words model
    • Stemming and lemmization
    • Analyzing word frequencies
    • Sentiment analysis
    • Creating word clouds
    • Examples in Python
  9. Recommendations engines and collaborative filtering
    • Recommendation data
    • User-based collaborative filtering
    • Item-based collaborative filtering
    • Examples in Python
  10. Association pattern mining
    • Frequent itemsets algorithm
    • Market basket analysis
    • Examples in Python
  11. Outlier Analysis
    • Extreme value analysis
    • Distance-based outlier detection
    • Density-based methods
    • High-dimensional outlier detection
    • Examples in Python
  12. Machine Learning case study
    • Business problem understanding
    • Data preprocessing
    • Algorithm selection and tuning
    • Evaluation of findings
    • Deployment

Image classification + TensorFlow 2.0

  1. Introduction to Deep Learning and TensorFlow
    • Creating, Initializing, Saving, and Restoring TensorFlow variables
    • Feeding, Reading and Preloading TensorFlow Data
    • Visualizing and Evaluating models with TensorBoard
  2. TensorFlow Mechanics
    • Tutorial Files
    • Prepare the Data
      • Download
      • Inputs and Placeholders
    • Build the Graph
      • Inference
      • Loss
      • Training
    • Train the Model
      • The Graph
      • The Session
      • Train Loop
    • Evaluate the Model
      • Build the Eval Graph
      • Eval Output
  3. TensorFlow Serving
  4. Keras
  5. Getting images from files and camera with OpenCV
  6. Convolutional Neural Networks:
    • Overview
    • Building the digit classifier using MNIST dataset
  7. Data augmentation
  8. Pre-trained models (MobileNet) and transfer learning
  9. Object detection
  10. Image segmentation
  11. Summary