Прокачаться как аналитик данных: подборка полезных материалов для самостоятельного изучения
Привет, Хабр! Меня зовут Роман Ленц, я руковожу анализом данных и машинным обучением в ПГК. Мы с коллегами подобрали курсы, литературу и сообщества, которые пригодятся тем, кто желает погрузиться в тему машинного обучения и анализа данных, но не знает, с чего начать.
Курс «Машинное обучение» от ФКН ВШЭ
Изначально этот материал был подготовлен для студентов третьего курса ФКН ВШЭ, обучающихся на программе «Прикладная математика и информатика». Сегодня вся теоретическая составляющая выложена на GitHub и YouTube.
Курс знакомит с такими понятиями, как решающие деревья и градиентный бустинг. Также разобран метод опорных векторов и разного рода регрессии — например, линейная и логистическая. Каждый урок содержит блок практики. Например, в одном из заданий нужно обучить линейную, Lasso и Ridge-регрессию при помощи библиотеки scikit-learn, а в другом — реализовать функцию, возвращающую максимальный элемент в векторе X среди элементов, перед которыми стоит нулевой (при этом запрещено использовать циклы и списочные выражения). Авторы предлагают и задачи, привязанные к реальным данным и кейсам — например, предсказать исход матча в Dota 2 по первым пяти минутам игры, используя линейные алгоритмы МО. Свод данных с информацией о матчах выгрузили из открытого сервиса с повторами.
Наконец, замечу, что параллельно с изучением курса, его авторы рекомендуют заниматься с учебником Бойда и Ванденберга «Дополнительные упражнения по выпуклой оптимизации» [он есть в открытом доступе на английском языке].
Курс «Машинное обучение и анализ данных» от МФТИ и Яндекса
Подойдет для специалистов с базовыми теоретическими знаниями по машинному обучению, которые желают погрузиться в data science. Вся программа выложена в репозиторий на GitHub и включает шесть блоков. Задача первого — закрепить математическую базу и навыки программирования на Python. Он затрагивает синтаксис и работу с библиотеками для анализа данных NumPy, SciPy, Matplotlib и Pandas.
Второй и третий разделы посвящены различным видам машинного обучения — в частности, обучению с и без учителя. Среди тем четвёртого блока — организация экспериментов, А/В-тестирование, методы оценки параметров, проверка гипотез и анализ причинно-следственных связей. Пятый раздел — практический, и он посвящен прикладным задачам анализа данных: в частности, построению рекомендательных систем и прогнозированию временных рядов. Авторы курса покажут, как можно проверить качество модели, используя исторические данные.
Изначально все материалы были опубликованы на площадке Coursera, поэтому заключительный блок представляет собой курсовой проект, цель которого — закрепить полученные знания. Замечу, что в прошлом курс «Машинное обучение и анализ данных» уже привлекал внимание резидентов Хабра. Тогда участники сообщества положительно оценили подачу материала, а также отметили, что хорошим дополнением к курсу может служить книга «Введение в машинное обучение с помощью Python» за авторством Мюллера и Гвидо. Её также можно найти в открытом доступе в формате PDF.
Курс «Нейронные сети и компьютерное зрение» от Samsung AI Center
Курс от команды Samsung AI Center на Stepik, который входит в образовательную программу «IT Академия Samsung» для вузов-партнеров. Он подойдет тем, кто интересуется нейронными сетями и компьютерным зрением.
Материал включает 37 уроков и 178 заданий. Они покрывают все базовые концепции: алгоритмы настройки и методы оптимизации сверточных нейронных сетей (LeNet, AlexNet, VGG, ResNet), локализацию, детекцию, сегментацию, градиентный спуск и его модификации, а также многое другое. Практический модуль посвящен базовой работе с PyTorch. Финальное задание представлено в формате соревнования на платформе Kaggle: нужно научить нейросеть классифицировать фото чистых и грязных тарелок.
Курс «ML System Design»
Компактный курс из 17 видеоуроков для тех, кто уже знаком с нишей machine learning и data science, но желает погрузиться в ML System Design. В программе рассмотрены основы проектирования систем машинного обучения с точки зрения софта, железа и бизнеса. Авторы объясняют, как развертывать системы, диагностировать ошибки. Также в курс входит мониторинг и обучение на потоковых данных, версионирование ML-моделей. Можно научиться строить сложные системы и ML-инфраструктуру.
Авторы разместили курс на интерактивной платформе ods.ai, где можно выполнять практические задачи и участвовать в соревнованиях от организаций. На отдельной вкладке представлены работы других пользователей платформы. Один из них разработал MVP для сайта/приложения, который будет рекомендовать книги, фильмы, подкасты, статьи и другой контент в зависимости от того, сколько времени есть у пользователя.
На платформе можно не только получить теоретические знания, но и найти работу — там размещают ссылки на актуальные вакансии.
Телеграм-канал NoML Community
Структурированный канал для обмена опытом в сфере машинного обучения. Специалисты регулярно проводят тематические вебинары. Выступить может любой желающий поделиться своей экспертизой или рассказать об интересном проекте.
На одном из вебинаров спикеры разбирали преимущества совместного использования математической оптимизации с ML при решении бизнес-задач, на другом — введение в Process Mining: основные метрики, методы, кейсы и как это можно применять в DS/ML.
Здесь можно задавать вопросы по алгоритмам и не только, обсуждать инструменты.
Видео «Собеседование Python 2023. Разбор базовых вопросов»
Предыдущие ресурсы были про получение практических и теоретических навыков в сфере машинного обучения. Видео же посвящено подготовке к собеседованию по блоку кодинга на Python. Спикер разбирает распространенные темы и вопросы, которые задают на собеседованиях. Например, типы данных в Python, инкапсуляцию, блоки для обработки исключений.
Хотя в комментариях на YouTube отметили, что материал в большей степени посвящён синтаксису Python, чем механике аналитических процессов. Однако урок все равно поможет выделить для себя новые фишки в работе.
Учебник по машинному обучению от ШАД
Этот онлайн-учебник составили преподаватели и выпускники Школы анализа данных. Как пишут сами авторы, они ориентировались на курс Константина Воронцова, который знаком многим ML-специалистам в России и профильный курс Лены Войта.
Материал поможет изучить основы МО. Авторы разобрали темы от классического обучения с учителем до оценки качества модели и подбора гиперпараметров. Подробно рассматривают построение вероятностных моделей и глубинное обучение. Есть блок по созданию генеративных моделей и рекомендательных систем, а также временным рядам. В учебник периодически добавляют новые главы.
Книга является отличным дополнением к полному курсу «Машинного обучения» от ФКН ВШЭ — это самый первый курс из нашей подборки.
Книга «Примеры решения задач по теории вероятности» от СПбГТИ
Математика — основа машинного обучения. Сборник от преподавателей Санкт-Петербургского технологического университета включает в себя теорию, разбор задач, самостоятельные и контрольные работы. Учебное пособие затрагивает пять тем: непосредственные вычисления вероятности события, схему испытаний Бернулли, теоремы сложения и умножения вероятностей, формулу Байеса. В соответствии с ними подобраны задачи с разным уровнем сложности для закрепления материала.
Интерактивный ресурс mathprofi.ru
После теории вероятности логичным продолжением обучения является математическая статистика. Ресурс интерактивен и содержит наглядные примеры решения задач. Материал оформлен не как сухой школьный учебник, в нем доступным языком разбирается матчасть и практические задачи по статистике. Темы начинаются с повторения основ: мода, медиана и вариационные ряды, и постепенно переходят к материалу посложнее с уравнениями линейных и нелинейных регрессий.