Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!
Привет, Хабр! На связи Юрий Кацер, эксперт ML и анализу данных в промышленности, а также руководитель направления предиктивной аналитики в компании «Цифрум» Госкорпорации “Росатом”. В рамках рабочих обязанностей решаю задачи поиска аномалий, прогнозирования, определения остаточного ресурса и другие задачи машинного обучения в промышленности. За последние 5 лет успел поработать с данными НЛМК, ММК, ТМК, ЧТПЗ, ПМХ, Росатом, ГПН, Сибур, поучаствовав в решении 20+ задач в промышленности. Больше информации обо мне можно найти на моем сайте ykatser.github.io. Недавно я выступил с докладом о том, как в рамках проекта по предиктивной аналитике на производстве мы разрабатывали систему и алгоритмы контроля технического состояния электролизера.
По сути, мы разработали систему предиктивной аналитики, возились с поиском работающих подходов, долго мучались с данными о состоянии оборудования и извлекали из умов технологического персонала информацию о работе установок.
Сегодня хочу поговорить на примере этого проекта о реализации data science проектов в промышленности. С подобным докладом я также выступал ранее, видео выступления доступно по ссылке. Обычно нашей основной задачей является разработка моделей на основе данных, но работает ли такой подход всегда? Давайте поговорим об основных этапах и проблемах таких проектов и посмотрим, как мы двигались к финальному результату на примере проекта по диагностике электролизеров.
Технологический процесс: как производят ядерное топливо
Важной и обычно большой частью проекта является погружение в доменную область и разбор технологического процесса, с которым нам предстоит работать. Это может помочь при работе с данными, например, при отборе или генерации физически обоснованных признаков для моделей, не говоря о том, что без изучения процесса очень сложно правильно сформулировать задачу и оценивать качество проекта. Погружение и разбор процесса обычно начинается самого начала и не прекращается на протяжении всего проекта. Несмотря на то, что мы стараемся держать тесную связь с персоналом на производствах, этого недостаточно для эффективной работы дата сайентистов, поэтому нам приходиться разбираться с тем, с чем работаешь.
В этом проекте, в первую очередь, необходимо разобраться с тем, как производят ядерное топливо. Сначала добывают уран (для этого есть несколько методов: подземное выщелачивание или открытый, разработка шахт или открытых карьеров). Полученную урановую руду перемалывают, растворяют и получают сначала концентрированную соль, а затем сушат ее до сухого концентрата. Вот у нас и получился оксид урана, который смешивают с фтором, чтобы получить гексафторид урана (ГФУ). ГФУ - это уникальное соединение, потому что оно может относительно легко (при невысоких температурах) принимать газообразную форму, что очень важно для нас на этапе обогащения с помощью центрифуг. Обогащение необходимо, так как в природном уране содержание изотопа U-235 составляет всего лишь 0,7% (остальное - изотоп U-238 и другие), а для стабильной, эффективной и безопасной работы ядерных реакторов необходимо содержание U-235 в топливе в среднем от 2 до 5 % (зависит от типа реактора).
В абзаце выше я упомянул фтор, необходимый для создания ГФУ. Очевидно, что он является важным элементом производства ядерного топлива, при этом для его производства используются среднетемпературные электролизеры, о которых мы и будем говорить дальше в статье. Дальше мы глубоко разбираем работу электролизера, сырье на входе и выходную продукцию на данном шаге технологического процесса, нормальные параметры работы оборудования, типовые неисправности, рабочую документацию и другую полезную информацию.
Предварительный анализ
Перед тем как начать обучать модели машинного обучения, мы провели предварительный анализ и сделали подготовительную работу: сформировали рабочую группу проекта совместно с представителями производства, запросили необходимые и доступные данные, инструкции, журналы технологического обслуживания и ремонта для разметки данных, провели серию интервью, сформулировали бизнес-задачу (гипотезу), заполнили AI canvas и определили рамки проекта. Далее подробно рассмотрим наиболее интересные части предварительного анализа.
Бизнес-проблемы и формулировка задачи
Обычно в самом начале работы над кейсом у нас есть только сформулированная заказчиком проблема, вроде: «оборудование слишком часто ломается». В нашем случае электролизеры, как и любое промышленное оборудование подвержены износу. Мы называем такую формулировку бизнес-проблемой - с ней сложно работать, потому что в ней совсем нет явной информации о задаче, метриках, ожидаемых результатах, планируемых изменениях. Поэтому мы стараемся свести ее к бизнес-гипотезе - задаче, в которой нет перечисленных проблем. Более подробно я рассказываю о том, как переходить от бизнес-проблемы к бизнес-гипотезе в этом докладе.
Раннее обнаружение аномалий в работе электролизеров дает возможность заблаговременно реагировать на прогнозируемые инциденты, связанные с остановкой работы оборудования, вовремя предпринимать меры по профилактике и ремонту. Подробнее о задаче обнаружения аномалий и неисправностей можно почитать в этой статье на хабр, а с характеристиками задачи и дополнительными полезными ссылками по теме можно познакомиться в этом моем посте. Итак, с электролизерами возникают следующие проблемы:
вынужденные простои;
внеплановые ремонты;
неоптимальные капитальные ремонты (объем и сроки работ).
Частично эти проблемы можно решить с помощью моделей обнаружения аномалий и отклонений в работе оборудования. В данном проекте задача состояла в том, чтобы разработать систему для раннего обнаружения отклонений от нормальной эксплуатации электролизеров, используемых для производства технического фтора. При этом требовалось, чтобы у новой системы и встроенных в нее алгоритмов обнаружения контроля значение метрики качества F1 (о метрике расскажем ниже по тексту) было бы выше, чем у существующих алгоритмов, реализованных персоналом в SCADA.
Формулировки выше можно назвать бизнес-гипотезой, которую мы и будем проверять.
Ожидаемые результаты и эффекты
После формулирования задачи мы перешли к формированию драйверов эффектов и оценке потенциального экономического эффекта от проекта. Мы выделили следующие драйверы эффектов:
сокращение затрат на капитальные ремонты за счет меньшего количества самих капитальных ремонтов, их оптимального графика и сокращения объема работ;
продление межремонтного интервала за счет снижения количества внеплановых остановок и ремонтов;
повышение производительности при производстве фтора, как косвенный эффект более высокого качества работы оборудования.
Схемы выделения драйверов эффектов для популярных задач ИИ в промышленности представлены на рисунке ниже.
Интересные моменты по результатам предварительного анализа
Отметим несколько интересных моментов:
определено, что верным срабатыванием мы считаем только то, которое было не позднее, чем за 5 минут до записи в журнал оператора. Отметка в журнале говорит о фиксации аномалии визуально, штатными средствами либо о начале существенных проблем в работе оборудования;
были выбраны конкретные единицы оборудования, аналогичные по своей конструкции;
из всех возможных неисправностей была выбрана одна группа отклонений для обнаружения ML-моделями, так как именно для этой группы была наибольшая статистика в исторических данных. Остальные группы были оставлены на следующие этапы проекта;
в качестве DS-метрики взяли F1-меру (Гармоническая средняя между точностью - долей верных срабатываний модели от ее общего числа срабатываний, и полнотой - долей верно обнаруженных инцидентов от общего числа инцидентов), но метрики точности и полноты были ограничены, исходя из запроса бизнеса на ограничение ложных срабатываний;
с начала проекта попросили персонал начать собирать и сохранять больше информации о каждой аномалии, так как, проанализировав данные, поняли, что не все случаи фиксируются в журналах, например, иногда не фиксировались случаи, устраненные подручными средствами без остановки процесса выпуска продукции;
на более поздних этапах изменили процесс сбора и агрегации данных: стали собирать данные по изменению и с частотой раз в секунду записывать в базу последнюю точку. Сделали это так как не удалось установить текущий способ агрегации данных, а также потому что нас не устраивала частота дискретизации собираемых на момент начала проекта данных. Это, конечно, привело к тому, что обучение модели пришлось начинать заново после того, как достаточное количество данных, собираемых новым способом, было накоплено в процессе проекта;
был рассчитан потенциальный экономический эффект. Дополнительно об эффектах от использования ML-решений в промышленности можно почитать в этой статье;
договорились, что необходимо интегрировать ML-модели машинного обучения в существующую систему контроля технологического процесса;
совместно с персоналом предприятия переразметили исторические данные и договорились обсуждать все спорные случаи, детально разбирая показатели датчиков для честной и открытой оценки моделей.
Дорожная карта проекта с точки зрения data science
Проект начинается с плана, поэтому перед нами дорожная карта data science части:
Мы поэтапно расписали, что и в какой период будем делать за исключением этапа предварительного анализа, описанного ранее.
Проверка DS-гипотез
Когда бизнес-анализ проведен, рамки, потенциальные эффекты, цели и участники проекта определены, переходим к работе с DS-гипотезами. За создание бэклога DS-гипотез отвечает исключительно DS-команда. Декомпозиция происходит из бизнес-гипотезы, утвержденной ранее.
Чтобы было проще работать, мы визуализируем все гипотезы на одной схеме в формате mind-map. На рисунке ниже показываю, как карта DS-гипотез выглядела в процессе проекта.
Проверка DS-гипотез является итеративным процессом, состоящим из 3-х основных шагов:
Подготовка данных
Обучение моделей
Оценка моделей
Подробности о том, что происходит на каждом этапе, представлены на рисунке ниже. При этом важно понимать, что каждая гипотеза является либо гипотезой о данных (меняем способы обработки данных, добавляем новые признаки и др.), либо гипотезой о методе (для одного и того же набора данных применяем различные методы машинного обучения). Если начать одновременно менять и данные, и методы, тогда мы не сможем, что именно принесло результат - изменение данных или использование другого метода.
Об этапах проекта, связанных непосредственно с машинным обучением, включая модели, предварительную обработку данных, базовые решения и существовавшие ранее эвристические решения, расскажу в отдельной статье. Напишите в комментариях, что было бы особенно интересно узнать.
Тестирование
Когда мы получили решение, перешли к тестам. Программа и методика испытаний (ПМИ) составлялись вместе с заказчиком, при этом критерий успешности сформулирован следующим образом:
Работа Системы признается успешной если показатель гармонического среднего между точностью (доля верных срабатываний модели от ее общего числа срабатываний) и полнотой (доля верно обнаруженных инцидентов от общего числа инцидентов) будет больше, чем аналогичный показатель для существующей системы определения анодного и катодного давления (СКАДА)
Существующая система (СКАДА) основана на информации, описанной в технической и эксплуатационной документации и представляет собой набор экспертных правил. Вот какие мы получили результаты по итогам тестирования:
Это тестирование мы проводили в течение 3 месяцев, причем валидация и сверка результатов проводились каждую неделю. Как и было сказано ранее, все спорные инциденты мы разбирали дополнительно, неоднократно меняя реальную причину и формулировки и корректируя записи персонала в журнале неисправностей.
В итоге тестирование позволило считать пилот успешным, а бизнес-гипотезу подтвержденной, потому что F1-метрика нашей модели оказалась выше, при этом точность и полнота по отдельности удовлетворили заказчика.
Итоговое решение
Для диагностики работы электролизеров разработана система предиктивной аналитики и контроля состояния оборудования на базе технологий искусственного интеллекта. В решение интегрированы алгоритмы обнаружения аномалий на основе машинного обучения и анализа данных. Система выполняет автоматизированный поиск скрытых дефектов, возникающих в процессе эксплуатации, визуализирует информацию о прогнозируемых событиях, оповещает оператора для принятия решений, а также формирует аналитику об аномалиях и факторах, внесший наибольший вклад в обнаружение аномалий.
Модели мониторят различные технологические параметры в процессе электролиза, в том числе уровень электролита, напряжение, давление в выпускных коллекторах и т. д. Полученные показатели или индексы состояния позволяют обнаруживать различные проблемы с оборудованием на раннем этапе.
В отличие от других существующих систем и алгоритмов диагностики, модели на основе данных позволяют лучше управлять рисками возникновения технических дефектов и принимать превентивные меры для предотвращения вынужденных остановов оборудования. Благодаря этому достигаются ожидаемые эффекты.
Для дальнейшей работы мы выбрали следующие направления:
расширение номенклатуры оборудования и технологических процессов;
оптимизация всего технологического процесса полностью;
интеграция платформенного решения.
Выводы
В заключение поделюсь важными моментами, которые нужно учитывать в ML-проектах на производстве.
Необходимо коммуницировать с заказчиком как можно больше на каждом этапе проекта. При этом личное общение и горизонтальные взаимодействия позволяют все сделать быстрее.
Специфика крупных промышленных предприятий - это множество стандартизированных процедур, которые устанавливают дополнительные требования к заполнению документов и принятию решений. Несмотря на то, что от них, безусловно есть польза и для большинства задач и проектов они сокращают трудозатраты, повышают надежность, увеличивают безопасность работы, в случае с разработкой принципиально новых продуктов они могут оказаться совершенно лишними и только затягивают процессы либо делают новые продукты бесполезными (если требуется изменение какого-то регламента для использования моделей машинного обучения). Это нужно помнить на всех этапах проекта и учитывать при проектировании, разработке и интеграции решения.
Безопасность (в том числе информационная) является приоритетом для производственных предприятий; это необходимо учитывать на каждом этапе.
Основная задача специалистов производства - выпуск продукции, поэтому они не всегда мотивированы на участие в вашей работе, чтобы вовлечь и заинтересовать можно использовать следующие хитрости:
искать людей, разрабатывающих подобные системы/алгоритмы или интересующихся диагностикой оборудования - они могут понимать значимость ваших результатов и делиться информацией
использовать административный ресурс, включая добавление соответствующих КПЭ ответственным лицам и лицам, принимающим решение
использовать информацию производственных специалистов в своих решениях по максимуму - повышает доверие к результатам
доказывать качество решения, объяснять подробно, как все работает, использовать простые, понятные и интерпретируемые модели/подходы
много и часто общаться с персоналом
обучать персонал
и др.
Начинайте сбор данных об аномалиях как можно раньше, а также сразу меняйте и оптимизируйте подходы к сбору данных и количество собираемой информации.
Важно, чтобы результаты моделирования можно было интерпретировать. Персонал и руководство должны понимать результаты, полученные с помощью вашей модели.
Экономические эффекты трудно рассчитать, при этом представители производства стараются взять этот процесс на себя, совершая ошибки из-за непонимания специфики разрабатываемого решения. Команда разработки алгоритмов машинного обучения обязательно должна быть вовлечена в этот процесс.
Стабильных практик в области data science в промышленности нет, есть отдельные положительные примеры и решенные кейсы, только появляются продукты, решающие конкретные задачи и платформенные решения, но их по-прежнему очень мало.
Познакомиться с различными кейсами применения машинного обучения в промышленности можно в моем обзорном репозитории:
Другие интересные статьи на хабр по схожей тематике:
https://habr.com/ru/company/evraz/blog/573340/
https://habr.com/ru/company/evraz/blog/656795/
https://habr.com/ru/company/croc/blog/466933/