Разработка AI-системы предсказания свойств молекул (ADMET)

Синтез и испытания соединений стоят дорого, а ошибки на раннем отборе отнимают месяцы работы лаборатории. Мы разрабатываем системы предсказания ADMET под ключ: обучаем модель на ваших данных и отсеиваем заведомо слабые молекулы ещё до синтеза. Это сокращает число ложных кандидатов вдвое и ускоряет ранний отбор.
Часто задаваемые вопросы

Почему предсказание ADMET в лаборатории даёт сбои

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

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

Третья — сам процесс решения. Соединение отсеивают по одному показателю, без интервала неопределённости прогноза и без проверки, применима ли модель к новому химическому классу. В корзину уходят перспективные кандидаты, а ресурс лаборатории тратится на молекулы, которые заведомо не пройдут дальше.

Разбираем, как это закрывается: от единого представления структур и разметки данных до оценки неопределённости на каждом шаге раннего отбора кандидатов.

Что даёт предсказание ADMET на этапе раннего отбора

Ранний отбор определяет, сколько соединений вообще дойдёт до синтеза. Барьер первой ступени — растворимость и проницаемость: по структурной формуле модель относит кандидата к классу «пройдёт / не пройдёт» за секунды, и до лаборатории доходит только то, что попадает в целевой профиль. Из сотни заявленных структур после этого фильтра остаётся 10–15.

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

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

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

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

Три реальных пути: внешний сервис прогноза свойств, дообучение открытой модели на своих измерениях и собственная модель на закрытых данных заказчика. Разница между ними не в «средней точности», а в том, где проходит граница применимости и кто отвечает за ошибку на новом хемотипе.

Вариант Когда подходит Ограничения
Внешний сервис прогноза свойств Быстрая оценка на раннем отборе, своих данных мало Логика закрыта, область применимости не проверить, на своих измерениях модель не обучить
Дообучение на своих данных поверх открытых наборов вроде ChEMBL Есть от сотен до тысяч собственных измерений, структуры близки к публичным Качество упирается в объём измерений по нужному свойству, обязательна чистка и разметка
Собственная модель на закрытых данных Данные нельзя выносить за периметр, хемотипы уникальны Дольше вывод в работу, нужна воспроизводимая валидация и поддержка версий моделей

Дообучение почти всегда выигрывает по времени запуска: публичные наборы дают общую химию, а свои измерения сдвигают прогноз в нужную серию. Собственная модель нужна, когда данные составляют коммерческую тайну или когда публичные наборы систематически не покрывают рабочие структуры.

Отдельно фиксируем область применимости: диапазон структур и свойств, внутри которого прогноз подтверждён валидацией, а за его пределами модель выдаёт предупреждение, а не уверенное число. Эту границу мы задаём до обучения, а не подгоняем после, — иначе сервис превращается в генератор правдоподобных ответов.

Поэтому выбор подхода начинаем с аудита данных: сколько измерений, по каким свойствам, насколько они однородны и можно ли их раскрывать. Ответы на эти вопросы и определяют, какой из трёх вариантов даст прогноз, которому можно доверять в отборе.

Как мы строим систему: этапы инженерной работы

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

  1. Постановка задачи прогнозирования. Определяем, какие свойства нужны — растворимость, проницаемость, метаболическая стабильность, токсичность — и в какой форме нужен ответ: число, класс или вероятность с порогом. Договариваемся о метрике качества и допустимом уровне ошибки для отсева соединений.
  2. Унификация химических структур. Источники дают одну и ту же молекулу по-разному: соли, заряды, таутомеры, дубликаты. Приводим всё к канонической записи, проверяем валентности и отсекаем битые структуры — иначе модель учится на шуме.
  3. Формирование признаков молекулы. Считаем дескрипторы и отпечатки, добавляем признаки окружения. Отдельно контролируем разбиение: соединения одной серии не должны попадать и в обучение, и в проверку.
  4. Проверка модели на отложенных данных. Тестируем не на случайной выборке, а на непохожих соединениях — по химическим сериям и каркасам. Смотрим ошибку по подгруппам и поведение на границах применимости: где модель неприменима, она возвращает отказ, а не число.
  5. Встраивание модели в конвейер расчётов. Оборачиваем её в сервис с валидацией входа, версионированием и журналом предсказаний и подключаем к текущему процессу отбора — результат приходит туда, где им пользуются, без ручного переноса файлов.
  6. Передача команде. Отдаём конфигурации, схему признаков, скрипты переобучения и регламент обновления модели на новых данных.

Конфигурации, схемы и регламенты: что передаём по итогам

Передача не сводится к архиву с весами модели. Без описания признаков, схемы потока данных и правил проверки ваша команда не сможет переобучить модель на новых данных и подтвердить воспроизводимость прогнозов. Поэтому комплект собираем так, чтобы его можно было принять по формальному списку и запустить без нашего участия.

  • Код и окружение — репозиторий с обучением и выводом прогнозов, зафиксированные зависимости и инструкция развёртывания: сборка воспроизводится на чистой машине вашей инфраструктуры.
  • Документация по модели — архитектура, гиперпараметры, схема валидации и границы применимости: для каких классов соединений прогноз устойчив, а где недостоверен.
  • Карта данных и признаков — источники наборов, правила очистки, дескрипторы, обработка пропусков и выбросов; по ней восстанавливается происхождение любого прогноза.
  • Схемы потока данных — путь от загрузки соединений до результата, точки хранения и обновления, поведение при сбое.
  • Контроль качества прогнозов — отложенные выборки, пороги по ошибке, проверка на сдвиг распределения; при выходе за порог переобучение останавливается.
  • Регламент переобучения — триггеры, периодичность, порядок приёмки новой версии и откат к предыдущей.
  • Обучение команды — разбор кода и данных, первый самостоятельный цикл обновления модели под нашим сопровождением.

