NDAB18003U Elements of Machine Learning
BSc Programme in Computer Science
Machine learning lies at the heart of Artificial Intelligence. This course considers machine learning at an advanced step of the data processing pipeline, where it is used to turn data into knowledge.
Students will be introduced to the basics of machine learning including foundations, deep learning, writing code for machine learning in practice, modern machine learning tools, libraries & infrastructures.
The course covers the following tentative topic list:
- Foundations of learning and generalisation;
- Non-linear classification;
- Non-linear regression;
- Neural networks and deep learning.
At course completion, the successful student will have:
- The general principles of machine learning;
- Basic concepts underlying classification and regression;
- Neural networks and deep learning;
- Common pitfalls in machine learning.
- Applying nonlinear techniques for classification and regression;
- Writing code for machine learning in practice;
- Visualising and evaluating results obtained with machine learning techniques;
- Using software libraries for solving machine learning problems;
- Identifying and handling common pitfalls in machine learning.
- Recognising and describing possible applications of machine learning;
- Comparing, appraising and selecting machine learning methods for specific tasks;
- Solving real-world data mining and pattern recognition problems by using machine learning techniques.
Knowledge of linear algebra corresponding to the undergraduate courses (e.g. NMAB15002U Lineær Algebra i Datalogi) in the computer science education at the University of Copenhagen is expected (in particular: vector spaces; matrix inversion; eigenvalue decomposition; linear projections). This knowledge can be acquired/refreshed using any introductory book on linear algebra (e.g., Gilbert Strang, "Introduction to Linear Algebra").
Knowledge of basic calculus at an advanced high-school level is also expected (in particular: rules of differentiation; simple integration). This knowledge can be acquired/refreshed using any introductory book on calculus (e.g., Stephen Abbott, "Understanding Analysis"; Michael Spivak, "The Hitchhiker's Guide to Calculus"). There is a free online textbook and course "Calculus" by Gilbert Strang available at MIT OpenCourseWare, http://ocw.mit.edu . The most relevant chapters/sections in this book are 1-3.4, 4.1, 5-6.4, 10, 11, and 13.
Knowledge of basic statistics and probability theory corresponding to the undergraduate courses (e.g., NDAB18002U Matematisk Analyse og Sandsynlighedsteori i Datalogi and NDAB16012U Modelling and Analysis of Data) in the computer science education at the University of Copenhagen is expected (in particular: discrete and continuous random variables; independence of random variables and conditional distributions; expectation and variance of random variables; central limit theorem and the law of large numbers). This knowledge can be acquired/refreshed using any introductory book on these topics. We recommend the first four chapters of "Probability and Computing" by Mitzenmacher and Upfal.
- Practical exercises
- Theory exercises
- 7,5 ECTS
- Type of assessment
- Continuous assessment4-6 take-home assignments. The final grade will be a weighted average over all assignments.
- All aids allowed
- Marking scale
- 7-point grading scale
- Censorship form
- No external censorship
Several internal examiners.
The re-exam consists of two parts:
The first part is handing in (potentially revised) solutions to at least 4 of the course assignments no later than 3 weeks before the oral re-exam (35%). The second part is the oral exam in full course syllabus - 30 minutes including assessment, without preparation (65%).
Criteria for exam assesment
See Learning Outcome.