Исследователи из основанного в Сколтехе стартапа «Синтелли», МГУ имени Ломоносова и Университета «Сириус» разработали решение на базе нейронной сети для автоматического распознавания химических формул на сканах научных статей.
Нейронную сеть научили распознавать химические формулы из научных статей / ©Getty images
Статья с описанием исследования опубликована в научном журнале Chemistry-Methods, выпускаемом издательством Европейского химического общества. Человечество вступает в эпоху искусственного интеллекта, и химия здесь не исключение. Современные методы глубокого обучения всецело базируются на больших объемах качественных данных, которые необходимы для обучения нейросетей.
Хорошая новость: химические данные «не стареют». Даже если какое-то соединение было синтезировано, скажем, в начале XX века, информация о его структуре, свойствах и методах синтеза остается актуальной по сей день. Даже в наши дни всеобщей цифровизации нельзя назвать редкостью случай, когда химику-органику приходится искать по библиотекам оригинальный научный журнал или диссертацию, изданную в начале XX века, скажем, на немецком языке, чтобы получить информацию о малоизученной молекуле.
Но есть и плохая новость: не существует единого стандарта представления химических формул. Химики привыкли использовать множество приемов сокращения записи известных химических групп. Например, вместо рисунка трет-бутильной группы могут использоваться несколько вариантов обозначений: tBu, t-Bu или tert-Bu. Что еще хуже, часто целую группу похожих соединений записывают в виде шаблона с символами-заместителями (R1,R2), но сами расшифровки заместителей могут быть приведены где угодно: в таблицах, схемах, в тексте статьи, в приложениях к статье.
Добавьте сюда различные стили отрисовки в различных журналах, традиции и привычки химиков, изменения стилей рисования с течением времени. Все это приводит к тому, что иногда даже химики-эксперты теряются в попытках расшифровать «химический кроссворд» из очередной статьи. Для алгоритма эта задача и вовсе кажется неразрешимой.
Однако в руках у исследователей уже был опыт применения мощного инструмента для решения схожих задач — нейросети «Трансформер», предложенной компанией Google для машинного перевода с одного языка на другой. Вместо этого коллектив решил «переводить» изображение молекулы или молекулярного шаблона в специально разработанное текстовое представление этого шаблона. Это представление исследователи назвали Functional-Group-SMILES.
К большому удивлению авторов работы, нейросеть оказалась способна выучить практически все, если выбранный стиль отображения был представлен в обучающем наборе данных. Однако «Трансформер» сам по себе требует десятки миллионов примеров для обучения. Вручную вырезать из журналов столько химических формул просто невозможно. Тогда исследователи решили посмотреть на проблему под другим углом: сделать генератор данных, который будет создавать случайные молекулярные шаблоны комбинируя различные фрагменты молекул и стили отрисовки.
«Наше исследование наглядно демонстрирует сдвиг парадигмы в области оптического распознавания химических структур. Если раньше исследователи работали над тем, как распознать молекулярные структуры, то, благодаря уникальной производительности нейросетей типа „Трансформер“, возможно полностью сфокусироваться именно на создании генератора искусственных примеров, имитирующих большинство возможных стилей отрисовки молекулярных шаблонов.
Наш алгоритм комбинирует молекулы, функциональные группы, шрифты, стили и даже погрешности печати, фрагменты других молекул, фрагменты аннотаций и так далее. Даже химику будет тяжело сказать, была ли молекула взята из существующей статьи или ее рисунок создан нашим генератором», — говорит Сергей Соснин, руководитель исследования и основанного в Сколтехе стартапа «Синтелли».
Исследователи надеются, что метод станет важнейшим шагом на пути к химической системе искусственного интеллекта, которая будет способна «читать» и «понимать» статьи не хуже высококвалифицированного химика.