Рекомендательные системы: различия между версиями
Dkivanov (обсуждение | вклад) |
|||
| (не показано 8 промежуточных версий этого же участника) | |||
| Строка 3: | Строка 3: | ||
Курс нацелен на формирование у слушателя достаточных знаний, навыков и компетенций для построения рекомендательных систем. Курс является прикладным и охватывает все продвинутые темы, необходимые для успешного применения как в индустрии, так и в академических исследованиях. Слушатели курса научатся постановке и имплементации рекомендательных ML моделей на Python от простой коллаборативной фильтрации до современных нейронных сетей. | Курс нацелен на формирование у слушателя достаточных знаний, навыков и компетенций для построения рекомендательных систем. Курс является прикладным и охватывает все продвинутые темы, необходимые для успешного применения как в индустрии, так и в академических исследованиях. Слушатели курса научатся постановке и имплементации рекомендательных ML моделей на Python от простой коллаборативной фильтрации до современных нейронных сетей. | ||
[https://docs.google.com/document/d/ | [https://docs.google.com/document/d/1dY4PdGA69IADRcnhWvsWhxRFdHNGsWU_/edit?usp=sharing&ouid=104963596150558587903&rtpof=true&sd=true ПУД] | ||
== Цели и результаты курса == | == Цели и результаты курса == | ||
| Строка 21: | Строка 21: | ||
Репозиторий курса: [https://github.com/anamarina/RecSys_course Github] | Репозиторий курса: [https://github.com/anamarina/RecSys_course Github] | ||
{| class="wikitable" style="text-align:center; width:30%; border:none; cellpadding=5px;" | {| class="wikitable" style="text-align:center; width:30%; border:none; cellpadding=5px;" | ||
|- | |- | ||
| | | | | | ||
| style="background:#eaecf0; border: 2px solid gray;" colspan=" | | style="background:#eaecf0; border: 2px solid gray;" colspan="5" | '''Контакты''' | ||
|- style="border: 2px solid gray;" | |- style="border: 2px solid gray;" | ||
! | ! Преподаватели | ||
| style="border: 2px solid gray;" | [https://t.me/ananyevame Марина Ананьева] | | style="border: 2px solid gray;" | [https://t.me/ananyevame Марина Ананьева] | ||
| style="border: 2px solid gray;" | [https://t.me/lashinin Олег Лашинин] | | style="border: 2px solid gray;" | [https://t.me/lashinin Олег Лашинин] | ||
| style="border: 2px solid gray;" | [https://t.me/deethereal Денис Красильников] | | style="border: 2px solid gray;" | [https://t.me/deethereal Денис Красильников] | ||
| style="border: 2px solid gray;" | [https://t.me/pechatov Михаил Печатов] | |||
|- style="border: 2px solid gray;" | |- style="border: 2px solid gray;" | ||
! | ! Ассистенты | ||
| style="border: 2px solid gray;" | | style="border: 2px solid gray;" | [https://t.me/Sllaavva Вячеслав Юсупов] | ||
| style="border: 2px solid gray;" | [https://t.me/amadare14 Мария Кокоева] | |||
| style="border: 2px solid gray;" | [https://t.me/janinaal Яна Журович] | |||
| style="border: 2px solid gray;" | [https://t.me/Konstantinator Констатин Чайников] | |||
| style="border: 2px solid gray;"| [https://t.me/ambdash Дарья Прудникова] | |||
|- | |- | ||
|} | |} | ||
==Оценки== | ==Оценки== | ||
[https://docs.google.com/spreadsheets/d/ | [https://docs.google.com/spreadsheets/d/13IqUHcFiQhee1CiFSZrfozbWc9r-mIDXfJKKTxKV5Nc/edit?usp=sharing Таблица с оценками] | ||
Определим накопленную оценку как '''Накоп = (0.3 * ДЗ + 0. | Определим накопленную оценку как '''Накоп = (0.3 * ДЗ + 0.3 * Т) / 0.6''' | ||
Оценка ставится по формуле: | Оценка ставится по формуле: | ||
'''Final grade = Округление(0. | '''Final grade = Округление(0.6 * Накоп + 0.4 * Э)''', где | ||
'''ДЗ''' - среднее за | '''ДЗ''' - среднее за 5 домашних заданий. Одно на тему имплементации метрик оценки качества ранжирования, другое - участие в открытом соревновании по рекомендательным системам на онлайн платформе Kaggle. | ||
'''Т''' - средняя арифметическая оценка за | '''Т''' - средняя арифметическая оценка за 19 тестов, которые проводятся на базе Google Forms/Anytask. Каждый тест содержит от 4 до 10 вопросов на пройденную тему последних лекции и семинаре в формате открытых вопросов либо с выбором ответов. | ||
'''Э''' - устный, дистанционный экзамен на онлайн платформе Talk. Разрешается пользоваться материалами. Экзамен неблокирующий. Продолжительность - 15 минут на студента. Максимальная оценка 10 баллов на основе общего впечатления преподавателя от ответов студента. | |||
'''Э''' - устный, дистанционный экзамен на онлайн платформе | |||
Если '''Накоп >= 8''' и '''Т >= 8''', то студент может получить '''Накоп''' в качестве итоговой оценки, не приходя на экзамен. Значения порогов могут быть пересмотрены с учетом фактической общей успеваемости потока. | Если '''Накоп >= 8''' и '''Т >= 8''', то студент может получить '''Накоп''' в качестве итоговой оценки, не приходя на экзамен. Значения порогов могут быть пересмотрены с учетом фактической общей успеваемости потока. | ||
| Строка 57: | Строка 59: | ||
==Материалы курса== | ==Материалы курса== | ||
Еженедельные квизы и записи трансляций доступны [ | Еженедельные квизы и записи трансляций доступны [ по ссылке] | ||
{| class="wikitable" | {| class="wikitable" | ||
| Строка 63: | Строка 65: | ||
! Неделя !! Тема !! Материалы !! Домашнее задание !! Дедлайн | ! Неделя !! Тема !! Материалы !! Домашнее задание !! Дедлайн | ||
|- | |- | ||
| style="background:#eaecf0;" | '''1''' || Введение в рекомендательные системы || [https://github.com/anamarina/RecSys_course/ | | style="background:#eaecf0;" | '''1''' || Введение в рекомендательные системы || [https://github.com/anamarina/RecSys_course/tree/2025/week1 Лекция и семинар] || - || - | ||
|- | |- | ||
|} | |} | ||
| Строка 86: | Строка 76: | ||
==Список литературы== | ==Список литературы== | ||
1. Recommender Systems Handbook. Francesco Ricci et al, Springer, 2022 | |||
2. Hands-On Recommendation Systems with Python. Rounak Banik, 2018 | |||
3. Building Recommendations Systems in Python and JAX. Brian Bischof et al, 2018 | |||
4. Practical Recommender Systems. Kim Falk, 2019 | |||
5. Session-Based Recommender Systems Using Deep Learning. Reza Ravanmehr et al. Springer, 2024 | |||
6. Designing Machine Learning Systems. Chip Huyen, 2022 | |||
7. Designing Data-Intensive Applications. Martin Kleppmann, 2017 | |||
Текущая версия от 23:23, 15 января 2025
О курсе
Курс нацелен на формирование у слушателя достаточных знаний, навыков и компетенций для построения рекомендательных систем. Курс является прикладным и охватывает все продвинутые темы, необходимые для успешного применения как в индустрии, так и в академических исследованиях. Слушатели курса научатся постановке и имплементации рекомендательных ML моделей на Python от простой коллаборативной фильтрации до современных нейронных сетей.
Цели и результаты курса
Главная цель - сформировать знания, умения и навыки по разработке рекомендательных систем в исследовательских и индустриальных задачах.
Планируемые результаты:
- Знать основные подходы рекомендательных систем и алгоритмов к решению задачи ранжирования и рекомендаций пользователям.
- Уметь правильно определять и формализовывать задачу для построения рекомендательной системы.
- Определять и имплементировать функции ранжирования и метрики качества оценки алгоритмов.
- Разрабатывать модели машинного обучения для рекомендательных систем разной сложности на языке программирования Python.
- Объяснять и интерпретировать предсказания на локальном и глобальном уровне моделей, использовать их для отладки ошибок и аномалий.
- Разрабатывать базовые API сервисы для рекомендательных моделей с помощью docker.
Контакты
Репозиторий курса: Github
| Контакты | |||||
| Преподаватели | Марина Ананьева | Олег Лашинин | Денис Красильников | Михаил Печатов | |
|---|---|---|---|---|---|
| Ассистенты | Вячеслав Юсупов | Мария Кокоева | Яна Журович | Констатин Чайников | Дарья Прудникова |
Оценки
Определим накопленную оценку как Накоп = (0.3 * ДЗ + 0.3 * Т) / 0.6
Оценка ставится по формуле: Final grade = Округление(0.6 * Накоп + 0.4 * Э), где
ДЗ - среднее за 5 домашних заданий. Одно на тему имплементации метрик оценки качества ранжирования, другое - участие в открытом соревновании по рекомендательным системам на онлайн платформе Kaggle.
Т - средняя арифметическая оценка за 19 тестов, которые проводятся на базе Google Forms/Anytask. Каждый тест содержит от 4 до 10 вопросов на пройденную тему последних лекции и семинаре в формате открытых вопросов либо с выбором ответов.
Э - устный, дистанционный экзамен на онлайн платформе Talk. Разрешается пользоваться материалами. Экзамен неблокирующий. Продолжительность - 15 минут на студента. Максимальная оценка 10 баллов на основе общего впечатления преподавателя от ответов студента.
Если Накоп >= 8 и Т >= 8, то студент может получить Накоп в качестве итоговой оценки, не приходя на экзамен. Значения порогов могут быть пересмотрены с учетом фактической общей успеваемости потока.
Материалы курса
Еженедельные квизы и записи трансляций доступны [ по ссылке]
| Неделя | Тема | Материалы | Домашнее задание | Дедлайн |
|---|---|---|---|---|
| 1 | Введение в рекомендательные системы | Лекция и семинар | - | - |
Программное обеспечение
- Python >= 3.10
- Jupyter Notebook
- pip3
Список литературы
1. Recommender Systems Handbook. Francesco Ricci et al, Springer, 2022
2. Hands-On Recommendation Systems with Python. Rounak Banik, 2018
3. Building Recommendations Systems in Python and JAX. Brian Bischof et al, 2018
4. Practical Recommender Systems. Kim Falk, 2019
5. Session-Based Recommender Systems Using Deep Learning. Reza Ravanmehr et al. Springer, 2024
6. Designing Machine Learning Systems. Chip Huyen, 2022
7. Designing Data-Intensive Applications. Martin Kleppmann, 2017