H.R. Tizhoosh
University of Waterloo

Vision : Images : Brain


The Turing Test

Turing held that computers would in time be programmed to acquire abilities rivalling human intelligence...Turing put forward the idea of an 'imitation game', in which a human being and a computer would be interrogated under conditions where the interrogator would not know which was which, the communication being entirely by textual messages. Turing argued that if the interrogator could not distinguish them by questioning, then it would be unreasonable not to call the computer intelligent. Source: www.turing.org.uk



» News

» Free Inquiries

» Publications

» Image Data

» Source Code

» Students

» Links

» Supporters

» Partners

» Resume

» Contact


:: University of Waterloo

:: KIMIA Lab

:: Centre for Bioengineering and Biotechnology (CBB)


  Home Research Teaching KIMIA Lab  

Teaching …
SYDE522 - Machine Intelligence

Course Description

The objective of this course is to introduce the students to current machine learning concepts. An overview of different learning schemes will be provided, including: Decision Tree, Bayesian, Inductive, Analytical and Rule-Based Learning. The main focus of the course will be on Neural Nets, Genetic Algorithms and Reinforcement Learning.

Course Topics




1. Week

What is Intelligence? A bit on Terminology
A Brief History of MI/ML
Features, perceptrons, probabilities, sets and statistics

Potential projects and datasets

2. Week

Dealing with Data, Encoding and Experiments
Data Compression: PCA and t-SNE, Fisher Vector

Basics of statistics

3. Week

Dealing with Data, Encoding and Experiments
VLAD, Other encoding methods, K-Fold Cross Validation, Leave-One-Out

PCA and t-SNE

4. Week

Classification and Clustering
K-Means and FCM, Support Vector Machines


5. Week

Classification and Clustering
Support Vector Machines, Self-Organizing Maps

K-means versus SVM

6. Week

Perceptrons, MLPs and Backpropagation algorithms


7. Week

Deep Learning: autoencoders and Convolutional Neural Networks (CNNs)


8. Week

Reinforcement Agents


9. Week

Uncertain and Vague Knowledge
Evolving Fuzzy Inference Systems, Decision Trees, Random Forests


10. Week

Uncertain and Vague Knowledge
Probabilistic Methods: Naive Bayesian, Hidden Markov Models

Decision trees & random forests

11. Week

Evolution and Animals
Genetic / Evolutionary Algorithms and Differential Evolution, Ant Colonies and Particle Swarms

Naïve Bayesian

12. Week

Ethics of Machine Learning
Ethics and Philosophy, Ethics and Social Consciousness

How to write a scientific paper?


Course Objectives

    • To learn the basic concepts behind machine learning/intelligence

    • To learn different meta-heuristics for function approximation

    • To learn how to choose the right learning technique for a given problem

    • To learn the difference between shallow and deep learning

    • To learn how to verify the learning capabilities of a given technique via proper theoretical and experimental tools

    • To learn how to run experiments and validate/compare algorithms

    • To learn how to write a scientific paper

All information related to this course is available on LEARN:




© H.R. Tizhoosh, Systems Design Engineering, University of Waterloo, Canada, 2001-2015