В США пристальный интерес к машинному обучению возник около пяти лет назад. Для России в этой сфере сейчас все только начинается. Как бизнесу может быть полезен выход технологий машинного обучения на первый план?
На прошлой неделе я побывал на одном из важнейших технологических событий года — конференции Google I/O 2017. CEO Google Сундар Пичаи окончательно зафиксировал то, чего все ждали — выход технологий машинного обучения на первый план. Google переходит с принципа Mobile First к AI First и внедряет искусственный интеллект во все свои сервисы. Сейчас самое время присмотреться к этой сфере и понять, как технологии машинного обучения могут быть полезны.
Почему об этом важно думать сейчас?
Gartner предсказывают, что уже в 2018 году в 45% самых быстрорастущих компаний умных машин станет больше, чем людей. Из всех новых технологий именно машинное обучение сейчас находится на пике ожиданий. Это технологии, которые изменят как бизнес, так и нашу повседневную жизнь. Они эффективны, ведь даже самые простые модели решают задачи намного эффективнее людей. Человек просто не может анализировать такое же количество факторов и находить настолько глубокие корреляции.
Технологии меняют мир настолько быстро, что бизнес часто не успевает адаптироваться к изменениям. Сейчас черед машинного обучения: есть теория, есть инструменты, есть запредельные мощности облачных платформ вроде Google Cloud. Желание бизнеса внедрять в свои процессы машинное обучение видно и понятно. Но примеров мало, поэтому пока нет понимания, как действовать. Давайте вместе посмотрим, что делать, чтобы умные машины сделали ваше дело эффективнее.
Шаг нулевой: ликбез
Рассмотрим простой пример. Как меняется цена на квартиру в зависимости от ее площади? Большие квартиры, само собой, стоят дороже, чем маленькие. Это та самая прямая пропорциональность, которой нас учили в школе. Но ведь на цену влияет еще множество факторов: год застройки, удаленность от центра города и другие. Раньше единственным способом было создавать собственные сложные правила и формулы для каждого конкретного случая. Такие правила крайне лимитированы, но более эффективных вариантов у нас не было. К тому же, неясно, что делать, если некоторые вводные данные отсутствуют, а сделать вывод нужно.
Машинное обучение призвано решать такие проблемы. Вкратце суть можно объяснить просто: если у нас есть много данных, влияющих, на наш взгляд, на желаемый показатель (на цену квартиры в нашем примере), то возможно построить математическую модель, которая может сделать предсказания. Это решение будет эффективнее, чем любые ручные правила, устойчивее к искажениям, будь то отсутствующие или аномальные значения.
Шаг первый: определяем задачи
Я руковожу студией, которая занимается мобильной разработкой и машинным обучением. Сейчас мы внедряем машинное обучение в крупной ритейл-сети. Общаясь с менеджерами самых разных компаний, мы сталкиваемся с одними и теми же вопросами. У среднего и крупного бизнеса есть много данных, желание как-то их использовать и предчувствие, что машинное обучение в их условиях может быть применимо. Но нет понимания, какие именно задачи можно решить. Давайте посмотрим.
Выделим основные типы задач, которые решает машинное обучение:
- Прогнозирование
- Классификация
- Кластеризация
Разберем каждый из них немного подробнее, рассмотрим некоторые примеры. Стоит понимать, что пока область молодая — компании делятся подробностями крайне неохотно. Делиться знаниями с конкурентами желающих мало. Задачи могут решаться, как простые, так и совершенно необычные. Например, поиск товаров по фото, который уже реализован у Aliexpress. Большинство из них можно отнести к одному из трех типов.
Если вам нужно что-то предсказать — вашу задачу вероятнее всего можно решить методом регрессии. Прогнозы строят и люди, но их точность существенно ниже. В работе с данными равных машине быть не может.
Искусственный интеллект может предсказывать поведение покупателей и рынков, цены, спрос, влияние маркетинга на продажи, может предупреждать о скором износе оборудования и даже эпидемиях скота. Логично, что одними из первых такими прогнозами озаботились большие финансовые компании, работающие на фондовых рынках. Яндекс предсказывает погоду (подробнее о технологии — в интервью Forbes). Из более глобальных задач — Google работает над оптимизацией энергосетей Великобритании.
То, что нужно, если требуется разделить что-то на заранее известные группы: типы клиентов или транзакций, фотографии. Самое простое применение — анализ пользовательской корзины. Мы работали над решением, позволяющим классифицировать типы клиентов по банковским транзакциям, чтобы банк мог лучше понимать свою аудиторию. Также этот метод используется для оценки репутации по отзывам в Интернете. Британское правительство, например, таким образом оценивает комментарии на своем сайте. PayPal использует классификацию, чтобы защитить своих пользователей от мошенников. А Facebook использует этот метод для выявления дискриминирующей рекламы.
Большой пласт, который станет очень заметен в будущем — применение машинной классификации в медицине. Например, для диагностики пациентов. Все необходимые технологии есть уже сейчас, но практического внедрения придется подождать. Цена ошибки в медицине слишком высока, поэтому все новое внедряется очень медленно.
Метод похож на классификацию, только сами группы нам заранее не известны. Машина может найти невидимые нам общие черты, присущие тем или иным группам. Мы можем попросить машину разделить то, что нам интересно на кластеры, визуализировать их. Мы поймем принцип разделения и то, как это использовать дальше. В маркетинге это используется для сегментации аудитории.
Этим методом пользуются и многие рекомендательные системы. Большинство современных рекомендательных систем машинное обучение не используют и худо-бедно справляются со своими задачами. Но и здесь переход состоится, и состоится скоро. Благо положительных примеров хватает. Netflix использует этот метод, чтобы рекомендовать фильмы и шоу. Есть и более необычные истории: Bright Cellars таким образом помогает выбирать вино.
Шаг второй: оцениваем данные
Чтобы машина училась эффективно — ей нужны данные, много данных. Чем больше информации мы «скормим» на этапе обучения, тем эффективнее будут модели. Клиентам мы рекомендуем собирать все релевантные данные как минимум за последний год. Система, обученная на данных за год не будет идеальной, но уже будет эффективнее людей. Система же, обученная на данных за три и более лет будет еще более эффективной, это оптимальный вариант.
Если данных мало — пользу машинное обучение принесет вряд ли. А вот вред причинить может. Недообучение — серьезная проблема, на корню ломающая даже лучшие идеи. Поэтому если данных у вас мало — задумайтесь, а стоит ли оно того? В бизнесе нет места модным трендам, эффективность превыше всего.
На примере некоторых видов бизнеса посмотрим, какие данные у вас могут быть и как можно их использовать, чтобы машинное обучение помогло вам зарабатывать больше денег.
Ваш бизнес — магазин (неважно в онлайне или в оффлайне). У вас могут быть данные по чекам: какие товары клиенты покупали вместе. Здесь применим машинный поиск ассоциаций. Вы узнаете, какие товары когда пользуются спросом (например, что покупают вечером в среду), какие товары покупают вместе. Это поможет увеличить продажи: лучше расположить товар на полках, сформировать правильные маркетинговые акции и спецпредложения без участия мерчендайзеров, настроить рекомендации в случае онлайн-магазина.
Еще для магазинов может быть полезен визуальный поиск. Чтобы его реализовать потребуется база фотографий товаров, разбитая на типы: например шапки, куртки и т.д. Фотографируя объекты в реальном мире, ваш клиент сможет получать рекомендации похожих товаров на вашем сайте. Это совершенно новый канал продаж и взаимодействия с аудиторией. Ниже пример от Pinterest, как это выглядит в реальности.
Ваш бизнес работает с постоянными (или возвращающимися) клиентами. У вас наверняка есть история взаимодействий с клиентами: когда и сколько раз связывались, обращения в техническую поддержку. Машина может предсказать, когда тот или иной клиент вас покинет. Это поможет спланировать дальнейшие взаимодействия и не терять клиентов, которых без участия машины вы бы потеряли.
Ваш бизнес — продажа товаров или услуг. У вас есть история продаж. Обученная на ее основе система может предсказывать продажи и определять оптимальные наценки для товаров. Машина понимает «товары-маячки», дополнительно анализирует корзину и подстраивает цены с учетом оптимизации общих продаж.
Ваш бизнес много обсуждают в сети. Тогда у вас есть огромное количество отзывов. Обучившись на них машина сможет в онлайн-режиме анализировать все отзывы на интересующих вас площадках, определять негативные и передавать информацию специалистам. Это позволит быстро реагировать на негатив, сэкономить на количестве людей, мониторящих социальные сети и другие площадки, эффективнее работать с репутацией компании.
Шаг второй: оцениваем интеграцию
Распространено заблуждение, что внедрение машинного обучения требует грандиозных изменений в бизнесе. Это риски и издержки, которые никто не любит. Так насколько правдиво это утверждение?
Давайте посмотрим, как такие решения могут работать в живом бизнесе, ничего не ломая, а встраиваясь в существующую инфраструктуру. Для примера возьмем не «сферического коня в вакууме», а конкретный пример из опыта нашей студии. Имеется крупная торговая сеть с огромным количеством накопленных данных о продажах. Задача — предсказывать такую наценку на каждый товар, которая принесет максимальную прибыль. Внедрение новой системы происходит следующим образом:
- Получаем данные. Это может быть выгрузка в xls, подключение к 1C/SAP/Oracle или собственному API.
- Data scientists (уж извините, адекватного русскоязычного аналога нет) изучают данные, предобрабатывают их, выбирают алгоритм (модель) и подбирают гиперпараметры для максимальной точности.
- После этого модель запускается в сервисе Google Cloud, обрабатывает данные, строит прогнозы. А когда все готово — выгружает результаты обратно в ERP.
Шаг третий: в дело вступают data scientists
Чтобы машина обучалась, нужно обработать данные, выстроить архитектуру и подготовить модели. Этим занимаются data scientists (аналитики данных) — гуру, которые помогают машине учиться. Вдаваться в детали их работы сейчас не буду, это все же не техническая статья. Здесь есть два подхода: либо привлекать таких специалистов в свою компанию, либо обращаться к поставщикам решений. Что лучше — каждой компании предстоит решить для себя.
Пара слов в заключение
В США пристальный интерес к машинному обучению возник около пяти лет назад. Как грибы после дождя возникали стартапы, предлагавшие самые смелые идеи. Но спустя пару лет лишь избранные компании смогли эффективно применить новые технологии: Amazon, Netflix и некоторые другие. Машинное обучение показало себя чрезвычайно эффективным, но одним махом все не изменило.
Почему так? Причина, увы, в недопонимании. У бизнеса были данные и желание внедрять умные машины, но не было понимания самой области и решаемых задач. Стартапы и технические компании, в свою очередь, не понимали бизнес: хотели видеть уже обработанные данные и четко сформулированные задачи. А чтобы все было хорошо, сначала нужно найти общий язык. Для России сейчас все только начинается, отечественный бизнес только на пороге больших изменений. Давайте не будем повторять ошибок, которые мы могли наблюдать со стороны. Надеюсь моя заметка станет для кого-то полезной.