Skip to main content

EM 538 Practical Machine Learning for Engineering Analytics

3 Credit Hours

One of the critical aspects of this course is the focus on practical examples and hands-on experience with machine learning tools and techniques. Through lectures, case studies, interactive assignments, and projects, students will gain a comprehensive understanding of machine learning applications in engineering analytics. The course will cover fundamental machine learning concepts, such as supervised and unsupervised learning, classification, regression, anomaly detection, clustering, and neural-networks. Students will also learn about different types of algorithms and their applications to engineering problems. The course will also cover data preprocessing, feature selection, model training, and evaluation. Students will work on projects that simulate real-world scenarios, allowing them to apply their knowledge and skills in a practical setting. This will enable them to deeply understand how machine learning can be used to solve complex engineering problems and make informed decisions.

Prerequisites

NONE!

This is an introductory course on practical machine learning for engineering analytics. The course equates engineering managers with foundational resources for managing AI/machine learning projects.
Recommended Skills:

  • Basic Programming Knowledge: Familiarity with any programming language, preferably Python, is recommended. The course will use Python extensively, and understanding basic programming concepts will be beneficial.
  • Statistical Fundamentals: A basic understanding of statistics, including concepts such as mean, median, standard deviation, and probability, will help in grasping machine learning algorithms and their applications.
  • Mathematical Foundations: Basic knowledge of linear algebra and calculus will be useful for understanding the mathematical principles behind machine learning algorithms.
  • Problem-Solving Skills: The ability to approach and solve complex problems systematically will be advantageous, as machine learning often involves iterative testing and refinement.
  • Familiarity with Data Handling: Basic skills in data handling, such as using Excel or other data manipulation tools, will be helpful for data preprocessing and analysis tasks.

Course Outline

Module 1: Introduction and Computational Foundation [3 weeks]
• Course overview and Introduction to Machine Learning
• Introduction to Python’s scientific computing stack
• Introduction to Software Management Tools (GITHUB, vscode, etc)
• Introduction to Supervised Learning and k-Nearest Neighbors Classifiers
• Data preprocessing and machine learning with scikit-learn

Module 2: Model Evaluation [2 weeks]
• Feature Selection
• Feature Extraction
• Overfitting
• Confidence Intervals
• Cross-Validation and Model Selection
• Algorithm Selection
• Evaluation and Performance Metrics

Module 3: Tree-based methods [ 3 weeks]
• Decision Trees
• Ensemble methods

Module 4: Dimensionality reduction, unsupervised learning, and other Models [2 weeks]
• Support Vector Machines (SVM)
• Principal Component Analysis (PCA)
• Linear Discriminant Analysis (LDA)
• Clustering
• Regression

Module 5: Introduction to Deep Learning [ 3 weeks]
• Perceptron’s and Tensors
• PyTorch
• Single and Multilayer Neural Networks

Module 6: Course Project [3 weeks]
• Group-based ML course project and demonstrations
• Individual ML competition (EM 538 Only)

Course Objectives

  • Use the essential components of building and applying prediction functions
  • Describe machine learning methods such as regression and classification trees
  • Understand concepts such as training and test sets, overfitting, and error rates
  • Explain the complete process of building prediction functions

Course Requirements

This course includes individual machine learning assignments and group projects with project management tasks. Students will need a personal computer with administrative rights to collaborate outside of class.

Textbook

Raschka, Sebastian., Liu, Yuxi (Hayden)., Mirjalili, Vahid., Dzhulgakov, Dmytro. Machine Learning with PyTorch and Scikit-Learn: Develop Machine Learning and Deep Learning Models with Python. United Kingdom: Packt Publishing, 2022.

Software Requirements

Python3, VS Code.

Created 10/16/2024