ML для материалов

Коротко

Definition

ML для материалов — это применение методов машинного обучения к задачам материаловедения: предсказанию свойств, поиску новых материалов, анализу структур и ускорению вычислительных или экспериментальных исследований.

В materials ML модель обычно получает описание материала и предсказывает его свойство.

Примеры свойств:

  • formation energy;
  • band gap;
  • elastic modulus;
  • stability;
  • conductivity;
  • catalytic activity;
  • toxicity or safety-related indicators;
  • synthetic accessibility.

ML для материалов полезен, потому что полный экспериментальный или квантово-химический расчёт может быть дорогим, долгим или невозможным для миллионов кандидатов.

Интуиция

Материал можно описать через состав, структуру, атомы, связи, кристаллическую решётку, экспериментальные условия и вычисленные признаки.

Модель машинного обучения пытается найти связь:

Например:

Если модель достаточно точна, её можно использовать как быстрый фильтр: сначала предсказать свойства большого числа кандидатов, а затем отправить самые перспективные на более дорогую проверку.

Основные задачи

Предсказание свойств

Самая типичная задача — регрессия.

Примеры:

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

Это связано с задачами регрессии и метриками регрессии.

Классификация материалов

Иногда нужно предсказать класс.

Примеры:

  • стабилен / нестабилен;
  • проводник / полупроводник / изолятор;
  • токсичен / нетоксичен;
  • подходит / не подходит под заданные ограничения.

Это связано с задачами классификации.

Поиск кандидатов

ML можно использовать для screening: быстро отсортировать много потенциальных материалов и выбрать небольшое число перспективных.

Например:

  1. Сгенерировать или взять базу кандидатов.
  2. Посчитать descriptors.
  3. Предсказать нужное свойство.
  4. Отобрать top-k.
  5. Проверить их более точным методом.

Representation learning

Модель может учиться не только предсказывать свойство, но и строить полезные представления материалов.

Такие представления можно использовать для:

  • поиска похожих материалов;
  • кластеризации;
  • transfer learning;
  • downstream-задач;
  • визуализации пространства материалов.

Типы данных

В ML для материалов встречаются разные представления данных.

Табличные признаки

Материал можно описать набором числовых и категориальных признаков:

  • состав;
  • средняя электроотрицательность;
  • атомные радиусы;
  • статистики по элементам;
  • плотность;
  • объём ячейки;
  • симметрийные признаки;
  • заранее вычисленные descriptors.

Такой подход связан с табличными данными и хорошо подходит для классических моделей.

Графовое представление

Молекулу или кристалл можно представить как граф:

  • вершины — атомы;
  • рёбра — связи или соседства;
  • признаки вершин — типы атомов и атомные свойства;
  • признаки рёбер — расстояния, типы связей, направления.

Это связано с графовыми данными и заметкой GNN для молекул и кристаллов.

Кристаллическая структура

Для кристаллов важно учитывать:

  • атомные координаты;
  • периодические граничные условия;
  • параметры элементарной ячейки;
  • локальное окружение атомов;
  • симметрию;
  • расстояния и углы.

Поэтому для кристаллов часто используют специальные модели вроде CGCNN, MEGNet, M3GNet или MatGL-подходов.

Текстовые и экспериментальные данные

Иногда данные приходят из статей, отчётов и экспериментальных таблиц.

Тогда нужны этапы:

  • извлечение данных;
  • нормализация единиц;
  • очистка;
  • связывание структуры и свойства;
  • проверка качества разметки.

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

Подходящие модели

Классические модели

Для табличных descriptors часто используют:

Для многих materials datasets сильным baseline может быть градиентный бустинг на хорошо сделанных descriptors.

Графовые нейросети

Если доступна структура материала, используют graph neural networks.

Примеры подходов:

  • CGCNN;
  • SchNet;
  • MEGNet;
  • M3GNet;
  • MatGL-based models;
  • equivariant GNN.

Они подробнее связаны с GNN для молекул и кристаллов и Геометрическое ML в химии.

Pretrained models

Если данных для target-задачи мало, можно использовать перенос обучения:

  • взять модель, предобученную на большом materials dataset;
  • заменить или дообучить head;
  • fine-tune на своей задаче.

Это полезно, если target dataset маленький, а source dataset близок по природе данных.

Типовой pipeline

Типовой pipeline для ML в материалах:

  1. Определить задачу и целевое свойство.
  2. Собрать датасет материалов.
  3. Проверить качество структур и target values.
  4. Выбрать представление материала.
  5. Сделать предобработку.
  6. Разделить данные на train, validation и test.
  7. Построить простой baseline.
  8. Обучить основную модель.
  9. Оценить качество через подходящие метрики.
  10. Проанализировать ошибки.
  11. Проверить domain validity.
  12. Использовать модель для screening или анализа.

