自 2011 年 6 月美国提出“材料基因组计划”以来,高效材料计算、高通量实验表征和材料数据挖掘被越来越多地应用于材料研究,特别是数据密集型科学已成为继实验、理论和计算模拟后的科学发现“第四范式”,日益受到人们的关注。机器学习的应用是数据科学的重要标志之一,它能够处理结构复杂的高维数据、模拟人类学习行为,自动探究数据内部关联,通过建立定量模型对未知样本特征进行预测[57]。这将材料研发从传统经验方式提升到了以组织结构与材料性能相关性为基础的科学设计上,为材料性能预测和新材料发现提供了新机遇。
如图 1.3所示:机器学习定义为,对于特定任务 T和性能度量 P,如果一个计算机程序在 T 上以 P 衡量的性能随着经验 E 而自我完善,那么我们称这个计算机程序从经验 E 中学习[58]。在材料科学研究中,任务 T 主要集中于新材料的开发和性能测,目前机器学习已经广泛应用于高熵合金、钙钛矿材料、有色金属、固态电解质、复合材料等各种材料种类的性能预测及成分预测上[59]。在 web of science网站上以“machine learning”和“material”为关键词搜索得到的来发表的文献数量从 2011年的 764篇激增至 2022年的10,351篇。
经验 E 通常是描述材料性能的一组材料属性(特征)的数据集,其直接决定了后续模型的精度及模型的泛化性能。获取一组数量充足,质量可靠的数据往往是运用机器学习开展材料科学研究的必要条件。
材料数据库往往是研究者获取充足可靠数据的方便来源,统一标准下建立的数据库极大程度的方便了材料研究人员之间的交流与合作,提高了新材料设计的效率。例如,无机晶体结构数据库(Inorganic crystal structure database, ICSD)是一个综合性的非有机材料结构数据库,收集了超过 200,000 种化合物,包括金属、陶瓷和矿物。与 ICSD 相比,剑桥大学数据(Cambridge Structural Databases, CSD)则包括大量有机和金属有机晶体结构[60],两者汇总了过去数十年实验积累下的宝贵的实验数据,为建立正确的构效关系提供了可靠的数据来源。高通量计算同样推动了材料数据库的巨大发展,例如 Curtarolo S 发布的 AFLOWlib 数据库[61],其内容包含超过1,000,000 种材料和属性,包括不仅已证实存在的材料,而且还有大量材料计算得出的无法长期稳定存在的假设材料。
除此之外,文本挖掘技术也给材料数据的搜集提供了有利帮助,研究者们结合爬虫技术,可以批量分析论文文本,从中提取材料性能数据、工艺参数或制备方法。Yingli L 等人[62]采用循环神经网络从材料文献中选择了材料名称、元素、组分、制备方法、性能五种类型的数据,并通过人工标注构建了过共晶铝硅合金材料数据集(HASE),共包含 8,845 个材料样本。同时,在只有少量已标注数据的材料领域,研究者们提出了与主动学习相结合的方法,结合材料样本的特点,实现用基于词典和规则的自动标注,最后共对 16,677个材料样本进行了收集。Rubayyat M等人[63]运用自然语言处理,批量分析了近万篇文献中关于固态电解质的加工条件,并将材料合成参数运用到了硫化物和氧化物固态电解质材料的制备中,指导了高电位氧化物基锂石榴石电解质的低温合成。
此外,对于失败和有限的数据集,研究者们仍然尝试了利用方法。2016《Nature》封面文章作者通过对大量失败实验数据的挖掘,实现了无机物合成工艺的优化,准确率高达 89%[64] 。美国 SLAC国家加速器实验室基于[65]有限的金属玻璃实验数据上,利用机器学习对所有可能的材料性能做出预测,构建候选材料数据池,配合验证实验快速研发出了新型三元金属玻璃合金材料。为了完成某个材料任务 T,数据往往依赖于一个模型来不断完善。常用的建模算法分为监督学习算法和无监督学习算法。监督学习算法事先依赖于已知的一组标签(往往是实际需要的材料性能)来建立一个从特征映射到标签的数学模型,以用于后续未知标签的预测,其中还可分为回归(一般对于连续数据,寻找最佳拟合方式)和分类(一般对于离散数据,寻找最佳决策边界)。由于监督学习不但可以对未知样本进行预测,还可以给出深层次的模型关系,其代表算法如线性拟合及其衍生算法、支持向量机、树算法、神经网络等被广泛用于材料性能预测和成分开发上,算法的细节将在 2.2.1节中详细介绍。
无监督学习算法的使用则相对较少,其不依赖于事先已知的材料标签,而注重于理解材料特征内部的关联和区别,从而将样本分成某几簇(聚类)或进行某些转化(降维),尽管无监督学习的使用较少,但仍在对未知样本的分簇上表现优异。
Pagan D C 等人[66]使用 K-means 和 PCA 降维算法,对不同力学行为的镁合金晶粒拉伸曲线降维处理后进行聚类,成功的将晶粒分成不同硬化程度的四类。单一的机器学习算法也许在某些问题上性能相对优异,但是实际运用中为了进一步降低误差并保持模型免受随机数、随机特征的不稳定影响,集成学习模型往往被使用。集成学习算法本身不是一种单独的机器学习算法,而是通过构建并结合多个机器学习器来完成学习任务的算法,又被称为基于委员会的学习法(committee-based learning)[67]。集成学习算法往往同时训练多个同质或者异质的基学习器,衡量基学习器的结果,通过不断优化基学习器或者综合考虑各个输出,给出最终的结果。常见的集成学习算法有 bagging、boosting、stacking 等。Aayesha M 等人[68]使用随机森林和 stacking 方法,对高熵合金的构成相进行分类,最终准确率可达到95%,与使用深度学习的结果类似,但模型复杂程度和计算成本要低于深度学习。
深度学习方面,神经网络的发展也给材料研究领域带来了极大的技术突破,通过模拟生物神经网络的构成形式,由偏置、权重、激活函数构成的诸多神经元构成了庞大复杂的神经网络,对于大数量样本的训练拟合效果尤其好。除了文本分析中用到的循环神经网络外,长短期记忆网络尤其是卷积神经网络在图像处理方面的巨大优势使之在分析材料结构图像方面发挥了重要作用。Pin Z等人[69]基于铝合金颗粒样本的图像和双向长短时记忆网络提取颗粒信息(颗粒大小分布和形态),采用神经网络训练具有相应颗粒信息的样本,再现了力学行为和织构演化的模型。
除此以外,一些优化算法,如遗传算法、粒子群算法、模拟退火算法等,在处理带约束的单/多目标优化问题时也能展现出突出的优势,尤其是在材料制备工艺参数组合问题上。例如 Amith G 等人[70]利用遗传算法和粒子群算法,考虑主轴转速、切削深度和进给速度等工艺参数,对玻璃纤维增强复合材料进行车削的切削力进行优化,两种优化技术的结果彼此吻合,也与实验验证的切削力值吻合。
对于模型的衡量方法 P,一般将数据集分为训练集和测试集,通过在测试集上对残差或精度的衡量来评价机器学习模型的优劣。而分割数据集的方法较多,比如自助法,留出法,最常用的是交叉验证法,即将数据集分割成为 k 个相同大小的数据集合,遍历性的将 k 个不同的数据集合作为训练集,其余的作为测试集。这种方法能够保证取样的充分和数据的均匀性,Zheng X 等人[71]在此基础上做出了改进,提出了前向交叉验证法,使之更适合新材料的开发预测。前向交叉验证法将样本通过大小排序后在进行交叉验证,在形成能、能带宽度和超导体转变温度上进行测试,对于突出性能的新材料的预测比传统的交叉验证法更准确。
Bryce M 等人[72]也同样以超导材料的开发为例,通过比对传统 k 折交叉验证和leave-one-cluster-out cross-validation (LOCO CV) 在钇钡铜氧的临界转变温度上的预测效果,显示在不同组的材料预测中,LOCO CV 将显示更准确的预测实际的外推性能。实际操作中,LOCO CV 先通过聚类算法将原始数据分为若干簇,每次验证时以某一簇为测试集,其余数据为训练集。考虑到在材料开发中,得到的数据的均匀性不能保证,可能的各簇数据量不同,且考虑到材料开发需要的强大的外推能力,LOCO CV 为选择和评价模型提供了一条新的途径。