Библиотека MatGL: графовые сети для материаловедения в открытом доступе ✛

Оригинал: "Materials Graph Library (MatGL), an open-source graph deep learning library for materials science and chemistry"
arXiv:2503.03837 · 2025-03-05 · CC BY 4.0 · 3 мин
MatGL объединяет пять графовых архитектур и готовые межатомные потенциалы в одной открытой библиотеке.

Контекст

Графовые нейросети для материалов в последние годы размножались, но каждая реализация жила в своём репозитории: MEGNet на TensorFlow, M3GNet на PyTorch, CHGNet со своими скриптами. Перенести модель на новые данные или сравнить архитектуры было отдельным проектом. Рядом уже существовали библиотеки для одной архитектуры и пакеты вроде PyTorch-Geometric, но для материаловедения не хватало общего слоя, который бы связывал структуры кристаллов, обучение и запуск молекулярной динамики. MatGL заполняет эту нишу, опираясь на DGL — библиотеку, которая по бенчмаркам обходит PyTorch-Geometric по памяти и скорости на больших графах.

Методы

MatGL построена на четырёх компонентах: конвейер данных, архитектуры моделей, обучение и интерфейсы симуляций. Конвейер принимает структуры Pymatgen или ASE, строит графы с заданным радиусом обрезания и кэширует их для повторного использования. Архитектуры — MEGNet, M3GNet, CHGNet, TensorNet и SO3Net — реализованы модульно: слои, пулинг и функции активации переиспользуются между моделями. Обучение идёт через PyTorch Lightning, что позволяет масштабировать расчёты на несколько GPU. Для межатомных потенциалов реализован класс Potential, который автоматически учитывает нормировку энергий и считает силы, напряжения и гессианы через автодифференцирование. Интерфейсы к ASE и LAMMPS дают запускать релаксацию структуры и молекулярную динамику одной командой.

Результаты

Бенчмарки на четырёх наборах данных показывают, что MatGL воспроизводит точность оригинальных моделей. На QM9 ошибка предсказания свободной энергии у M3GNet — 0.025 эВ, у TensorNet — 0.027 эВ, у SO3Net — 0.025 эВ; MEGNet отстаёт с 0.037 эВ. На Matbench для энергии формирования M3GNet, TensorNet и SO3Net дают ошибку 0.020–0.024 эВ/атом, а MEGNet — 0.037 эВ/атом. Для потенциалов на ANI-1x эквивариантный SO3Net достигает ошибки по силам 0.035 эВ/Å против 0.075 эВ/Å у M3GNet с переносом обучения. На кристаллах из Materials Project CHGNet обходит M3GNet и TensorNet: ошибка по энергии 19.9 мэВ/атом против 23.0 и 30.3 мэВ/атом. Скорость вывода у TensorNet на QM9 — 14.9 секунды на 6541 молекулу на одной RTX 3090, у MEGNet — 12 секунд, но с худшей точностью.

Значение

MatGL делает для графовых моделей материалов то, что scikit-learn сделал для классического машинного обучения: даёт единый интерфейс, где можно взять готовую модель, обучить свою или сравнить архитектуры на одних данных. Это снижает порог входа для экспериментаторов и ускоряет воспроизводимость. В отличие от соседних работ, которые фокусируются на одной архитектуре или на обучении с подкреплением, MatGL предлагает сразу пять моделей и связывает их с ASE и LAMMPS, что превращает библиотеку в платформу для полного цикла — от данных до молекулярной динамики.

Развитие

Следующий шаг — поддержка многопроцессорного обучения на нескольких GPU и работа с базами данных, превышающими миллионы структур. Авторы планируют использовать memory-mapped базы для хранения графов, чтобы снять ограничение по памяти. Это позволит обучать универсальные потенциалы на всём объёме Materials Project и запускать молекулярную динамику систем с сотнями тысяч атомов.

Влияние

Библиотека уже интегрирована в MatSciML и Amsterdam Modeling Suite, что расширяет её применение в высокопроизводительном скрининге материалов и промышленном моделировании.

Следующие шаги

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

Ключевые проблемы

Для материаловедения ключевая нерешённая проблема — перенос моделей на химические составы и структуры, далёкие от обучающей выборки. MatGL даёт инструмент для систематической проверки такой обобщаемости: можно быстро обучить модель на одном наборе данных и прогнать её на другом, не переписывая код. Это напрямую связано с вопросом, насколько универсальные потенциалы действительно универсальны за пределами равновесных конфигураций.

Взгляд машины знаний

Этот раздел адресован автору работы и его коллегам. Соседние работы нашёл смысловой поиск по нашему архиву — не по совпадению слов, а по смыслу. Мы не рецензируем: мы показываем поле вокруг.

Что сделано в работе

MatGL объединяет пять графовых архитектур (MEGNet, M3GNet, CHGNet, TensorNet, SO3Net) в единую библиотеку с конвейером данных, обучением через PyTorch Lightning и интерфейсами к ASE/LAMMPS. Авторы воспроизвели точность оригинальных моделей на QM9, Matbench, ANI-1x и MPF-2021.2.8, показав сопоставимые с DFT ошибки и высокую скорость вывода.

В чём сила

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

Куда можно двигаться

Что можно попробовать

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

Почему это может быть важно

Такое расширение позволило бы MatGL охватить ещё один класс материаловедческих задач — предсказание магнитных свойств — и укрепить её роль как универсальной платформы для графовых моделей в материаловедении.

Предобученный потенциал M3GNet в MatGL предсказывает энергию и силы для кристалла из 1000 атомов за доли секунды, тогда как расчёт той же системы методом DFT занял бы часы на суперкомпьютере.

Ключевые числа

  • ошибка по энергии на ANI-1x у SO3Net: 1.596 мэВ/атом
  • ошибка по силам на ANI-1x у SO3Net: 0.035 эВ/Å
  • время вывода TensorNet на QM9: 14.9 с на 6541 молекулу
  • количество архитектур в MatGL: 5
  • количество предобученных моделей: 28 для свойств и 6 для потенциалов
Понятия
материалы на основе машинного обучения графовая нейронная сеть глубокое обучение в медицинской визуализации предсказание молекулярных свойств языковая модель белков моделирование физики с помощью нейронных сетей графит набор данных большие языковые модели генеративная модель сопоставление медицинских изображений с геномными данными межатомный потенциал, обученный машинным обучением материаловедение графы визуализация кристаллов с помощью нейронных сетей