MolBERT - новый способ создания дескрипторов

МЕНЮ


Искусственный интеллект
Поиск
Регистрация на сайте
Помощь проекту

ТЕМЫ


Новости ИИРазработка ИИВнедрение ИИРабота разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика

Авторизация



RSS


RSS новости


Это должно было произойти, давно думал почему так никто не делает, но оказывается этим занимались ребята из BenevolentAI: они использовали трансформеры и self-supervised learning для создания дескрипторов. Обе эти технологии, в моем понимании, лежали на поверхности и показали высокое качество в text mining. Вот, наконец, ее успешно использовали.

В чем суть: есть такая архитектура нейронной сети - трансформер. Она сейчас основная в анализе текстов для создания языковых моделей (эта такая модель, которая может тексты генерировать). Самая популярная языковая модель сейчас это BERT. Кому интересно, очень советую почитать. В общем там используется трансформер, который довольно хитро обучают - учат в предложении ставить нужные слова вместо пропущенных, определять, являются ли два предложения последовательными и пр.

Все это делается потому, что натренировать модель довольно сложно, нужно слишком много данных, чтобы она начала понимать глубокую суть явлений. Поэтому сейчас популярно использование self-supervised learning - это такое обучение, когда вы можете сформулировать задачу таким образом, что модели будет решать ее сложно, потому что надо глубоко понять суть данных, а вам подготовить корпус текстов для обучения не сложно. Например, в случае картинок - их режут на части и модели надо поставить их в нужный порядок, чтоб восстановить картинку. Для этого модель же должна понимать по обрезку, что изображено на каждой части, предположить, что должно быть вокруг и т.д. Так и в текстах - вы просто пропускаете слово в предложении и просите ее вставить это слово. Нагенерировать выборку не сложно, а модель должна понимать контекст. А потом, когда модель начнет что-то нормально предсказывать, можно ее fine-tune'ить под решение конкретных текстов. Вот и ребята из BenevolentAI использовали эту концепцию, но для SMILES.

Они сделали 3 задачи для self-supervised learning:

-предсказать пропущенные символы в SMILES

-для двух SMILES предсказать это разные молекулы или одна молекула с разным порядком атомов

- предсказать дескрипторы молекулы.

Ребята показали, что полученные после обучения ембеддинги (векторное представление для молекулы, т.е. дескрипторы) очень хорошо справляются в задачах поиска по сходству, где значительно превосходят фингерпринты и другие архитектуры. В задачах QSAR моделирования с использованием SVM также получено значительное улучшение по сравнению с другими подходами. Причем интересно, что качетсво дескрипторов сильно зависит от того, какие задачи self-supervised learning вы используете.

Код открыт и доступен: https://github.com/BenevolentAI/MolBERT

А тут статья:

https://arxiv.org/pdf/2011.13230.pdf


Источник: github.com

Комментарии: