Привет, Хабр! Мы Data Science команда биотехнологической компании BIOCAD. Хотим рассказать вам о том, как мы применяем машинное обучение при производстве лекарственных средств и с какими задачами сталкиваемся для оптимизации технологического процесса культивирования белка.

О компании и роли IT
BIOCAD — биотехнологическая компания полного цикла создания лекарственных препаратов: от разработки молекулы и клинических исследований до массового производства и маркетинговой поддержки. Наш продуктовый портфель состоит из препаратов для терапии сложнейших социально значимых заболеваний, таких как онкология, аутоимунные и другие виды редких генетических заболеваний. За 20 лет нам удалось выпустить 62 лекарственных препарата, запустить 7 современных производственных комлпексов и оборудовать порядка 40 лабораторий для научно-исследовательских работ. Конечно, всё это было бы невозможно без IT.
IT интегрированы во все бизнес-процессы компании и этапы жизненного цикла препарата. Сейчас мы продолжаем автоматизацию и цифровизацию основных направлений: R&D, доклинических и клинических исследований, производства и контроля качества. Команда IT направления сфокусирована на реализации и развитии проектов для оптимизации и ускорения рабочих процессов, а также увеличения эффективности без потери качества. Современный бизнес, тем более такой как фармацевтика, обязан опираться на новейшие технологии не только в плоскости непосредственного создания продукта, но и в других бизнес-процессах, поскольку они позволяют экономить не только материальные ресурсы компании, но и время, необходимое для оперативной разработки и вывода на рынок новых препаратов, в которых нуждаются пациенты.
О команде
Как говорил классик, все команды разработки счастливы одинаково, но исследовательские команды развлекаются по-своему, поэтому пару слов о нас. В целом, разработка и исследования имеют разные цели и подходы:
-
Команды разработки работают над созданием конкретного продукта, который решает определенную проблему. Их цель — доставить продукт или решение в срок и в соответствии с бюджетом.
-
Исследовательские команды изучают новые и неизвестные области, чтобы расширить знания и создать инновационные решения. Цель таких исследований не всегда очевидна, а процесс неопределенный и подвержен изменениям, что существенно затрудняет работу. Кроме того, исследовательские команды часто страдают от ограниченных ресурсов и нехватки времени на проведение исследования, так как оно может затянуться, а результат быть неочевидным. Тем не менее, результаты работы могут быть более значимыми и иметь большее значение в долгосрочной перспективе.
Data Science команда BIOCAD занимается исследованиями, разработкой и внедрением сервисов с использованием машинного обучения во все направления бизнеса. Сейчас активны проекты в направлениях: R&D, Clinical Research, Production, HR и IT.
Команда существует около двух лет, но полноценно сформировалась в 2022 году и теперь состоит из 8 человек:
Data Scientist ?️♂️????????????
Занимаются сбором и анализом данных, построением моделей, их обучением и тестированием. Ищут точки применения машинного обучения в бизнесе, проверяют гипотезы и оказывают аналитическую поддержку пользователям. Иногда пишут код для ML-сервисов.
ML Engineer?♀️
Занимается развертыванием, оптимизацией и последующей поддержкой моделей машинного обучения в продакшене, пишет много кода для взаимодействия моделей машинного обучения с пользователями или другими сервисами, создает пайплайны для сбора данных.
Business Analyst???
Разбирается в том, как работает компания и конкретная ее функция, собирает и структурирует все требования к продуктам, считает ценность для бизнеса и планирует стратегии развития, помогает в запуске новых проектов и поддержании порядка в документации и задачах.
Team Lead???
Развлекается по полной: участвует в разработке алгоритмической и технической части всех проектов, выстраивает общий пайплайн разработки, проектирует ML-системы и контролирует исполнение задач. Занимается экспертной, операционной поддержкой команды и ее развитием, поиском новых технологий и методов, отслеживанием трендов их внедрением в рабочий процесс, продвижением ML в компании.
Наши задачи невозможно решить без доменных экспертов, поэтому рабочая группа формируется под конкретный проект и может включать в себя коллег из смежных подразделений:
Технологи ??⚕️
Управляют процессами культивирования, участвуют в отборе признаков для моделей, оценке результатов и генерации гипотез для улучшения метрик.
Научные сотрудники???
Участвуют в организации и проведении экспериментов на реальной среде, подводят итоги влияния новых алгоритмов управления на качественные параметры исследуемых процессов.
Специалисты Департамента автоматизации систем управления ???
Занимаются вопросами, связанными с алгоритмами регулирования на процессах, а также настройкой оборудования для проведения экспериментов.
Данные
С течением времени у крупной компании накапливается большое количество данных, и логично извлечь из них пользу. Например, использовать их для оптимизации существующих процессов или учитывать при построении новых. В нашем случае значительный объем составляют производственные данные из SCADA-систем.
SCADA-система — это система для управления технологическими процессами, также она собирает и хранит данные с различных датчиков и устройств. В нашей компании был выбран путь построения SCADA-систем на Open Source-решениях, что является не совсем типичной ситуацией. Чаще на производствах внедряют коробочные системы от крупных вендоров, которые считаются более надежными, но накладывают множество ограничений на полноту данных и доступ к ним.
Низкоуровневые данные системы управления увеличивают количество полезных признаков, которые можно использовать при решении задач по созданию ML-моделей. А также увеличивают количество исследований, которые потенциально принесут пользу бизнесу.
Технологический процесс
Сердцем нашего производства является биореактор. Этo oбopудoваниe для выpащивания клеточных биологических культуp в кoнтpoлиpуeмых и стабильных услoвиях. В биореакторах сoздаeтся oптимальная сpeда для pазмнoжeния клeтoк и жизнeдeятeльнoсти микpoopганизмoв, oсущeствляeтся пoдача питатeльнoй сpeды, насыщeниe ee кислopoдoм и oтвoд пpoдуктoв мeтабoлизма.
Процесс начинается с засева клеток в маленький реактор на 3 литра, клетки начинают размножаться, и по достижении необходимой концентрации биомасса перемещается в следующий по объему реактор. И так процедура итеративно повторяется до 2000-литрового реактора.
Процесс культивирования можно разбить на два этапа: первый заключается в том, чтобы нарастить количество клеток, а на втором этапе — заставить эти клетки производить белок. Например, сделать переход от первого этапа ко второму можно с помощью температурного шифта, который приводит к тому, что клетки испытывают «стресс», в результате которого замедляется скорость размножения и клетки начинают производить белок. Белок для нас является конечной целью, именно из него производятся лекарственные средства.
Сложность поддержания оптимальных параметров обусловлена сразу несколькими факторами: узкая область допустимых значений, выход за которую влияет на качество продукции, невозможность менять вышедшие из строя датчики в ходе уже запущенного процесса и сильная взаимосвязь параметров между собой на физическом и биологическом уровнях.
Меняя параметр А подачами веществ, мы сбиваем параметр Б. Возвращая параметр Б в зону целевых значений, опять влияем на параметр А. Замкнутый круг. Дополнительно к этим взаимосвязям добавляется еще различное поведение клеток.
Исходя из этого возникает множество сложностей и проблем, если их все обобщить и превратить в требования, то получается цифровой двойник. Это максимально приближенные к реальному объекту цифровые модели биореакторов, которые могут имитировать поведение реакторов в реальном времени и предсказывать, как изменения в процессе культивирования могут повлиять на производство белков или других продуктов.
Созданием цифровых двойников биореакторов занимаются различные компании в биотехнологической и фармацевтической индустрии. Цифровые двойники могут использоваться для оптимизации процессов культивирования, сокращения времени и затрат на производство и эксперименты, улучшения качества продукта, повышения устойчивости культур и снижения рисков производственных сбоев.
Два подхода
Существует два основных подхода к построению цифровых двойников. Первый основан на машинном обучении, а второй — на физико-математических моделях. Для реализации цифрового двойника на базе машинного обучения необходимы данные, но в целом его построение проще, чем двойник на базе физико-математических моделей. В свою очередь, двойник на физических моделях обладает более широким функционалом. Так как они показывают лучшие результаты в новых диапазонах, которых не было в исторических данных и решают задачи, когда данные отсутствуют.
Построение полнофункционального цифрового двойника является сложной и продолжительной работой, мы пытаемся сесть на два стула решать ее как с помощью машинного обучения, так и используя физико-математические модели.
Проведя анализ имеющихся задач, мы выделили два направления, которые приблизят нас к построению полноценного цифрового двойника: виртуальные датчики и моделирование процессов регулирования.
Виртуальные датчики
Важнейшими показателями для роста и хорошего самочувствия клеток является растворенный кислород и кислотность. По этим факторам происходит управление процессом, датчики вставлены в биореактор и в режиме реального времени передают данные. Если мастер-датчик выходит из строя и показывает не совсем корректные значения, то это может привести к снижению выхода белка или даже к потере серии, что является серьезной проблемой, так как это влечет за собой, финансовые потери и влияет на планы производства. Чтобы избежать таких последствий, устанавливаются парные датчики, но возникает следующая проблема: когда они начинают расходиться, какому же датчику доверять? И эту проблему мы попробовали решить при помощи машинного обучения.
Задачу определения корректного датчика привели к прогнозированию изменения абсолютного уровня (растворенного кислорода и кислотности) за промежуток времени с последующим анализом схожести поведения двух физических датчиков и модели. Прогнозирование дельты, а не абсолютного уровня, помогает избавиться от проблем, связанных с проведением одноточечных калибровок на процессе, когда значения параметров корректируются вручную, что приводит к их скачкообразному изменению.
Хотя мы работаем с временными рядами, достигли наилучших результатов, когда свели задачу к работе с табличными данными и создали множество признаков, описывающих предыдущие моменты процесса с помощью скользящих функций по различным окнам (от одной минуты до нескольких часов). В качестве модели используем Gradient Boosting из scikit-learn, это оказалось наиболее простым и эффективным решением.
На основе заданных правил, учитывающих показания виртуального датчика и реальные значения датчиков, производится выбор наиболее подходящего датчика и выносится рекомендация о необходимости переключения.
Моделирование процессов
На заключительной стадии в реакторах проходит температурный шифт — резкое изменение температуры с одного значения на другое. Данный переход происходит под управлением PID-регулятора. Этот метод был впервые предложен еще в 1910 году и получил большое распространение в 80-х в связи с развитием электроники. В настоящее время данный алгоритм находит свое применение на множестве производств, в квадрокоптерах, беспилотных автомобилях и других проектах из области интернета вещей. Тем не менее он не лишен проблем, самая распространенная из них — это перерегулирование, явление, когда выходное значение регулируемой системы превышает заданное значение (установившееся значение), после того как уставка была изменена.
В контексте использования PID-регулятора перерегулирование происходит из-за недостаточной настройки коэффициента дифференцирования (D) или коэффициента пропорциональности (P). Это может привести к нежелательным эффектам, таким как колебания системы или ее нестабильность. Чтобы избежать перерегулирования, коэффициенты PID-регулятора настраиваются таким образом, чтобы достигнуть желаемого компромисса между быстрой реакцией на изменение уставки и отсутствием перерегулирования на всем протяжении процесса культивирования.
В случае регулирования параметров в биореакторе, настройка и подбор коэффициентов непосредственно на установке для культивирования белка являются очень длительными и трудоемкими операциями, поскольку процесс культивирования может длиться неделями и состоять из множества различных добавок и подпиток. Использование данных предыдущих процессов позволяет ускорить и оптимизировать этот процесс.
Допустим, хотим привести среду в биореакторе к температуре в 34 градуса, значение 34 будет нашим значением уставки, при этом текущее значение в реакторе — 37 градусов.
Мы попробовали смоделировать процесс, опираясь на исторические данные этого перехода на различных реакторах. Процесс моделирования состоит из двух частей. Первая часть – это сам PID-регулятор. Здесь нет каких-то трудностей, так как алгоритм давно известен и существуют реализации практически на любом языке программирования.
Вторая часть — это реакция системы на управляющее воздействие.
Этот этап мы заменили переходной характеристикой в виде дифференциального уравнения второго порядка. К данному уравнению добавляются начальные условия на значение функции и первой производной. Решение данной системы сводится к поиску коэффициентов. И на эту задачу можно посмотреть, как на задачу оптимизации: при каких коэффициентах решение будет максимально приближено к нашим историческим данным на множестве аналогичных переходных процессов.
Фактически, данная задача аналогична поиску гиперпараметров, и ее можно успешно решать с помощью уже знакомых инструментов, таких как SсiPy или Optuna.
После того как мы нашли эти коэффициенты дифференциального уравнения, нам необходимо найти коэффициенты PID-регулятора. Эта задача решается точно так же, только мы минимизируем уже отклонения параметра от уставки. После получения этих коэффициентов мы устанавливаем их на реактор и смотрим, как ведет себя наш процесс.
Архитектура или, что пришлось сделать, чтобы запустить эти задачи в прод
Для того чтобы система рецептурного управления и операторы производственной линии могли получать данные моделирования, пришлось написать немного кода.
Мы создали промежуточный гейтвей, который служит конвертером между HTTP и промышленными протоколами, такими как Modbus TCP. Этот элемент связывает системы АСУТП и различные ML-сервисы, позволяя взаимодействовать с оборудованием через REST API, не углубляясь в детали программной и аппаратной реализации систем управления. Это позволило облегчить внедрение наших ML-сервисов в прод, ускорить запуск отладочных экспериментов.
Первоначальным этапом работы ML-сервиса является проверка того, запущен ли процесс культивирования на конкретном биореакторе. Затем сервис собирает данные из системы управления, данные подвергаются предварительной обработке по заданному пайплайну предобработки и отправляются в модель для получения предсказания, ответ передается в систему управления. Полученные результаты используются системой управления для регулирования различных параметров и визуализируются для оператора производственной линии.
В процессе создания моделей мы используем MLFlow для логирования экспериментов и связанных с ними артефактов. Использование этого фреймворка упрощает управление жизненным циклом моделей машинного обучения и повышает эффективность разработки. Актуальные модели из MLFlow используются в сервисе на проде и для различных пуско-наладочных тестов и экспериментов на небольших лабораторных реакторах.
ML-сервис является многопоточным приложением, и в зависимости от количества активных процессов культивирования запускается соответствующее количество потоков с моделями под конкретный тип процесса. Настроено логирование с целью регулярной проверки состояния самого приложения, а также мониторинга метрик, и в случае наступления определенных событий рассылаются уведомления.
Логично было бы закончить этот рассказ информацией о той ценности и выгоде для бизнеса, которая получается от использования машинного обучения. Стоимость одного биореактора может достигать 10 000 000 рублей, обеспечение процесса культивирования также затратная история и требует вложения большого количества ресурсов и средств, поэтому даже небольшое изменение в качестве и количестве продукции существенно.

Мы постарались рассказать про наши задачи так, чтобы нас всех не уволили соблюсти все правила режима коммерческой тайны, но в то же время дать представление о том, кто мы, какими задачами занимаемся и с помощью чего их решаем. Надеемся у нас получилось.
С уважением, Data Science команда BIOCAD
ссылка на оригинал статьи https://habr.com/ru/company/biocad/blog/698330/
Добавить комментарий