Машинное обучение (РЭУ)
Материал из MachineLearning.
Содержание
|
Краткое описание
Курс ведется для магистров РЭУ им.Г.В.Плеханова. В курсе рассматриваются основные задачи анализа данных и обучения по прецедентам: классификация, кластеризация, регрессия, понижение размерности, ранжирование, коллаборативная фильрация. По изложению для каждой рассматриваемой задачи изучаются математические основы методов, лежащие в их основе предположения о данных, взаимосвязи методов между собой и особенности их практического применения. Большое внимание уделено освоению практических навыков анализа данных, отрабатываемых на семинарах, которое будет вестись с использованием языка python и соответствующих библиотек для научных вычислений. От студентов требуются знания линейной алгебры, математического анализа и теории вероятностей.
Задания
N1 - Проверка работы метода K-NN
Срок: до 14 февраля.
N2 - Применение метода K-NN для распознавания цифр
Срок: до 14 февраля.
N3 - Поиск наилучшей модели для оценки съедобности грибов
Срок: до 24 апреля.
Необходимо: разработать модель, дающую 100% точность на кросс-валидации и отослать мне ipynb файл кода и файл прогнозов для тестового множества в формате - как указано в файле.
Помощь по заданию:
Пример преобразования признаков и подбора параметров модели для другого датасета.
Для работы демонстрационного примера и выполнения задания понадобятся полезные модули отсюда. Главным образом - модуль feature transformations.py, содержащий one-hot и вероятностное кодирование признаков.
N4 - Предсказание, откликнется ли клиент на новую услугу банка
Срок: до 24 апреля
Вам необходимо добиться максимально возможной точности по кросс валидации. Вам нужно подобрать параметр K и метрику для метода ближайших соседей, минимальное число объектов в листе и impurity function для дерева решений и параметр регуляризации C (рекомендуется перебирать C=10**-5,10**-4,...10**5), а также тип регуряризации (L1/L2) для логистической регресии. После чего результаты оформить в виде таблицы - для какого метода какие параметры по какой сетке значений перебирались, какие значения параметров оказались наилучшими и какой метод в целом оказался самым лучшим. Мне нужно прислать только ipynb файл c таблицей результатов и кодом. Естественно, все дискретные признаки вначале необходимо заменить их one-hot-encoding преобразованиями и проверить - добавление дискретных признаков улучшает точность или нет.
Помощь по заданию:
Пример преобразования признаков и подбора параметров модели для другого датасета.
Для работы демонстрационного примера и выполнения задания понадобятся полезные модули отсюда. Главным образом - модуль feature transformations.py, содержащий one-hot и вероятностное кодирование признаков.
N5 - Определение зарплаты по описанию вакансии в интернете
Срок: выбор лучшего решения - до 15 мая, отправка кода и презентации - до 17 мая.
Комментарий: для получения положительной оценки необходимо достичь точности выше, чем у baseline метода.
Успеваемость
Пройденные теоретические темы
- Задачи машинного обучение: обучение с учителем и без учителя, регрессия, классификация, кластеризация.
- Метод ближайших соседей. Алгоритм метода для регрессии и классификации.
- Обобщение метода ближайших соседей через веса.
- Метод решающих деревьев для классификации и регрессии.
- Упрощение решающих деревьев. Pruning.
- Работа с дискретными признаками: one-hot кодирование и вероятностное кодирование.
- Характер зависимости разных методов машинного обучения от масштабирования признаков.
- Методы линейной классификации. Настройка весов.
- Логистическая регрессия. Функция цены для логистической регрессии.
Пройденные практические темы
- Язык программирования Python
- Математическая библиотека numpy
- Основы работы с библиотекой машинного обучения scikit-learn.
Презентации некоторых лекций
Методы линейной классификации. Логистическая регрессия.
Ядерное обобщение метода опорны векторов
Туториалы
- Совсем короткие демонстрации Python, Numpy, методов визуализации и настройки прогнозирующих моделей.
- A Crash Course in Python for Scientists
- Numpy
- Matplotlib
- Scipy Lecture Notes
- Pandas
- Scikit-learn
Полезные ссылки
Машинное обучение
- machinelearning.ru
- Видеолекции курса К.В.Воронцова по машинному обучению
- Одна из классических и наиболее полных книг по машинному обучению. Elements of Statistical Learning (Trevor Hastie, Robert Tibshirani, Jerome Friedman)
Python
- Официальный сайт
- Библиотеки: NumPy, Pandas, SciKit-Learn, Matplotlib.
- Небольшой пример для начинающих: краткое руководство с примерами по Python 2