- Зачет и получение оценок по курсу 16.12.2024 в 18:30 по расписанию занятий. Ссылка на оценки тут.
- Заполнять текст каждой темы тут. Требуется написать текст выбраной темы(подтемы) и придумать 3 задачи на заданую тему.
- Запись на темы MLbook. Для записи выбрать темы, придумать подтему (на основе лекций/семинаров).
- Плейлист лекций и семинаров: 2020-2021; 2021-2022
- Курс лекций К.В. Воронцова.
- Курс Мурата Апишева по python.
- Почта для связи.
- Группа в тг 2024.
- Начало: 20:00 23.09.2024.
- Дедлайн: 23:59 20.10.2024.
- Писать на почту Андрею. Тема письма [MIPT-2024-ML-fall-1] ФИО. В письме прислать .ipynb файл.
- Генератор задания:
- В качестве почты нужно ввести почту в домене @phystech.edu.
- После ввода почты, вам будет предложена выборка с ссылкой для скачивания, а также методы, которые нужно проанализировать для данной выборки.
- Требуется:
- Провести анализ выборки:
- Определить тип признаков.
- Выполнить визуальный анализ данных.
- Выполнить препроцесинг данных:
- Преобразовать категориальные признаки в вещественные.
- Отнормировать признаки.
- Провести эксперимент для предложенных методов:
- Выполнить подбор гиперпараметров.
- Подобрать регуляризаторы.
- Получить итоговые модели.
- Описать полученные результаты:
- Какая модель лучше и почему.
- С какими проблемами столкнулись во время выполнения, возможно недочеты стандартных библиотек.
- Совпадают ли полученные результаты с ожидаемыми результатами.
- Оценивание:
- Качество кода (1б):
- Код должен работать у проверяющего.
- Код должен был понятен без автора.
- Качество анализа (3б):
- Анализ выборки.
- Анализ гиперпараметров.
- Анализ результатов для разных моделей.
- Качество отчета (1б):
- Учитывается полнота отчета.
- Начало: 18:30 11.11.2024.
- Дедлайн: 23:59 15.12.2024.
- Ссылка на задание.
- Писать на почту Андрею. Тема письма [MIPT-2024-ML-fall-2] ФИО. В письме прислать .ipynb файл и ник на kaggle.
- Требуется:
- Отправить свое решение в csv формате на kaggle.com.
- Отправить ноутбук с решением на почту.
- Семинар:
- Теоретическая часть:
- Общие идеи оптимизации, функции ошибки и тд.
- Практическая часть:
- При помощи sklearn показать пример Ирисов Фишера.
- Понятие модели алгоритмов, алгоритм обучения, процесс оптимизации для конкретной задачи.
- Переход от бинарной к многоклассовой.
- Переобучение. Борьба с переобучением (начало).
- Немного о типах задач машинного обучения: прикладные и исследовательские
- Домашнее задание:
- В задаче по переходу от бинарной классификации к многоклассовой добавить константу и скорректировать соответствующие разделяющие гиперплоскости.
- Подсказка: в LogisticRegresion нужно добавить специальный параметр fit_intercept=False, чтобы внутри черного ящика своя константа не добавлялась(влияет на результат).
- Семинар:
- Теоретическая часть:
- Анализ стохастического градиента на сходимость.
- Задача линейной регрессии, МНК в общем случае.
- Постановка задачи линейной регрессии через правдоподобие, вероятностные предположения о данных + регуляризаций.
- Практическая часть:
- Разбор домашнего задания.
- Метод стохастического градиента на практике.
- Использования torch framework для нахождения градиента сложной функции.
- Вероятностная постановка задачи машинного обучения. Регуляризация l1, l2.
- Анализ решения задачи оптимизации от параметра регуляризации.
- Выбор параметра регуляризации при помощи LOO.
- Домашнее задание:
- Используя вероятностную постановку задачи для линейной регрессии с априорным предположением p(w) = N(0, I) получить аналитическое решение на оптимальный вектор параметров w.
- Использовать метод Cross-Validation вместо метода LOO для выбора оптимального параметра регуляризации gamma.
- Семинар:
- Теоретическая часть:
- Автоматическое дифференцирование.
- Практическая часть:
- Разбор домашнего задания.
- Построение простой нейросетевой модели: многослойный персептрон.
- Обучение персептрона на выборке MNIST.
- Подбор гиперпараметров модели.
- Прореживание сетей (без кода, только графики).
- Домашнее задание:
- Проделать то, что было на семинаре для выборки FashionMnist: подбор гиперпараметров модели (выполнить более подробно чем на семинаре), также провести анализ полученных результатов.
- Указать какие минусы вы увидели в подборе гиперпараметров на семинаре (их как минимум 3).
- Семинар:
- Практическая часть:
- Разбор домашнего задания.
- Пример как можно отказаться от признаков в линейном классификаторе.
- Метод ближайших соседей, анализ разного количества соседей.
- Ядра в методе ближайших соседей.
- Метод Парзеновского окна.
- Метод потенциальных функций (реализация).
- Отбор эталонных элементов, алгоритм STOLP.
- Формула Надарая Ватсона.
- Домашнее задание:
- Выбрать один из метрических классификаторов (классификации или регрессии) и выполнить поиск оптимальных гиперпараметра при помощи кросс валидации.
- Семинар:
- Практическая часть:
- SVM для классификации.
- Примеры использования ядер для SVM.
- SVM для регрессии.
- Генерация признаков на основе опорных элементов.
- Домашнее задание:
- Провести эксперимент с полиномиальным ядром: сгенерировать синтетическую выборку, на которой полиномиальное ядро имеет лучшее качество аппроксимации чем rbf и линейное ядро.
- Семинар:
- Практическая часть:
- Многомерная линейная регрессия.
- Сингулярное разложение.
- Регуляризация для многомерной регрессии: используя SVD.
- Зависимость качества аппроксимации от числа обусловленности.
- Метод главных компонент: визуализация MNIST.
- Метод главных компонент: для изображений.
- Домашнее задание:
- Доказать лемму из семинара.
- Для синтетически сгенерированной выборки (beta=2, mu=0.01) построить график зависимости качества аппроксимации контрольной выборки от коэффициента регуляризации. Сравнить скорость работы в случае использования SVD разложения и без него.
- Семинар:
- Практическая часть:
- Нелинейная регрессия: пример задачи.
- Сравнение градиентного спуска, метода Ньютона-Рафсона, метода Ньютона-Гауса.
- Обобщенно линейные модели: оптимальный размер выборки.
- Функция потерь для задачи поиска близких предложений.
- Визуализация сходимости метода Ньютона Рафсона и стохастического градиента.
- Домашнее задание:
- Использовать модель для векторизации предложений из семинара. На основе полученных векторов решить задачу сентимент анализа для выборки Twitter (задача бинарной классификации). В качестве модели рассмотреть логистическую регрессию. Рекомендуется использовать модель Perceptron с третьего семинара, а также функцию ошибки torch.nn.BCELoss. Ссылка на данные: https://drive.google.com/file/d/1k4JrnVcoePEENCYt5iy17dyV_h133j2X/view?usp=sharing (предложения для классификации это последний столбец, а целевая переменная это второй столбец).
- Семинар:
- Практическая часть:
- Оценка качества моделей: внешний и внутренний критерии.
- Отбор признаков: полный перебор, алгоритм Add, алгоритм Add-Del.
- Качество классификации: Precision, Recall.
- Пример задачи information retrieval.
- О составлении выборки для постановки задачи ML.
- Домашнее задание:
- реализовать метода отбора признаков Add-Del.
- предложения внешний критерий качества для задачи поиска ошибок в текстах.
- Семинар:
- Практическая часть:
- Логический классификатор реализация.
- Примеры задач для решения логическим классификатором.
- Критерии информативности.
- Решающий список, простая реализация.
- Решающее дерево.
- Случайный лес.
- Домашнее задание:
- в реализованный метод построение логистического классификатора добавить возможность оптимизации по критерию Джини.
- Семинар:
- Практическая часть:
- Постановка задачи ассоциативных правил.
- Синтетический пример.
- Пример реальных данных из kaggle.
- Алгоритм APriory.
- Алгоритм FP-growth.
- Обобщение для вещественных данных.
- Обобщенные ассоциативные правила.
- Домашнее задание:
- выполнить анализ ассоциативных правил, которые получены алгоритмом FP-growth. Рассмотреть только те правила, которые содержат более 3 элементов
- Семинар:
- Практическая часть:
- DummyEnsemble.
- AdaBoost.
- Градиентный бустинг, XGBoost.
- Пример реальных данных из kaggle.
- RandomForest.
- Mixture Of Expert.
- Семинар:
- Практическая часть:
- ComBoost.
- Gradient Boosting.
- XGBoost.
- CatBoost.
- Домашнее задание:
- Реализовать комитетный бустинг для задачи регрессии.
- Семинар:
- Практическая часть:
- Принцип максимума правдоподобия: визуализация.
- Восстановление плотности по эмпирическим данным.
- LOO для выбора ширины окна.
- Наивный байесовский классификатор.
- Домашнее задание:
- Получить оценку параметров нормального распределения из принципа максимума правдоподобия.
- Семинар:
- Практическая часть:
- Задача кластеризации.
- Примеры кластеров.
- K-means.
- DBSCAN.
- Иерархическая кластеризация.
- Частичное обучение.
- Self-training, 1970.
- Неразмеченные данные в глубоком обучении.
- Домашнее задание:
- Самому сравнить разные методы кластеризации для трех концентрических окружностей.
- Дедлайн: 23:59 31.03.2024. Жесткий дедлайн 07.04.2024, каждый день оценка по каждой задаче уменьшается на 0.05. Суммарное количество баллов за каждую задачу 1.
- Задание доступно по ссылке.
- Писать на почту Андрею. Тема письма [MIPT-2024-ML-spring-1] ФИО. В письме прислать .ipynb файлы (или ссылку на диск --- проверьте что есть доступ на чтение!!!).
- Дедлайн: 23:59 05.05.2024. Жесткий дедлайн 12.05.2024, каждый день оценка по каждой задаче уменьшается на 0.05.
- Задание доступно по ссылке.
- Писать на почту Андрею. Тема письма [MIPT-2024-ML-spring-2] ФИО. В письме прислать .ipynb файлы (или ссылку на диск --- проверьте что есть доступ на чтение!!!).
- Семинар:
- Практическая часть:
- Сверточные нейронные сети.
- Отслеживание обучения при помощи tensorboard.
- Рекурентные нейронные сети.
- Использование предобученных моделей.
- Интерпретируемость ответов нейросети.
- Семинар:
- Практическая часть:
- Автокодировщик.
- Линейный автокодировщик.
- Автокодировщик на основе CNN.
- Вариационный автокодировщик.
- Перенос обучения с предварительно обученой модели.
- Генеративно состязательные сети.
- Семинар:
- Практическая часть:
- Пример классификации твитов.
- Зачем нужна векторизация?.
- Токенизация текстов.
- Word2Vec (на основе модели FastText).
- FastText модель (сжатая до emb-dim=10 для легковестности).
- Задачи для unsupervise training моделей векторизации.
- Семинар:
- Практическая часть:
- Модель внимания в рекурентных нейронных сетях.
- Трансформеры.
- T2T переводчик.
- BPE токенизация.
- BERT.
- LaBSE.
- Семинар:
- Практическая часть:
- Модель LDA.
- Модель PLSA (bigartm).
- Семинар:
- Практическая часть:
- Задачи из ДЗ.
- Семинар:
- Практическая часть:
- Базовые понятия.
- Пример задачи ранжирования.
- Пример рекомендательной системы.
- Обучение поисковика на базе pyserini.
- Семинар:
- Практическая часть:
- Константная модель.
- Кореляционная система.
- SLIM.
- SVD.
- Семинар:
- Практическая часть:
- Авторегрессионная модель.
- Экспоненциальное сглаживание.
- Кластерный анализ временных рядов.
- Семинар:
- Практическая часть:
- Семинар:
- Практическая часть:
- Стационарный многорукий бандин.
- Нестационарный многорукий бандин.
- Задача о заплыве.
- Семинар:
- Практическая часть:
- Активное обучение со случайным добавляющим элементом.
- Активное обучение с добавлением элемента с максимальной дисперсией.
- Семинар:
- Теоретическая часть:
- Разбор Posterior Sampling
- Семинар:
- Практическая часть:
- Исправление опечаток при помощи mT5.
- Семинар:
- Практическая часть:
- Статистический машинный перевод при помощи MOSES.