Revised 08/2023

ITD 140 - Machine Learning (3 CR.)

Course Description

Introduces students to artificial intelligence and machine learning. Examines basic theory, algorithms, and applications. Focuses on feature engineering and machine learning applications within the larger world of artificial intelligence. Part I of II. Lecture 3 hours. Total 3 hours per week.

General Course Purpose

Introduces students to the basic concepts of machine learning by describing, choosing, training and testing basic machine learning algorithms through applications to common use cases.

Course Prerequisites/Corequisites

None.

Course Objectives

  • Describe and identify basic artificial intelligence approaches.
  • Identify and explain basic types of machine learning algorithms for both supervised and unsupervised machine learning.
  • Machine Learning 
  • Define and explain the purpose of machine learning
  • Define and explain the purpose of artificial neural networks
Describe and differentiate between supervised and unsupervised learning techniques.
  • Supervised Learning
  •  Define and explain the purpose of supervised learning
  • Identify supervised learning algorithms and when they should be used
  • Define, explain and perform linear and multivariate regressions
  • Define classification as a supervised learning prediction task
  • Discuss when it is appropriate to use classification
  • Apply classification on a dataset
  • Define, explain and apply decision tree learning
  • Neural Networks
  • Unsupervised Learning
  • Define and explain the purpose of unsupervised learning
  • Identify unsupervised learning algorithms and when they should be used
  • Clustering
  • Describe and apply basic dimensionality reduction
Describe and apply feature extraction and engineering techniques.

Feature Engineering

  • Define Feature Engineering, Imputation
  • Define and explain the purpose of cold- and hot-deck imputation
  • Define and apply mean substitution
  • Define raw features
  • Define and explain how to create derived features, and define:
  • Create and use numerical data
  • Define a qualitative variable as it applies to machine learning
  • Define a quantitative variable as it applies to machine learning
  • Define, create and use categorical data
  • Define, explain and apply one-hot encoding
  • Define and perform simple feature scaling
  • Define and perform normalization
  • Define and apply min-max scaling
  • Define loss functions

Major Topics to Be Included

  • Overview of artificial intelligence approaches
  • Supervised learning with example implementations
  • Unsupervised learning with example implementations
  • Feature extraction and engineering

Student Learning Outcomes

Machine Learning 

  • Define and explain the purpose of machine learning
  • Define and explain the purpose of artificial neural networks

Feature Engineering

  • Define Feature Engineering, Imputation
  • Define and apply mean substitution, back/forward-fill substitution
  • Define raw features
  • Define and explain how to create derived features, and define:
    • a. Binarization, Rounding, Binning, Fixed-Width Binning
  • Identify and use continuous numerical data
  • Define a qualitative variable as it applies to machine learning
  • Define a quantitative variable as it applies to machine learning
    • Define a continuous quantitative variable as it applies to machine learning
    • Define a discrete quantitative variable
  • Define, create and use categorical data
  • Define, explain and apply one-hot encoding
  • Define and perform simple feature scaling
  • Define and apply min-max scaling (i.e., normalization)
  • Define and perform standardization

Performance Metrics and Tuning

  • Define and evaluate basic performance metrics, including accuracy, the confusion matrix, precision, recall, F1 score, and AUROC
  • Define and explain bias, variance and the bias-variance trade-off
  • Define loss functions
    •  a. Define and calculate L1 Norm (least absolute error) and L2 Norm (least squares error)
  • Define and explain the significance of hyperparameters

Supervised Learning

  • Define and explain the purpose of supervised learning
  • Identify supervised learning algorithms and when they should be used
  • Define, explain and perform linear and multivariate regression
  • Define classification as a supervised learning prediction task
    • Discuss when it is appropriate to use classification
    • Define and explain the k nearest neighbor (knn) and decision tree algorithms
    • Apply classification to a dataset using, e.g., knn and decision trees
  • Neural Networks
    • Define and explain the function of perceptrons
    • Define and explain the structure and function of artificial neural networks
    • Define and explain the purpose of deep learning

Unsupervised Learning

  • Define and explain the purpose of unsupervised learning
  • Identify unsupervised learning algorithms and when they should be used
  • Clustering
    • Define and explain the purpose of clustering
    • Identify when clustering is appropriate
    • Apply k-means clustering to a sample dataset
  • Describe and apply basic dimensionality reduction

Required Time Allocation

To standardize the core topics of this course, the following student contact hours per topic are required. Each syllabus should adhere as closely as possible to these allocations. Topics are not necessarily to be taught in the order shown. There are normally 45 student contact-hours per semester for a three-credit course. Sections of the course offered in alternative formats (i.e. not standard 15-week) still meet for the same number of contact hours. The final exam is not included in the timetable. The quickly evolving nature of artificial intelligence—and machine learning in particular— means that some content noted in this document may be superseded or made obsolete. As such, it is important to include such changes in individual syllabi. Additionally, time is allocated for additional and optional topics to provide flexibility to instructors in tailoring the course to special needs or resources.

Topics Hours Percentage
Overview of artificial intelligence approaches 3 7%
Supervised learning 12 26%
Unsupervised learning 9 20%
Feature extraction and engineering 15 33%
Testing to include quizzes, tests and exams (excluding final exam) 3 7%
Other optional topics 3 7%
Total 45 100