- PVSM.RU - https://www.pvsm.ru -

На форуме RAIF 2019, который состоялся в Сколково в рамках «Открытых Инноваций», я рассказывал о том, как происходит внедрение моделей машинного обучения. В связи с особенностями профессии я каждую неделю несколько дней провожу на производствах, занимаясь внедрением моделей машинного обучения, а остальное время – разработкой этих моделей. Этот пост — запись доклада, в котором я постарался обобщить свой опыт.
Начнем с описания процесса крупными мазками, постепенно вдаваясь в детали каждого этапа.
Рассчитываем ли мы на оптимизацию производства по результатам полноценного обследования (в идеале), или происходит просто сбор идей, «лоскутная оптимизация», — результатом так или иначе становится формирование списка инициатив. Необходимо понять, какие области производства мы будем оптимизировать. Этот процесс обычно занимает около двух месяцев.
Потом приступаем к этапу пилотирования, он займет три-четыре месяца – мы должны построить базовую модель и понять, применимо ли к ней машинной обучение, и какие выгоды для бизнеса она может принести.
Следующий этап, гораздо более протяженный во времени, на нем машинного обучения не очень много – это внедрение, когда нужно произвести интеграцию, строить текущие системы и начать получать ту самую прибыль, которую мы спрогнозировали на втором этапе. Внедрение обычно занимает от полугода до девяти месяцев.
Завершает процесс этап контроля. Одно дело: сделать модель и показать, а другое – поддерживать модель в течении некоторого времени. Производство меняется, заменяются станки. В этих условиях и модель приходится постоянно «докручивать» и искать новые возможности для оптимизации.

Теперь более подробно по порядку:
Откуда берется гипотеза? Кто ее выдвинет?
Обычно за гипотезами принято ходить в ИТ-отдел, но там работают люди, которые умеют настраивать системы, знают про интеграцию и ничего не знают про машинное обучение. Кроме того, они не так хорошо представляют себе производство. У них нет компетенции понять на практике, как работает машинное обучение.
Попытка номер два – отправиться за гипотезой на производство. Действительно, близкие к производству специалисты знают технические особенности процесса, но… не знают машинное обучение. Поэтому не могут сказать, где оно применимо, а где нет.
В таком случае, откуда можно взять гипотезу? Для этого придумали специальную должность – Chief Digital Transformation Officer. Это человек, который занимается цифровыми преобразованиями. Или Chief Datа Officer – человек, которые знает данные и как их можно применить. Если этих двух людей в компании нет, то гипотезы должны приходить от топ-менеджмента. То есть специалистов, которые вполне понимают бизнес и занимаются современными технологиями.
Если же на предприятии нет ни Chief Digital Transformation Officer, ни Chief Datа Officer, а топ-менеджмент не способен родить гипотезу, то на помощь придут… конкуренты. Если они что-то внедрили, у них этого не отнять. Но, компания-интегратор, подключенная к проекту, может подсказать, что и как можно оптимизировать.

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

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

Слушать профессионалов, но верить только данным. Нужно ездить в цех, говорить с профессионалами, бывать на заводе, говорить с операторами, понимать их бизнес. Но верить только данным. Было очень много примеров, когда операторы говорят, что такого быть не может – мы показываем данные – оказывается, это действительно происходит. Интересный пример: как-то модель показала, что день недели влияет на производство. По понедельникам – один коэффициент, по пятницам – другой.
Эффект понятен только в бою – очень важно быстрое прототипирование. Самое главное – быстрее посмотреть, как модель работает в быту. В презентациях и на локальных ноутбуках проект может выглядеть совсем не так, как на самом деле: как правило, по факту совсем другие проблемы выходят на первое место.
Только интерпретируемая модель имеет шанс на улучшение. Всегда нужно четко понимать, почему модель решила так, а не иначе.
Реально зависимость точности от прибыли может быть любой. Пока мы не поймем, как эта точность влияет на эффект – вопрос о точности абсолютно бессмысленный. Всегда нужно переводить в прибыль. На графиках ниже видно, что прибыль может по разному зависеть от точности модели. Первый график иллюстрирует, как сложно определить заранее в какой именно момент точности модели хватит для роста прибыли:

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

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

Автор: Николай Князев, руководитель группы машинного обучения «Инфосистемы Джет»
Автор: Николай Князев
Источник [1]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/proizvodstvo/337314
Ссылки в тексте:
[1] Источник: https://habr.com/ru/post/476478/?utm_source=habrahabr&utm_medium=rss&utm_campaign=476478
Нажмите здесь для печати.