The tentative syllabus is given below. Please be informed that the timeline and lecture topics are subject to change. For each week, we will regularly update the course material, assignments, and suggested readings.

Week DescriptionReadings
W1 Course overview and logistics
* The brief history of machine learning and Humanoid robotics
* Introduction to FOSS robot simulators
* Math and programming resources for multimodal machine learning
Python/Numpy tutorial
DL Book, Part 1
Robot simulators
W2 Intro to machine learning and robotic sensors
* ML terminology: targets, features, priors, models, hyperparameters, etc.
* Robotic sensors: camera, depth, position encoders, ultrasound, infrared, and lasers
* Fantastic machiine learning and robotics datasets and where to find them
DL Book, Part 1
Dataset search,
Kaggle datasets
W3 Intro to neural networks (NNs), multimodal fusion techniques and software stack
* Challenges in multimodal learning: data representation and fusion
* NN basics: single and multilayer perceptron, parameter initialization, gradient descent, backpropagation, activation and loss functions, etc.
TensorFlow/Keras tutorial
DL Book, Ch 6
The pepper robot
W4 Intro to Convolutional Neural Networks (CNNs)
* CNNs concepts: convolution, pooling, stride, padding, etc.
* CNN architectures: Neocognitron, LeNet, AlexNet, VGGNet, ResNet, etc.
DL Book, Ch 9
CNN visualizer Feature visualization
W5 Reinforcement learning basics and deep reinforcement learning
* RL concepts: Markov decision processes, exploration/exploitation, convergence requirements, model-free methods (e.g., Q learning, SARSA), etc.
* Challenges in RL: credit assignment, exploration/exploitation trade-off, etc.
* Deep Q Learning variations: DQN, Double DQN, Dueling DQN, DQN experience replay, etc.
RL Book, Ch 3, Ch 6
Key papers in RL
OpenAI RL resources
W6 Intro to Humanoid robot simulators and demos on the Pepper robot
* Installation of pyBullet/qiBullet simulators
* Demos with the Pepper and Nao robots: reading senosory, kinematics, random sensorymotor babbling, etc.
Simultator tutorials
W7 Intro to unsupervised learning
* Applications of unsupervised learning: vector quatization, clustering, feature extraction.
* Learning methods: K-Means, competitive learning and self-organizing maps
* Unsupervised learning robot architectures: PyEra and SOIMA
SciKit Clustering
Elements of statistical learning Ch 14.3, 14.4
W8-W14 The presentation dates are tentative and it will be finalized after the 2nd assignment submission.