Компания Cradle разрабатывает систему машинного обучения для оптимизации белков, что является критически важным этапом в создании лекарств. Чтобы понять, как это работает, нужно сначала знать, что такое белок: это цепочка из двадцати типов аминокислот, которая сворачивается в сложную трёхмерную структуру для выполнения функции. Исходная задача модели — предсказать наиболее вероятную аминокислоту в определённой позиции, используя данные о миллионах естественных белков. Такой базовый подход учит систему понимать естественные ограничения, но для конкретной медицинской задачи этого недостаточно.
Команда применяет технику, которую называют эволюционным дообучением или evotuning. Сначала строится множественное выравнивание последовательностей (MSA) с помощью поиска гомологов в базах данных. Это позволяет выявить консервативные участки и мотифы, важные для структуры белка, чтобы модель училась предлагать варианты, близкие к эволюционному контексту. Затем данные экспериментов, полученные в лаборатории, обрабатываются с учётом так называемых batch-эффектов — искажений, возникающих при тестировании групп белков одновременно в одной чашке.
Для улучшения качества предложений используется метод grouped DPO. Он группирует белки по сходству и формирует пары «хорошо/плохо» внутри каждой группы, помогая модели чувствовать тонкие различия, влияющие на активность. На этом этапе появляется модель logiter, которая генерирует новые варианты белков. Отдельно создаётся предиктор, использующий внутренние векторные представления модели для предсказания значения активности без проведения новых экспериментов. Эти векторы, которые обычно скрыты внутри трансформера, позволяют оценить потенциал кандидата заранее, отсеивая слабых вариантов перед отправкой в лабораторию. Так замыкается цикл между вычислениями и реальными экспериментами. Однако выбор конкретных позиций для модификации остаётся за отдельной моделью маскирования, которую разберут в следующий раз.