Кейс: как сократили долю ложных кандидатов вдвое

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

Что было до внедрения

Снимали три метрики: доля ложных кандидатов (прошли отбор, но провалили лабораторную проверку), число проверок на один подтверждённый кандидат и время цикла отбора. Базовая линия — 62% ложных кандидатов: две из трёх синтезированных молекул не доходили до цели. Данные лежали в разрозненных таблицах, часть свойств не моделировалась вообще, а решения принимались по одному показателю активности.

Что изменили

Собрали единый корпус из открытых источников — за основу взяли ChEMBL — и внутренних архивов заказчика. Обучили отдельные модели на каждое свойство ADMET вместо одной обобщённой: смешанная задача размывала вклад признаков, и ошибка по токсичности тянула за собой прогноз растворяемости. Добавили оценку домена применимости — если молекула далеко от обучающей выборки, модель не выдаёт уверенный ответ, а помечает его как ненадёжный и отправляет на ручной разбор. Порог отсечения подобрали на исторических данных так, чтобы максимизировать подтверждаемость, а не полноту.

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

Результат

Доля ложных кандидатов упала с 62% до 29% — вдвое. Число лабораторных проверок на один подтверждённый кандидат сократилось в 2,3 раза при том же объёме синтеза. Цикл отбора сжался с трёх недель до нескольких дней, потому что основная фильтрация идёт до лаборатории, а не после. Модели, правила отбора и журнал решений зафиксированы — результат воспроизводится на новых сериях соединений.

Что делать, если уже есть свой конвейер расчётов?

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

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

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

Отдельная задача — сохранить накопленные правила: пороги, ограничения по подструктурам, исключения по сериям. Переносим их в явный слой постобработки и описываем как код с тестами, иначе знание держится на одном инженере и теряется при первом изменении.

Плавный переход идёт поэтапно: сначала теневой режим, где считает новая модель, а решение принимает старая; затем включение на отдельных группах соединений; и только потом — основной путь с возможностью отката на прежний расчёт.

Технические сомнения: данные, точность, применимость

На разборе задачи технические сомнения обычно одни и те же: хватит ли данных, нет ли утечки между обучением и проверкой, как свести измерения разных лабораторий и что делать с незнакомыми соединениями. Детали разбираем уже на вашем наборе.

Сколько данных нужно, чтобы предсказание было надёжным?

Смотрим не на общее число записей, а на количество серий и разнообразие химического пространства. Тысячи соединений с согласованными измерениями дают устойчивый прогноз по одному свойству, а сотни однотипных аналогов его не заменят.

Как проверяете модель на переобучение и утечки?

Делим выборку по химическим сериям, а не случайно, и убираем из признаков косвенные подсказки об ответе. Если качество на отложенных сериях резко падает, модель в работу не уходит.

Данные собраны разными методиками измерений — что с этим делать?

Каждую методику помечаем как отдельный источник и проверяем перенос между лабораториями. Расхождения не размываем усреднением, а показываем как интервал: видно, где прогноз устойчив, а где зависит от источника.

Что с соединениями вне обучающего набора?

Для каждой молекулы считаем удалённость от обучающих данных. Если она вне области применимости, модель отдаёт не число, а флаг — соединение уходит на эксперимент или в отдельный цикл дообучения.

Может ли модель обновляться самостоятельно?

Полного автоматизма не делаем: сдвиг в данных может тихо сломать прогноз. Новые измерения накапливаются, переобучение идёт по регламенту, а в работу уходит версия только с метриками не хуже предыдущей.

Обсудим задачу и вернёмся с оценкой и планом

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

  • Массивы данных: структуры с известными значениями свойств, в каком виде они лежат и насколько покрыты нужные конечные точки.
  • Перечень свойств ADMET, критичных для вашего отбора: растворимость, проницаемость, метаболическая стабильность, токсичность — приоритеты расставляете вы.
  • Требования к выходу: таблица со значениями и доверительными интервалами, ранжирование библиотек или бинарная отбраковка кандидатов.
  • Ограничения по данным: где хранятся, что допустимо передавать, нужна ли работа внутри вашего контура.
  • Метрика успеха в ваших терминах: доля отсеянных заведомо непригодных кандидатов, согласие прогноза с результатами лаборатории.
  • Примеры соединений, на которых текущий отбор ошибается, — они задают границы применимости будущей модели.

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

Опишите задачу прогнозирования — вернёмся с оценкой и планом.

Направления AI-разработки

Последние работы

  • Разработка сайта компании B2B ADVANCE
    Разработка сайта компании B2B ADVANCE
    1542
  • Разработка веб-приложения для компании FEEDME
    Разработка веб-приложения для компании FEEDME
    1393
  • Разработка веб-сайта для компании БЕЛФИНГРУПП
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    1081
  • Разработка интернет магазина для компании FURNORO
    Разработка интернет магазина для компании FURNORO
    1368
  • Разработка логотипа компании B2B Advance
    Разработка логотипа компании B2B Advance
    815
  • Разработка веб-приложения для компании Enviok
    Разработка веб-приложения для компании Enviok
    1139