DEBRE BERHAN UNIVERSITY
COLLEGE OF COMPUTING
DEPARTMENT OF COMPUTER SCIENCE
Name of Course: Introduction to Machine Learning
Course Code: CoSc4114
CP/ECTS 5
Study Hours: Lecture: 32 Laboratory: 48 Tutorial: 16
Synopsis: Machine Learning is the study of how to build computer systems that learn from
experience. This course will explain how to build systems that learn and adapt using real-world
applications. Some of the topics to be covered include concept learning, neural networks, genetic
algorithms, reinforcement learning, instance-based learning, and so forth. The course will be
project-oriented, with emphasis placed on writing software implementations of learning
algorithms applied to real-world problems.
Name(s) of academic staff: Betselot Y.
I. Course Learning Outcomes (CLO):
At the end of the course the students will be able to:
CLO1: Know about the fundamental concepts in machine learning, the different classes
of machine learning algorithms,
CLO2: Apple to choose and apply different basic machine learning algorithms.
CLO3: Learn about ways to evaluate the performance of learning systems.
CLO4: Be able to prepare data and apply machine learning methods to achieve a learning
goal within an intelligent system.
CLO5: Be able to judge the suitability of a machine learning paradigm for a given
problem and the available data,
CLO6: Acquire an understanding of the capabilities and limitations of the considered
machine learning algorithms,
CLO7: able to identify problems or misleading results.
1|Page
II. CLO Mapping
Course Content CLO
Chapter 1: Introduction to machine learning CLO1, CLO2
1.1 What is machine learning?
1.2 History and relationships to other fields
1.3 Essential math and statistics for machine learning
1.4 Applications of machine learning
1.5 Types of machine learning techniques
Chapter 2. Supervised learning (8 hrs) CLO3, CLO4,
2.1 Introduction CLO6
2.2 Linear model
2.2.1 Regression
[Link] Linear regression
[Link] Polynomial regression
[Link] Regularization techniques
[Link] Understand metrics used to evaluate regression
[Link] A case study in regression
2.2.2 Classification
[Link] KNN
[Link] Naïve Bayes
[Link] Logistic regression
[Link] Decision trees
[Link] Random Forest
[Link] Support vector machines
2.2.3 A case study in classification
2.2.4 Understand the metrics used to evaluate classifiers
2.3 How to improve supervised models
2.4 Parametric models for classification and regression
2.5 Problems of over-parameterization & the curse of dimensionality
2.6 Use regularization on over-parameterized models
Chapter 3: Unsupervised learning (8 hrs) CLO2, CLO3, CLO6
3.1 Introduction
3.2 Understand the principles of unsupervised learning models
3.3 Clustering approaches 3.3.1 K-Means
3.3.2 K nearest neighbors
3.3.3 Hierarchical clustering
3.4 Correctly apply and evaluate clustering models
3.5 Association rule learning
3.5.1 Apriori algorithm
3.6 Reinforcement learning
3.6.1 Markov decision
3.6.2 Monte Carlo prediction
3.6.3 Case study
Chapter 4: Neural Network (6 hrs) CLO2, CLO3, CLO5,
4.1 Introduction CLO6
2|Page
4.1.1 Understanding the brain
4.1.2 Neural networks as a paradigm for parallel processing
4.2 The Perceptron
4.3 Training a Perceptron
4.4 Artificial neural network
4.5 Multilayer Perceptron
4.6 Back propagation algorithm
1.6.1 Nonlinear Regression
1.6.2 Two-Class Discrimination
1.6.3 Multiclass Discrimination
1.6.4 Multiple Hidden Layers
4.7 Training procedures
1.7.1 Improving convergence
1.7.2 Overtraining
1.7.3 Structuring the network
4.8 Tuning the network size
4.9 A case study in neural network
Chapter 5: Model Evaluation (6 hrs) CLO2, CLO3, CLO5,
5.1 Data processing CL07
5.2 Data cleaning and transforming
5.3 Feature selection and visualization
5.4 Model selection and tuning
5.5 Methods of dimensional reduction
5.5.1 Principal component analysis (PCA)
5.5.2 Singular value decomposition (SVD)
5.5.3 T-distributed Stochastic Neighbor Embedding (t-SNE)
5.6 Optimize the performance of the model
5.7 Control model complexity
5.8 Over-fitting and Under-fitting
5.9 Cross-Validation and Re-sampling methods
5.9.1 K-Fold Cross-Validation
5.9.2 5 ×2 Cross-Validation
5.9.3 Bootstrapping
5.10 Gradient descent (batch, stochastic)
5.10.1 Bias, variance
5.11 Performance evaluation methods
III. Assessment - CLO Mapping
S. No Assessment Task Value/ Mark CLO
1. In-class Quizzes 10% 1,2,3
2. Mid-Exam 25% 1,2,3,4
3. Course Project 25% 1,2,3,4,5,6,7
4. Final Exam 40% 1,2,3,4,5,6,7
3|Page
Mapping CLO to Assessment Tasks
Final Exam
Mid-Exam
Quizzes
In-class
Course
Project
CLO Introduction to Machine Learning
CLO1 Know about the fundamental concepts in machine x x x x
learning, the different classes of machine learning
algorithms,
CLO2 Apple to choose and apply different basic machine x x x
learning algorithms.
CLO3 Learn about ways to evaluate the performance of x x x x
learning systems.
CLO4 Be able to prepare data and apply machine learning x x x
methods to achieve a learning goal within an
intelligent system.
CLO5 Be able to judge the suitability of a machine x x
learning paradigm for a given problem and the
available data,
CLO6 Acquire an understanding of the capabilities and x x
limitations of the considered machine learning
algorithms,
CLO7 Able to identify problems or misleading results. x x
IV. Text Books and Reference:
[1]. Shalev-Schwartz & Ben-David, Understanding Machine Learning. Cambridge University
Press. 2014.
[2]. Hastie, Tibshirani & Friedman, The Elements of Statistical Learning: Data Mining, Inference,
and Prediction, 2nd Edition, Springer, 2009
[3]. Goodfellow, Bengio &Courville, Deep Learning. MIT Press. 2016 Han J. & Kamber M.
(2004), Data Mining Concepts and Techniques, Morgan Kaufmann publishers, 4th Edition
[4]. Whitten I. H. & Frank E. (2005), Data Mining: Practical Machine Learning Tools and
Techniques. Morgan Kaufmann publishers, Second Edition.
[5]. Maimon O· & Rokach L. (2010), Data Mining and Knowledge Discovery Handbook, 2nd
Edition
4|Page