BSc: B1.O.23 MFAI 2024 Introduction to Machine Learning 8s
Введение в машинное обучение
Квалификация выпускника: бакалавр
Направление подготовки: 09.03.01 Информатика и вычислительная техника
Направленность (профиль) образовательной программы: Математические основы искусственного интеллекта
Программу разработал(а): Хан А. М., Соколов Е. А.
1. Краткая характеристика дисциплины
Изучение дисциплины (модуля) «Введение в машинное обучение» обеспечивает формирование и развитие компетенций обучающихся в области в области анализа данных, разработки и применения алгоритмов машинного обучения, их применение для решения различных прикладных задач в рамках профессиональной деятельности.
2. Перечень планируемых результатов обучения
Целью освоения дисциплины (модуля) является формирование знаний, умений и навыков в рамках профессиональной деятельности, позволяющих успешно работать в избранной отрасли, а также обладать компетенциями, способствующими социальной мобильности, устойчивости и конкурентоспособности обучающегося в условиях современных рыночных отношений.
Задачами дисциплины являются ознакомление с основными понятиями и принципами машинного обучения, включая обучение с учителем (классификация и регрессия) и методы анализа данных; изучение методов предобработки данных (очистка, нормализация, кодирование категориальных признаков) и их важности для успешного обучения моделей; изучение линейных моделей (регрессия и классификация) и интерпретация их результатов в реальных задачах; овладение структурой и алгоритмами построения решающих деревьев, а также ансамблевыми методами (случайные леса, градиентный бустинг) для повышения точности моделей; ознакомление с основами кластеризации и методами снижения размерности (например, K-средние и PCA) для анализа неразмеченных данных; изучение методов коллаборативной и контентной фильтрации в рекомендательных системах; ознакомление с концепциями адаптации домена и переноса обучения для улучшения производительности моделей в изменяющихся условиях.
Общая характеристика результата обучения по дисциплине
Знания: сформированы систематические знания предмета в полном объеме рабочей программы.
Умения: сформированы умения анализировать, сравнивать, классифицировать, обобщать, конкретизировать и систематизировать изученный материал, выделять в нем главное: устанавливать причинно-следственные связи.
Навыки (владения): сформировано владение навыками формулировки ответов; навыками свободного чтения результатов анализов и других исследований и решения ситуационных задач повышенной сложности; навыками работы с основной литературой и методами исследования большого объема, необходимого для практической деятельности; навыками соединения теоретических аспектов предмета с задачами практического значения.
3. Структура и содержание дисциплины
| № раздела | Наименование раздела дисциплины (модуля) | Содержание дисциплины (модуля) по темам |
| 1. | Обучение с учителем | Продвинутые методы обучения линейных моделей. Хэширование признаков и случайные проекции. Методы отбора признаков. Обобщённые линейные модели. Современные имплементации градиентного бустинга. Ядровые методы. Метод k ближайших соседей в классификации и регрессии. Метрики на сложных объектах. Метрики на текстах на основе представлений слов. Методы поиска ближайших соседей. Locality-sensitive hashing. Обучение метрик, learning to hash. |
| 2. | Обучение без учителя | Ядра, их теоретические основы и примеры применения для сложных объектов. Аппроксимация признаковых описаний в спрямляющем пространстве. EM-алгоритм. Тематическое моделирование, LDA. Генеративные модели. Продвинутые методы кластеризации. Лапласианы графов в машинном обучении. Методы обнаружения аномалий, одноклассовые методы. |
| 3. | Ранжирование и рекомендательные системы | Матричные разложения и факторизационные машины; их применения в машинном обучении. Метрики качества рекомендательных систем. Обучение ранжированию. Метрики качества ранжирования. Поточечный, попарный и списочный подходы. Краудсорсинг при сборе разметки, оптимальная агрегация меток. |
| 4. | Задача адаптации признакового пространства (domain adaptation), transfer learning | Введение в transfer learning. Типы transfer learning. Задача адаптации домена (domain adaptation). Методы адаптации домена. Проблемы и вызовы.
Применение адаптации домена в компьютерном зрении, обработке естественного языка и других областях. Практические кейсы, показывающие эффективность transfer learning. Метрики для оценки качества адаптации. Сравнение производительности моделей до и после адаптации. Актуальные проблемы и новые подходы в области transfer learning и domain adaptation. |
4. Методические и оценочные материалы
Задания для практических занятий:
| №
п/п |
Наименование раздела дисциплины (модуля) | Перечень рассматриваемых тем (вопросов) |
| 1. | Обучение с учителем | Хэширование признаков и случайные проекции: Участники изучат методы хэширования признаков и случайных проекций для уменьшения размерности данных, а также реализуют эти методы на реальных наборах данных.
Методы отбора признаков: Практическое занятие будет посвящено различным методам отбора признаков, включая фильтрационные, обертки и встроенные методы, с акцентом на их применение в задачах классификации и регрессии. Обобщённые линейные модели: Участники изучат принципы работы обобщённых линейных моделей (GLM) и реализуют их на практике, сравнивая результаты с традиционными линейными моделями. Современные имплементации градиентного бустинга: Занятие будет посвящено изучению современных библиотек для реализации градиентного бустинга (например, XGBoost, LightGBM) и их применению к реальным задачам. |
| 2. | Обучение без учителя | Ядра и их применение в машинном обучении: Изучение различных типов ядер, их теоретические основы и применение для сложных объектов, таких как изображения и тексты. Реализация SVM с различными ядрами на реальных данных.
Аппроксимация признаковых описаний в спрямляющем пространстве: Практическое занятие по методам аппроксимации и их применению для уменьшения размерности данных, включая PCA и t-SNE. EM-алгоритм и тематическое моделирование: Реализация EM-алгоритма для кластеризации данных и тематического моделирования с использованием LDA на текстовых наборах данных. Методы обнаружения аномалий и одноклассовые методы: Исследование различных методов обнаружения аномалий, включая одноклассовые SVM и алгоритмы на основе кластеризации. Применение этих методов к задачам реального времени. |
| 3. | Ранжирование и рекомендательные системы | Матричные разложения и их применение в рекомендательных системах: Изучение методов SVD, NMF и других разложений матриц для создания рекомендательных систем. Практическая реализация на реальных данных.
Метрики качества рекомендательных систем: Анализ различных метрик, таких как RMSE, MAE, Precision@K и Recall@K. Сравнение их применимости в разных сценариях. Обучение ранжированию: методы и подходы: Исследование методов обучения ранжированию, включая попарный и списочный подходы. Реализация алгоритмов на примерах наборов данных. Краудсорсинг и агрегация меток для разметки данных: Изучение методов сбора разметки с использованием краудсорсинга и оптимальных подходов к агрегации меток. Практическое занятие по анализу полученных данных. |
| 4. | Задача адаптации признакового пространства (domain adaptation), transfer learning | Основы Transfer Learning: Теория и Практика.
- Изучение принципов transfer learning, его типов и применения в различных задачах. Практическое занятие на настройку модели для переноса знаний. Адаптация домена: Методы и Алгоритмы. - Обзор методов адаптации домена, таких как Adversarial Training и Domain-Invariant Feature Learning. Реализация одного из методов на примере набора данных.Применение Transfer Learning в Компьютерном Зрении. - Практическое занятие по использованию предобученных моделей (например, ResNet, VGG) для решения задач классификации изображений с адаптацией к новому домену. Метрики Оценки Качества Адаптации. - Изучение метрик, используемых для оценки качества адаптации моделей, таких как Accuracy, F1-score и AUC. Практическая работа по сравнению производительности моделей до и после адаптации. |
Текущий контроль успеваемости обучающихся по дисциплине:
| №
п/п |
Наименование раздела дисциплины (модуля) | Форма текущего контроля | Материалы текущего контроля |
| 1. | Обучение с учителем | Устный / письменный опрос | Устный / письменный опрос:
Объясните, как работают методы отбора признаков и приведите примеры ситуаций, когда их использование может значительно улучшить качество модели. Каковы основные отличия между локальным чувствительным хэшированием (Locality-sensitive hashing) и традиционными методами поиска ближайших соседей? Опишите процесс обучения метрик (learning to hash) и его применение в задачах поиска ближайших соседей. Как современные реализации градиентного бустинга (например, XGBoost) улучшают производительность по сравнению с классическими методами бустинга? |
| 2. | Обучение без учителя | Устный / письменный опрос | Устный / письменный опрос:
Опишите, как работают генеративные модели в контексте машинного обучения, и приведите примеры их применения. Какова роль лапласианов графов в методах кластеризации и какие преимущества они предоставляют по сравнению с традиционными методами? Объясните процесс тематического моделирования с использованием LDA и его применение для анализа текстов. Каковы основные отличия между одноклассовыми методами обнаружения аномалий и традиционными методами классификации? |
| 3. | Ранжирование и рекомендательные системы | Устный / письменный опрос | Устный / письменный опрос:
Объясните, как работает метод SVD для факторизации матриц и его применение в рекомендательных системах. Каковы преимущества и недостатки различных метрик качества рекомендательных систем, таких как Precision, Recall и F1-score? Опишите процесс краудсорсинга для сбора разметки данных и методы оптимальной агрегации полученных меток. Каковы основные принципы обучения ранжированию и какие алгоритмы наиболее популярны в этой области? |
| 4. | Задача адаптации признакового пространства (domain adaptation), transfer learning | Устный / письменный опрос | Устный / письменный опрос:
Объясните, что такое адаптация домена и какие задачи она решает в контексте transfer learning. Опишите несколько методов адаптации домена и приведите примеры их применения в компьютерном зрении или обработке естественного языка. Каковы основные проблемы и вызовы, связанные с transfer learning и адаптацией домена? Сравните производительность модели до и после адаптации, используя конкретные примеры и метрики оценки. |
Контрольные вопросы для подготовки к промежуточной аттестации:
| №
п/п |
Наименование раздела дисциплины (модуля) | Вопросы |
| 1. | Обучение с учителем | Каковы основные преимущества и недостатки методов хэширования признаков по сравнению с традиционными методами уменьшения размерности?
Какие метрики можно использовать для оценки качества моделей, построенных с использованием обобщённых линейных моделей? В чем заключается принцип работы метода k ближайших соседей и какие его основные ограничения? |
| 2. | Обучение без учителя | Каковы основные принципы работы ядерных методов в машинном обучении и какие задачи они помогают решать?
В чем заключается суть EM-алгоритма и как он используется для решения задач кластеризации? Какие методы обнаружения аномалий существуют и в каких ситуациях каждый из них наиболее эффективен? |
| 3. | Ранжирование и рекомендательные системы | Какие основные матричные разложения используются в рекомендательных системах и как они помогают улучшить качество рекомендаций?
В чем различия между поточечным, попарным и списочным подходами в обучении ранжированию? Каковы основные метрики качества ранжирования и как они влияют на оценку эффективности рекомендательных систем? |
| 4. | Задача адаптации признакового пространства (domain adaptation), transfer learning | Каковы основные типы transfer learning и в чем их отличия?
Какие методы используются для адаптации домена, и какие проблемы они могут решать? Какие метрики применяются для оценки качества адаптации моделей в задачах transfer learning? |
Вопросы/Задания к промежуточной аттестации в устной/письменной форме:
1. Какой из следующих методов не является методом отбора признаков?
A) LASSO
B) Recursive Feature Elimination (RFE)
C) Principal Component Analysis (PCA)
D) Random Forest Feature Importance
Правильный ответ: C) Principal Component Analysis (PCA)
2. Какой из следующих алгоритмов является примером обобщённой линейной модели?
A) Decision Tree
B) Support Vector Machine
C) Logistic Regression
D) K-Means Clustering
Правильный ответ: C) Logistic Regression
3. Какой из следующих методов лучше всего подходит для работы с разреженными данными в контексте поиска ближайших соседей?
A) Euclidean Distance
B) Manhattan Distance
C) Cosine Similarity
D) Locality-sensitive hashing
Правильный ответ: D) Locality-sensitive hashing
4. Какое из следующих ядер не является положительно определенным?
A) Полиномиальное ядро
B) Радиационное ядро (RBF)
C) Линейное ядро
D) Ядро Гаусса с отрицательным параметром
Правильный ответ: D) Ядро Гаусса с отрицательным параметром
5. Какой из следующих методов используется для аппроксимации вероятностных распределений в EM-алгоритме?
A) K-Means
B) Expectation-Maximization
C) Principal Component Analysis
D) Support Vector Machines
Правильный ответ: B) Expectation-Maximization
6. Какой метод лучше всего подходит для обнаружения аномалий в высокоразмерных данных?
A) K-Means
B) Одноклассовый SVM
C) Линейная регрессия
D) Метод главных компонент
Правильный ответ: B) Одноклассовый SVM
7. Какое из следующих разложений матриц не является методом факторизации?
A) SVD
B) NMF
C) PCA
D) K-Means
Правильный ответ: D) K-Means
8. Какая метрика наиболее подходит для оценки качества рекомендательной системы с учетом порядка рекомендаций?
A) RMSE
B) Mean Absolute Error
C) NDCG (Normalized Discounted Cumulative Gain)
D) Precision@K
Правильный ответ: C) NDCG (Normalized Discounted Cumulative Gain)
9. Какой из следующих подходов к обучению ранжированию требует наличия парных сравнений?
A) Поточный подход
B) Попарный подход
C) Списочный подход
D) Метод на основе контента
Правильный ответ: B) Попарный подход
10. Какой из следующих методов не является методом адаптации домена?
A) Adversarial Training
B) Fine-tuning
C) Transfer Component Analysis
D) K-Means Clustering
Правильный ответ: D) K-Means Clustering
11. Какой из следующих подходов наиболее часто используется для оценки качества адаптации в задачах transfer learning?
A) Mean Squared Error
B) Cross-Entropy Loss
C) F1-score
D) Precision@K
Правильный ответ: C) F1-score
12. Какой из следующих факторов может негативно повлиять на эффективность transfer learning?
A) Схожесть между исходным и целевым доменами
B) Различия в распределении данных между доменами
C) Использование предобученных моделей
D) Наличие большого объема данных в целевом домене
Правильный ответ: B) Различия в распределении данных между доменами
Перечень учебно-методического обеспечения дисциплины (модуля):
Основная литература:
1. Ракитский, А. А. Методы машинного обучения: учебно-методическое пособие / А. А. Ракитский. — Новосибирск: Сибирский государственный университет телекоммуникаций и информатики, 2018. — 32 c. — Режим доступа: https://www.iprbookshop.ru/90591.html — ЭБС «IPRbooks».
2. Теория и практика машинного обучения: учебное пособие / В. В. Воронина, А. В. Михеев, Н. Г. Ярушкина, К. В. Святов. — Ульяновск: Ульяновский государственный технический университет, 2017. — 291 c. — Режим доступа: https://www.iprbookshop.ru/106120.html — ЭБС «IPRbooks».
Дополнительная литература:
1. Барский, А. Б. Введение в нейронные сети: учебное пособие / А. Б. Барский. — 4-е изд. — Москва: Интернет-Университет Информационных Технологий (ИНТУИТ), Ай Пи Ар Медиа, 2024. — 357 c. — Режим доступа: https://www.iprbookshop.ru/133929.html — ЭБС «IPRbooks».
2. Кузнецов, В. П. Нейронные сети: практический курс: учебное пособие / В. П. Кузнецов. — Рязань: Рязанский государственный радиотехнический университет, 2014. — 71 c. — Режим доступа: https://www.iprbookshop.ru/121460.html — ЭБС «IPRbooks».
Методические указания для обучающихся по освоению дисциплины (модуля)
| Вид учебных занятий/деятельности | Деятельность обучающегося |
|---|---|
| Лекция | Написание конспекта лекций: кратко, схематично, последовательно фиксировать основные положения лекции, выводы, формулировки, обобщения; помечать важные мысли, выделять ключевые слова, термины. Обозначить вопросы, термины или другой материал, который вызывает трудности, пометить и попытаться найти ответ в рекомендуемой литературе. Если самостоятельно не удается разобраться в материале, необходимо сформулировать вопрос и задать преподавателю на консультации, во время семинарского (практического) занятия. |
| Практическое (семинарское) занятие | При подготовке к семинарскому (практическому) занятию необходимо проработать материалы лекций, основной и дополнительной литературы по заданной теме. На основании обработанной информации постараться сформировать собственное мнение по выносимой на обсуждение тематике. Обосновать его аргументами, сформировать список источников, подкрепляющих его.
Во время семинарского (практического) занятия активно участвовать в обсуждении вопросов, высказывать аргументированную точку зрения на проблемные вопросы. Приводить примеры из источниковой базы и научной и/или исследовательской литературы. |
| Устный/письменный опрос | Отвечать, максимально полно, логично и структурировано, на поставленный вопрос. Основная цель – показать всю глубину знаний по конкретной теме или ее части. |
| Подготовка к промежуточной аттестации | При подготовке к промежуточной аттестации необходимо проработать вопросы по темам, которые рекомендуются для самостоятельной подготовки. При возникновении затруднений с ответами следует ориентироваться на конспекты лекций, семинаров, рекомендуемую литературу, материалы электронных и информационных справочных ресурсов, статей.
Если тема вызывает затруднение, четко сформулировать проблемный вопрос и задать его преподавателю. |
| Практические (лабораторные) занятия | Практические занятия предназначены прежде всего для разбора отдельных сложных положений, тренировки аналитических навыков, а также для развития коммуникационных навыков. Поэтому на практических занятиях необходимо участвовать в тех формах обсуждения материала, которые предлагает преподаватель: отвечать на вопросы преподавателя, дополнять ответы других студентов, приводить примеры, задавать вопросы другим выступающим, обсуждать вопросы и выполнять задания в группах. Работа на практических занятиях подразумевает домашнюю подготовку и активную умственную работу на самом занятии. Работа на практических занятиях в форме устного опроса заключается прежде всего в тренировке навыков применять теоретические положения к самому разнообразному материалу. В ходе практических занятий студенты работают в группах для обсуждения предлагаемых вопросов. |
| Самостоятельная работа | Самостоятельная работа состоит из следующих частей: 1) чтение учебной, справочной, научной литературы; 2) повторение материала лекций; 3) составление планов устных выступлений; 4) подготовка видеопрезентации. При чтении учебной литературы нужно разграничивать для себя материал на отдельные проблемы, концепции, идеи. Учебную литературу можно найти в электронных библиотечных системах, на которые подписан АНО Университет Иннополис. |
| Дискуссия | Публичное обсуждение спорного вопроса, проблемы. Каждая сторона должна оппонировать мнение собеседника, аргументируя свою позицию. |
| Тестирование (устное/письменное) | При подготовке к тестированию необходимо проработать материалы лекций, семинаров, основной и дополнительной литературы по заданной теме. Основная цель тестирования – показать уровень сформированности знаний по конкретной теме или ее части. |
| Индивидуальная работа | При выполнение индивидуальной работы необходимо взять задание у преподавателя, ознакомиться с требованиями к выполнению работы, изучить поставленную проблему, найти решение проблемы. Если самостоятельно не удается разобраться в материале, необходимо сформулировать вопрос и задать преподавателю на консультации, во время семинарского (практического) занятия. Оформить результаты работы. |
| Разработка отдельных частей кода | Разработать часть кода, исходя из поставленной задачи и рекомендаций преподавателя. При выполнении работы рекомендуется обращаться к материалам лекций и семинарских (практических) занятий. Если возникают затруднения, необходимо проконсультироваться с преподавателем. |
| Выполнение домашних заданий и групповых проектов | Для выполнения домашних заданий и групповых проектов необходимо получить формулировку задания от преподавателя и убедиться в понимании задания. При выполнение домашних заданий и групповых проектов необходимо проработать материалы лекций, основной и дополнительной литературы по заданной теме. |