Подробнее общий порядок описан в Типовой ML pipeline.

Особенности предобработки

В materials ML предобработка особенно важна.

Нужно проверять:

  • дубликаты структур;
  • одинаковые материалы из разных источников;
  • разные фазы одного состава;
  • разные условия измерения;
  • единицы измерения;
  • пропуски;
  • выбросы;
  • физически невозможные значения;
  • несогласованность расчётных и экспериментальных данных.

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

Например, formation energy из DFT и экспериментальная стабильность — не одно и то же.

Метрики оценки

Для регрессии используют Метрики качества регрессоров:

  • MAE;
  • RMSE;
  • R²;
  • MAPE, если применимо.

В материаловедении MAE часто особенно удобна, потому что её можно интерпретировать в физических единицах.

Например:

  • eV/atom;
  • GPa;
  • K;
  • S/m;
  • kcal/mol.

Для классификации используют Метрики качества классификаторов:

  • accuracy;
  • precision;
  • recall;
  • F1-score;
  • ROC-AUC.

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

Типичные проблемы

Малые датасеты

В материалах часто мало качественных размеченных данных.

Это повышает риск переобучения и делает важными:

  • простые baseline;
  • регуляризацию;
  • cross-validation;
  • transfer learning;
  • аккуратную проверку ошибок.

Data leakage

Материалы могут быть очень похожи друг на друга. Если почти одинаковые структуры попали и в train, и в test, качество будет завышено.

Особенно опасны:

  • дубликаты;
  • разные записи одного материала;
  • структуры с очень похожим составом;
  • несколько вычислений одного объекта;
  • derived features, содержащие target information.

Неправильное разбиение данных

Случайный train/test split не всегда честен.

Иногда нужно использовать:

  • split по составам;
  • split по chemical systems;
  • split по time/source;
  • scaffold-like split для молекул;
  • leave-one-family-out validation.

Цель — проверить, умеет ли модель обобщать на действительно новые материалы, а не только интерполировать между похожими.

Разные источники данных

Данные из разных баз, статей и расчётов могут отличаться методикой.

Например:

  • разные DFT functionals;
  • разные экспериментальные условия;
  • разные критерии стабильности;
  • разные способы подготовки образцов.

Модель может выучить bias источника, а не физическую закономерность.

Физическая валидность

Хорошая ML-метрика не гарантирует физически осмысленный результат.

Предсказанный материал может быть:

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

Поэтому ML обычно должен быть частью larger discovery pipeline, а не единственным решением.

Когда использовать

ML для материалов стоит использовать, если:

  • есть датасет материалов и свойств;
  • полный физический расчёт слишком дорогой;
  • нужно быстро отфильтровать кандидатов;
  • нужно построить surrogate model;
  • нужно найти закономерности в данных;
  • нужно ускорить экспериментальный или вычислительный поиск;
  • нужно работать с большими materials databases.

Когда не использовать

ML может быть плохим выбором, если:

  • данных очень мало и нет возможности использовать prior knowledge;
  • target values шумные или несопоставимые;
  • задача требует точной физической интерпретации;
  • нет понятного способа валидации;
  • модель будет применяться далеко за пределами train-domain;
  • физические ограничения важнее статистического качества.

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

Минимальный пример

Допустим, есть датасет перовскитов:

МатериалПризнакиTarget
Aсостав + структурные descriptorsformation energy
Bсостав + структурные descriptorsformation energy
Cсостав + структурные descriptorsformation energy

Задача:

Это регрессия.

Простой pipeline:

  1. Очистить данные.
  2. Разделить на train/validation/test.
  3. Построить baseline через линейную регрессию или Градиентный бустинг.
  4. Обучить графовую модель, если доступны структуры.
  5. Оценить MAE в eV/atom.
  6. Проверить ошибки на разных химических семействах.
  7. Использовать модель для предварительного screening.

Практические замечания

Для проекта Materials ML разумная стратегия:

  1. Начать с готового датасета.
  2. Сначала построить простой baseline.
  3. Затем сравнить его с GNN или pretrained materials model.
  4. Не усложнять data pipeline до проверки baseline.
  5. Чётко фиксировать split.
  6. Оценивать не только качество, но и устойчивость.
  7. Смотреть ошибки по классам материалов.
  8. Объяснять, почему выбранная модель подходит к структуре данных.
  9. Сравнивать с классическими табличными подходами.
  10. Не заявлять физическое открытие без дополнительной проверки.

Связанные понятия

Что знать перед этим