DS404BKK

Faculty
Vladislav Goncharenko
Head of Perception at Evocargo
Course length
Duration
Total hours
Credits
Language
Course type
Fee for single course
Fee for degree students
Skills you’ll learn
The course is aimed at studying the field of recommender systems. It guides learners from defining problem statements and measuring results to the application of transformers and scaling to millions of users. The course covers essential online and offline metrics, product development techniques. The models studied include collaborative filtering, matrix factorization, neural network methods, among others. It provides a sufficient amount of theoretical material and practical seminars using datasets of various natures. Additionally, the course introduces information retrieval systems. The coursework involves implementing recommendation system algorithms to reinforce theoretical understanding and conducting full-cycle lab work. Upon successful completion, learners will be able to apply recommender system techniques in practice, explain the results obtained and deliver models to production.
The course is designed for technical professionals aiming to deeply understand the structure of modern recommender system methods. It is suitable for both beginners and experienced individuals looking to systematize and expand their knowledge in this field.
15 classes
Introduction to Recommendation Systems.
Role of recommendation systems (RS) in modern web services. Examples of services using RS. Types of feedback. Taxonomy of RS. Typical problems of RS.
Collaborative Filtering: User and Item-based.
Feedback matrix. Idea of recommending new items based on similarity. Simple similarity formulas. Implementation of user based and item based collaborative filtering.
Matrix Factorizations.
Matrix Factorizations (MF) definition and main properties. Practical aspects of MF. Effective MF implementation: Alternating Least Squares (ALS). SGD for matrix factorizations.
ALS Implementation.
Implementing ALS from scratch. Use parallel processes to speed up ALS. Packages for MF.
SLIM Model Theory and Practice.
Problem statement for SLIM. Derivation of fast SLIM calculation. Using parallel processes to implement SLIM. Comparing with collaborative filtering.
Content-based Recommendations and Neural Networks.
Types of content to recommend. Neural networks architectures to embed items. Two tower architecture for recommendations. Pros and cons of content-based recommendations.
Measuring Recommendation Systems Quality.
Metrics taxonomy and applicability to RS. Online and offline metrics. MRR, MaP and NDCG. Additional metrics for RS.
Learning to Rank.
Ranking problem statement. Evolution of ranking loss functions: RankNet, LambdaRank, LambdaMart, YetiRank. Implementations of ranking losses.
Mid-term test.
Recommendation Systems in Production.
ALS implementation on MapReduce. KNN indexes: HNSW. Packages for knn indexes: faiss. Quantization of embeddings: different methods and practical considerations.
Scalable Item-to-item Service.
Two staged recommendation engines and their problems. Item-to-item lists motivation: item sources, reranking, serving. Sharded implementation of item-to-item service.
Sequential Recommendations and Transformers.
Advantages of sequential recommendations. SASRec, Bert4Rec. Practical consideration of transformers in production.
Crowdsourcing for Quality Assurance.
Need for continuous quality assurance in RC. Types of labeling for RC. Toloka service for crowdsourcing practice.
Information Retrieval Problem and Ranking.
Information retrieval problem statement. Differences with recommendations. Subtasks of global search engine: Web crawler, databases, multi-staged inference pipeline. ElasticSearch as a baseline for simple tasks. Improving it with boosting.
Final Exam
Books
Basic maths knowledge:
Linear algebra: vectors, dot products, linear functions, matrices, matrix decompositions
Calculus: multidimensional functions, derivatives, gradients, matrix derivatives
Optimisation: definition of optimisation problem, convex functions
Programming:
Python: functions, classes, wrappers
Libraries: numpy, scipy, pandas, matplotlib
Basic machine learning:
Linear models: problem setup, closed form solution, sgd
Trees and ensembles: boosting
Neural networks: RNN, CNN, Attention
The course will be organised into three-hour sessions and self-study practical assignments. Sessions will contain both theoretical and practical parts, with different ratios depending on the materials.
Vladislav Goncharenko is a machine learning engineer specializing in modern Computer Vision, Deep Learning and Recommender Systems fields. He develops a recommender system of Dzen with 30 mln DAU and 10k RPS. Previously he led the Perception team at a self-driving trucks startup where he developed neural networks for object detection, segmentation and tracking on multivariate data such as images and Lidar clouds. His academic studies include a brain signals classification system based on EEG for mind-controlled VR games.
See full profileApply for this course
by Vladislav Goncharenko
Total hours
45 Hours
Dates
Oct 21 - Nov 08, 2024
Fee for single course
€1500
Fee for degree students
€750
How to secure your spot
Complete the form below to kickstart your application
Schedule your Harbour.Space interview
If successful, get ready to join us on campus
FAQ
Will I receive a certificate after completion?
Yes. Upon completion of the course, you will receive a certificate signed by the director of the program your course belonged to.
Do I need a visa?
This depends on your case. Please check with the Spanish or Thai consulate in your country of residence about visa requirements. We will do our part to provide you with the necessary documents, such as the Certificate of Enrollment.
Can I get a discount?
Yes. The easiest way to enroll in a course at a discounted price is to register for multiple courses. Registering for multiple courses will reduce the cost per individual course. Please ask the Admissions Office for more information about the other kinds of discounts we offer and what you can do to receive one.