AUC ROC (площадь под кривой ошибок)

Площадь под ROC-кривой – один из самых популярных функционалов качества в задачах бинарной классификации. На мой взгляд, простых и полных источников информации «что же это такое» нет. Как правило, объяснение начинают с введения разных терминов (FPR, TPR), которые нормальный человек тут же забывает. Также нет разборов каких-то конкретных задач по AUC ROC. В этом посте описано, как я объясняю эту тему студентам и своим сотрудникам…

wallpaper Читать далее

Минитест на знание ML и DM

До недавнего времени при собеседовании в компанию АлгоМост сначала давали небольшой тест на знание основ машинного обучения и анализа данных. Это довольно неплохо отфильтровывает совсем слабых соискателей. Сейчас у каждого в резюме написано, что знает Python, прошёл несколько курсов на курсере, но 80% не знают, что такое логистическая регрессия и как инвертировать список на Python. Последнюю версию теста я делал сам из вопросов, которые использую для контроля студентов. Сейчас её публикую и каждый может проверить свои знания…

test Читать далее

ММП ВМК МГУ — 20 лет

Между прочим, нашей кафедре Математических методов прогнозирования недавно исполнилось 20 лет: официально создана она была весной 1997 года, а первых студентов начала учить с сентября 1997 года. Правда, никаких торжеств нет, поскольку о круглых датах, похоже, на кафедре помню лишь я:) Про историю создания я как-то писал в блоге.

IMG_5139.jpg
Выпуск бакалавров ММП ВМК МГУ 2017 года (417 группа)

Читать далее

Градиентный бустинг

Пост про градиентный бустинг (Gradient Boosting), но не совсем обычный. Вместо текста прикрепляю pdf. Вопрос к читателям блога: будет ли полезно, если я подготовлю книжку в таком стиле по основным темам машинного обучения?

boosting.jpg Читать далее

Компания vs вуз vs академия

Идеальный способ решать какие-то задачи анализа данных в компании (в разрезе вопроса «кто будет решать») — это растить свои компетенции. Сейчас можно (хотя и сложно!) найти толковых ребят, владеющих инструментарием анализа данных и статистики, ну а предметную область лучше изучать изнутри. Тем не менее, есть много ситуаций, когда необходимо решать задачи «на стороне». Причины могут быть самые разные (задач мало и требуется «разовое решение», нужно быстро решить какую-то отдельную задачу, необходима разведка, что даст использование новой аналитики и т.п.) Есть несколько вариантов, к кому идти за решением. Опишем одну типичную историю, которая позволит их сравнить, не претендуя на полное и подробное сравнение.

company_vs_vuz Читать далее

Поиск аномалий (Anomaly Detection)

В этом посте поговорим об одной важной проблеме обучения без учителя (Unsupervised Learning) – задаче поиска аномалий (Anomaly Detection). Интересно, что в русскоязычных учебных курсах об этой задаче часто забывают. Даже в русской версии страницы обучение без учителя нет упоминания об этой задаче, в английской, конечно же, есть.

outlier_detection2 Читать далее

Cтекинг (Stacking) и блендинг (Blending)

Стекинг (Stacked Generalization или Stacking) — один из самых популярных способов ансамблирования алгоритмов, т.е. использования нескольких алгоритмов для решения одной задачи машинного обучения. Пожалуй, он замечателен уже тем, что постоянно переизобретается новыми любителями анализа данных. Это вполне естественно, его идея лежит на поверхности. Известно, что если обучить несколько разных алгоритмов, то в задаче регрессии их среднее, а в задаче классификации — голосование по большинству, часто превосходят по качеству все эти алгоритмы. Возникает вопрос: почему, собственно, использовать для ансамблирования такие простые операции как усреднение или голосование? Можно же ансамблироование доверить очередному алгоритму (т.н. «метаалгоритму») машинного обучения.

stacked

Читать далее