Нейросеть научилась правильно называть сложные химические соединения
Исследователи из Сколтеха, МГУ имени М. В. Ломоносова, и компании Syntelly разработали и обучили нейронную сеть для генерации названий органических соединений в соответствии с системой наименований химических соединений ИЮПАК. На этом примере они показали, что современным нейросетям по силам решать точные алгоритмические задачи.
В химии существует общепринятый язык для записи названий органических соединений — номенклатура ИЮПАК, Международного союза теоретической и прикладной химии. Например, привычная всем сахароза называется (2R,3R,4S,5S,6R)-2-[(2S,3S,4S,5R)-3,4-дигидрокси-2,5-бис(гидроксиметил)оксолан-2-ил]окси-6-(гидроксиметил)оксан-3,4,5-триол, а популярное лекарство парацетамол — это N-(4-гидроксифенил)ацетамид.
Такое название вещества полностью отражает его химическую структуру, поэтому для сложных молекул названия по номенклатуре ИЮПАК могут оказаться весьма громоздкими. При этом ошибка даже в одном символе будет критичной, то есть использование номенклатуры ИЮПАК требует от химика внимательности и хорошего знания ее многочисленных правил. На рынке есть коммерческие программные продукты для компьютерной генерации названий по ИЮПАК, но нет программ под свободной лицензией.