
Использование нейронных сетей для ускорения расчетов столкновений и взаимодействий молекул.Ускорение молекулярной динамики — это использование нейронных сетей для значительного ускорения компьютерного моделирования движения и взаимодействия атомов и молекул во времени. Традиционная молекулярная динамика основана на решении уравнений Ньютона для каждого атома на каждом малом временном шаге, что требует больших вычислительных затрат. Обучив нейронную сеть предсказывать силы между атомами на основе их положений, можно обойтись без тяжелых квантово-механических расчетов, которые обычно составляют основную часть затрат, что позволяет проводить более длительные и масштабные симуляции.
Идея получила распространение в 2000-х годах с развитием машинного обучения в химии, но стала практической в 2010-х с появлением архитектур глубокого обучения, таких как SchNet и DeepMD, которые смогли обрабатывать многомерные входные данные атомных координат.
Нейронная сеть обучается на данных, полученных из высокоточных, но медленных расчетов квантовой химии. После обучения она действует как «силовое поле», которое напрямую сопоставляет положения атомов с силами, минуя необходимость решать уравнение Шрёдингера на каждом шаге. Сеть улавливает сложные многочастичные взаимодействия, которые упускают простые аналитические формулы, обеспечивая точность, близкую к квантовой, при доле вычислительных затрат.
Используется для моделирования сворачивания белков, связывания лекарств с рецепторами и поведения материалов в экстремальных условиях, таких как ударные волны или высокие температуры.
Такие ускоренные симуляции могут моделировать миллионы атомов в течение микросекунд — подвиг, который на суперкомпьютере с традиционными методами занял бы столетия.
| Q | переменная | Матрица запросов — query matrix |
| K | переменная | Матрица ключей — key matrix |
| V | переменная | Матрица значений — value matrix |
| d_k | переменная | Размерность ключей — размерность |
| softmax | оператор | Нормализует строки до распределений вероятностей — softmax function |
| ⊤ | оператор | Транспонирование матрицы — transpose operator |
| √ | оператор | Квадратный корень — квадратный корень |



















