2020 Faculty Courses School of Computing Undergraduate major in Computer Science
Machine Learning
- Academic unit or major
- Undergraduate major in Computer Science
- Instructor(s)
- Naoaki Okazaki
- Class Format
- Lecture (Zoom)
- Media-enhanced courses
- -
- Day of week/Period
(Classrooms) - 7-8 Tue (S011) / 7-8 Fri (S011)
- Class
- -
- Course Code
- CSC.T254
- Number of credits
- 200
- Course offered
- 2020
- Offered quarter
- 4Q
- Syllabus updated
- Jul 10, 2025
- Language
- Japanese
Syllabus
Course overview and goals
Machine Learning is a "field of study that gives computers the ability to learn without being explicitly programmed" (Arthur Samuel, 1959). With the advances in theories and algorithms, big data, and computation power, machine learning recently showed an astonishing progress, applied to various fields other than computer science. This lecture introduces the foundamental concepts and theories of machine learning that are essential for any engineers to apply machine learning technologies. This lecture also provides exercises where students can cultivate the skill for implementing the theories and algorithm as computer programs in Python.
Course description and aims
* Acquire knowledge about the foundamental concepts and theories of machine learning
* Understand the theories and algorithms through implementations
* Learn the basic skill for data processing
Keywords
regression, classification, clustering, dimensionality reduction, reignforce learning
Competencies
- Specialist skills
- Intercultural skills
- Communication skills
- Critical thinking skills
- Practical and/or problem-solving skills
Class flow
This class consists of: lectures explaining the concepts and theories; and exercises to realize them on computers
Course schedule/Objectives
Course schedule | Objectives | |
---|---|---|
Class 1 | Introduction, Essentials of Python programming | Introduction to machine learning, Python programming |
Class 2 | Data Visualization | Reading/writing data, line chart, bar chart, plot, heatmap |
Class 3 | Linear Regression | least squares method, maximum likelihood estimation, gradient method, evaluation, overfitting, regularization |
Class 4 | Linear Classification (1) | threshold logic unit, binary classification, perceptron, logistic regression, evaluation |
Class 5 | Linear Classification (2) | Multi-class classification, softmax function |
Class 6 | Exercise 1 | Exercise for the classes 3-5 |
Class 7 | Deep Neural Networks (1) | activation function, computation graph, automatic diffrentiation, backpropagation |
Class 8 | Multilayer Neural Networks (2) | convolutional neural networks, dropout, mini-batch optimization |
Class 9 | Support Vector Machine | margin, duality, support vectors, kernel functions, multi-class classification |
Class 10 | Exercise 2 | Exercise for the classes 7-9 |
Class 11 | Clustering | Hierarchical clustering, K-means |
Class 12 | Dimentionality Reduction | principal component analysis, singular value decomposition, random projection |
Class 13 | Reignforcement Learning | Markov decision process, Bellman equation, value iteration, policy iteration, Q learning |
Class 14 | Exercise 3 | Exercise for the classes 11-13 |
Study advice (preparation and review)
To enhance effective learning, students are encouraged to spend approximately 100 minutes preparing for class and another 100 minutes reviewing class content afterwards (including assignments) for each class.
They should do so by referring to textbooks and other course material.
Textbook(s)
None
Reference books, course materials, etc.
Cource materials are distributed on OCW-i.
Evaluation methods and criteria
Based on the three reports (60%) and the final exam (40%).
Related courses
- CSC.T242 : Probability Theory and Statistics
- CSC.T272 : Artificial Intelligence
- CSC.T243 : Procedural Programming Fundamentals
- CSC.T253 : Advanced Procedural Programming
- CSC.T352 : Pattern Recognition
- ART.T458 : Advanced Machine Learning
Prerequisites
None