Наука о данных. Модуль 3

Как учатся алгоритмы

В этом модуле вы узнаете, как выбранная бизнес-цель и данные:
• влияют на выбор подхода к обучению модели;
• превращаются в одну из трех основных задач машинного обучения.
А главное, вы научитесь самостоятельно понимать, подходят ли имеющиеся у вас данные под задачу, которую вы хотите решить. Это значительно улучшит взаимопонимание с дата-сайентистом.

Как обучаются алгоритмы и от чего это зависит

Казалось бы, когда бизнес-цель четко сформулирована, а все метрики определены, остается выдать специалисту накопленные данные, он найдет и обучит подходящую модель, и все будут счастливы. Так процесс описывают в статьях о том, «как мы научили машину делать то-то», которые появляются на просторах интернета по несколько раз в месяц. Но есть одно но: ваши данные должны содержать достаточно ценной информации, отвечающей условиям задачи. Иначе велик шанс, что на вопрос о том, кому еще мы можем предложить наш продукт, модель выдаст многозначительное: «42».

То, какие данные вы накопили в своем проекте, и то, что вы можете достать внутри компании или у партнеров, зависит от вас, а не от дата-сайентиста. Согласитесь, вы не можете прийти к строителю с грудой досок и попросить построить из них каменный дворец. Аналогично нельзя требовать от специалиста по данным додумать то, чего нет в ваших данных. Поэтому так важно хотя бы базово понимать, как ваши ресурсы соотносятся с вашими возможностями и какие подходы обеспечат нужный результат.

Разобраться в подходах к машинному обучению довольно просто: изучите эту сравнительную таблицу — и вы лучше поймете, выполнима ли задача, которую вы описали в предыдущем модуле, на данных, которые у вас есть.

Это интересно!

Мы не будем рассматривать этот аспект в курсе, но если вы сталкивались с новостями «ИИ обыграл человека в игру го», «ИИ научился проходить компьютерную игру не хуже человека» либо просто интересуетесь темой беспилотных автомобилей, то вам будет любопытно узнать, что для решения таких задач используется отдельный вид обучения с учителем — обучение с подкреплением. В этом случае алгоритм погружается в виртуальную среду и взаимодействует с ней, получает «подкрепление» (поощрение за верные ответы или штраф за неверные) и постепенно учится сводить свои ошибочные решения к минимуму.

Как быстро понять, какой результат вы извлечете из данных: регрессия, классификация, кластеризация

Давайте подробнее остановимся на теме обучения с учителем и без. Вы уже знаете, что каждому из подходов соответствует определенный класс задач. А каждому классу задач соответствует определенный результат, который вы можете получить как заказчик. Понимание того, к какому классу относится ваша задача, поможет вам максимально четко доформулировать цель и ожидание, на которые и будет дальше ориентироваться дата-сайентист.

Вы уже понимаете, что фраза «Мы хотим увеличить выручку, для этого нужно продавать больше» — это еще не четкая задача для специалиста по работе с данными. А вот фразы «Мы хотим продавать больше, для этого нам нужно строить прогноз, какую скидку давать каждому клиенту, чтобы максимизировать средний чек» и «Мы хотим продавать больше, для этого нам нужно рекомендовать человеку товары, которые он, вероятнее всего, положит в корзину вместе с товаром, страницу которого сейчас смотрит» — это уже не просто две разные фразы. Это две разные задачи. Два разных результата. И по-разному подготовленные данные. Давайте разберемся на примерах.

Регрессия — получаем ответ в виде чисел и графиков функций

Прогнозирование времени поездки на такси из рассказа Элен на видео — это классическая задача регрессии. То есть с помощью регрессии мы можем предсказывать какое-то число, но не сможем установить причинно-следственные связи между событиями, которые и привели к появлению прогноза. Ваша задача тоже относится к классу регрессии, если:

Примеры реальных задач регрессии, которые решает бизнес:

  • прогноз изменения цен на квартиры в зависимости от изменения инфраструктуры и экологии района;
  • прогноз заработной платы по описанию вакансии;
  • прогноз спроса на товар в ближайшую неделю с учетом поведения пользователей, сезонности и истории продаж;
  • прогноз объема потребления любых ресурсов для домохозяйств;
  • прогноз суммы компенсации по страховке.

Классификация — получаем ответ «вероятно, да/вероятно, нет», строим прогнозы событий и рекомендации

Распознавание объектов на фото или предсказание вероятности ухода сотрудника — типичные задачи классификации. Они также требуют предварительной разметки данных для обучения, но в этом случае мы описываем переменную не числом, а относим ее к какой-то категории, как сделали бы с вещами при сортировке. Ваша задача относится к этому классу, если:

Задачи классификации встречаются очень часто, поэтому вместо хрестоматийного «определить, кто на фото — котик или собачка», наши эксперты подготовили примеры поинтереснее:

  • Предсказание пола для посетителя сайта, о котором мы ничего не знаем.
  • Определение типа и языка для неизвестного документа.
  • Предсказание — спам или не спам в письме.
  • Определение состояния человека по данным электроэнцефалограммы (ЭЭГ).
  • Определение подозрительных операций по банковским картам.

Кластеризация — ищем в данных новое, необычное и строим рекомендации. Решаем задачи, в которых нельзя заранее разметить данные

Вы сталкиваетесь с результатами работы алгоритма кластеризации, когда загружаете фото в сеть — в этот момент файл надо сжать, а чем меньше на изображении цветов, тем меньше оно весит. Картинка состоит из пикселей, а это объекты. Алгоритм выделяет пиксели «примерно одинакового» цвета, которые можно заменить на некий «средний» цвет. Каждая такая группа — это кластер. Объекты внутри кластера чем-то похожи между собой, а вот объекты между кластерами значительно отличаются.

Ваша задача тоже относится к кластеризации, если:

Примеры реальных задач кластеризации, которые решает бизнес:

  • Группировка домохозяйств по тому, как они потребляют услуги и ресурсы.
  • Выделение групп со схожим поведением и интересами среди пользователей.
  • Автоматическая группировка сообщений для упрощения работы модераторов и техподдержки.
  • Поиск аномальных событий и поведения (так часто определяют ботов).
  • Сортировка новостей по темам.

Узнайте, насколько хорошо вы усвоили материал модуля:

Нашли опечатку? Выделите фрагмент и нажмите Ctrl+Enter.
Где здесь фаза?

Непростой тест о простом электричестве