Победители хакатона запускают пилот для химиков

В ноябре 2019 года состоялся хакатон Hack.Genesis, в котором участвовали 130 человек и две компании-партнеры — ЦВТ «ХимРар» и технологическая компания UMA.TECH. Представитель победителя трека «ХимРар», команды Chain++, Анна Чухнина рассказывает о киллер-фичах их решения и работе над запуском пилота.

На работу с научными статьями и патентами, в которых встречаются формулы веществ, химики тратят порядка 2.5 часов в день: чтобы найти информацию о молекулах в электронных библиотеках, приходится вручную вводить громоздкие формулы в «правильном» формате.

Проблема существует не один год, поэтому компания «ХимРар» поставила на хакатон задачу создать прототип, который распознает химическую формулу вещества по фотографии.

Требования к конечной версии продукта были следующими:

  • реализация на Android и IOS;
  • распознавание нарисованной рукой структуры молекулы;
  • наличие редактора структур;
  • способность генерировать формулу в формате SMILES или в другой номенклатуре по фотографии.

Что такое формат SMILES?

Одним из способов записи химической формулы является SMILES-кодирование, которое решает проблему соответствия одной формуле нескольких веществ. Такая сложность существует из-за изомерии — отличия в пространственном расположении атомов в молекулах с одинаковой молекулярной формулой.

SMILES расшифровывается как Simplified Molecular-Input Line-Entry Specification (Спецификация Упрощенного Представления Молекул в Строке Ввода) и используется при работе молекулярных редакторов и электронных баз данных химических соединений. Cтрока SMILES однозначно преобразуется в структурную двумерную или трёхмерную молекулярную формулу.

Если добавить лишний или потерять символ (O1C=CC=C1C=O ⇎ O1C=CCC1CO ) при введении структурной формулы, найти молекулу не удастся. Подробнее с принципами SMILES можно ознакомиться по ссылке.

Решение поставленной задачи

Наша команда разработала решение, которое определяет по фотографии строение органических веществ, состоящих из атомов углерода и водорода, и переводит их в формат SMILES. Если же в молекулах присутствуют другие атомы или у фотографии низкое качество, можно вручную провести корректировку с помощью диалоговых команд.

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

Идея прототипа появилась прямо на хакатоне. Нам удалось создать функциональный, насколько это возможно за два дня, MVP. На основании проведенного custdev среди химиков-органиков возникло представление об интерфейсе.

Изначально планировалось использование сверточных нейронных сетей (CNN), которые несколько лет назад взорвали мир computer vision. Для их применения требуется большой размеченный датасет, и в дальнейшем длительное переобучение, что может вызвать проблемы на практике.

В итоге, наша команда выбрала классический алгоритм computer vision — преобразование Хафа, которое применяется для распознавания фигур на изображении; за основу решения использовался открытый исходный код OpenCV.

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

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

​Формула распознана с ошибками
​Формула распознана с ошибками
Формула распознана без ошибок​
Формула распознана без ошибок​

На данный момент состоялись три встречи с представителями компании «ХимРар», после которых мы подписали договор о запуске пилота и определили срок сдачи доработки — конец января 2020 года.

Бэкграунд команды

Наша команда состоит из трех человек: я работаю со стартапами на стыке биотехнологий и IT; Михаил Коновалов занимается Python разработкой и является бронзовым призером Kaggle Competition по предсказанию свойств молекул – оба закончили химфак МГУ; и Алексей Агафонов - студент МФТИ, разработчик. Для меня и Алексея Hack.Genesis не был первым хакатоном – мы уже участвовали в хакатонах от Phystech.Genesis. Для Михаила же это был первый опыт и сразу победный.

Сейчас наша команда работает над созданием рентабельного для бизнеса продукта, который может перерасти в стартап и увеличить прибыль «ХимРара». Все это стало возможным благодаря опыту каждого из нас в сфере программирования, компьютерного зрения, биотехнологии, химии, машинного обучения и работы с бизнес-проектами.

Начать дискуссию