3. 材料特征工程入门
在材料性能机器学习回归中,模型的上限往往在特征工程阶段就已经被决定。原始数据通常只有一张“配方—工艺—性能”表:成分质量分数、热处理温度、保温时间、冷却方式、晶粒尺寸、相组成、硬度、屈服强度等。若直接把成分列和工艺列丢给回归器,模型既难以收敛,也无法解释“为什么这个成分区间强度更高”。特征工程的任务,是把这些原始记录翻译成一组物理含义明确、量纲可控、分布合理的描述符,让模型学到的是材料学规律,而不是数据表的列名。
三类描述符:成分、工艺、结构
材料特征通常可分为三个层次。第一层是成分描述符:各元素的质量分数或摩尔分数,以及由它们派生的合金平均电子浓度、原子尺寸差、混合焓、混合熵、价电子浓度等。第二层是工艺描述符:温度、时间、升温速率、冷却速率、变形量、气氛等,它们决定材料经历的热力学与动力学路径。第三层是结构描述符:晶粒尺寸、相体积分数、位错密度、织构强度、孔隙率等,它们最接近性能的物理来源,但往往测量成本最高、缺失最多。
一个常见的误区是只保留成分而忽略工艺与结构。例如同样是 Ti-6Al-4V,退火态与固溶时效态的屈服强度可相差数百 MPa,若工艺列被丢弃,模型只能把差异归因于成分噪声。因此,特征集应尽量覆盖“成分—工艺—结构”链条,即使结构特征部分缺失,也可通过工艺特征间接表达。
物理化学特征:把领域知识写进特征
比原始列更有价值的是物理化学特征,即用材料学公式把原始量组合成有明确物理意义的量。以高熵合金为例,常用特征包括:
- 混合熵 ΔSmix = −R Σ ci ln ci,反映固溶体稳定性;
- 混合焓 ΔHmix = Σi≠j 4ΔHijmix ci cj,反映原子间亲和性;
- 原子尺寸差 δ = 100·√(Σ ci(1−ri/r̄)²),反映晶格畸变倾向;
- 价电子浓度 VEC = Σ ci VECi,用于区分 FCC/BCC 相稳定区间。
这些特征把“成分”从一组无关联的分数,转化为可解释的物理量。回归模型在 ΔSmix 与 δ 构成的平面上学习相形成规律,比在五维成分空间中学习更稳定,也更容易向新成分外推。
量纲统一与分布处理
不同特征量纲差异极大:温度约 10³ K,时间约 10³ s,晶粒尺寸约 10¹ μm,而成分分数在 0~1 之间。若直接输入基于距离的模型(如 KNN、SVR、神经网络),温度会主导距离计算,成分几乎被淹没。因此需要量纲统一。常用做法是对每个特征做标准化:z = (x − μ)/σ,使其均值为 0、标准差为 1;或做极差归一化:x' = (x − xmin)/(xmax − xmin),把值压缩到 [0,1]。
但标准化并非万能。材料数据常出现偏态分布:晶粒尺寸、疲劳寿命、断裂伸长率往往右偏,少数大值拉长尾部。此时可先做对数变换 log(x),再标准化;对成分分数这类有界量,可使用 logit 变换 log(x/(1−x)) 拉开两端。对存在极端离群点的特征,可考虑稳健标准化 (x − median)/IQR,避免均值和标准差被少数异常值带偏。
特征筛选与共线性处理
初始特征集往往包含几十甚至上百列,其中不少高度相关。例如 ΔSmix 与成分熵、VEC 与平均族数可能近似线性相关。共线性会使线性回归系数不稳定,也会让树模型的重要性解释失真。常用处理方式:计算特征间 Pearson 或 Spearman 相关系数矩阵,对 |r| > 0.9 的特征对,保留物理意义更明确或缺失更少的一个;也可用方差膨胀因子 VIF 检查,VIF > 10 视为存在明显共线性。
筛选时建议保留“物理可解释性优先”原则:宁可少几个特征,也不要为了提升千分之一的 R² 而引入难以解释的组合量。对回归任务,可结合递归特征消除(RFE)或基于随机森林的重要性排序,但最终特征集应由材料学判断把关。
缺失值与异常值
结构描述符缺失最常见。若缺失比例低于 5%,可对数值特征用中位数填充、类别特征用众数填充;若缺失比例较高,应增加“是否缺失”指示列,让模型自行学习缺失模式。异常值方面,成分总和偏离 100%、温度为负、晶粒尺寸为 0 等属于物理不可能值,应直接修正或剔除;而性能上的极端值可能是真实的高性能样本,不应盲目删除,可先标记并在建模时用稳健损失函数处理。
一个可执行的特征工程流程
下面给出一个可直接套用的处理顺序,适用于大多数材料回归任务。假设原始表有成分、工艺、结构、性能四类列,目标为屈服强度。
1. 物理校验:成分总和归一化到 100%,剔除 T<0、d≤0 等非法值
2. 构造物理化学特征:ΔS_mix、ΔH_mix、δ、VEC、r̄
3. 偏态诊断:对每个数值特征计算偏度
- |skew| > 1 且值域为正 → log(x)
- 成分分数 → logit(x)
4. 缺失处理:数值列中位数填充,并新增“_is_missing”指示列
5. 共线性筛查:相关系数矩阵,|r| > 0.9 的特征对保留物理意义更强者
6. 标准化:对最终特征做 z-score,保存 μ 与 σ 供预测时复用
7. 输出:特征矩阵 X 与目标向量 y,附特征字典说明
其中第 6 步的 μ 与 σ 必须来自训练集,并原样应用到验证集和测试集,否则会造成数据泄漏,使评估结果虚高。这是材料机器学习中最常见也最隐蔽的错误之一。
结果如何判断
特征工程是否有效,不能只看模型 R²。建议同时观察三点:其一,收敛性——标准化后线性模型和神经网络的训练损失是否更平滑下降;其二,重要性排序——随机森林或 SHAP 给出的前几个特征是否与材料学预期一致,例如 VEC 对相稳定性的影响、晶粒尺寸对屈服强度的 Hall-Petch 关系;其三,外推稳定性——在留出的新成分或新工艺样本上,误差是否明显小于未做特征工程的基线。若重要性排序出现“温度权重远大于成分”这类与物理直觉相悖的结果,往往说明量纲未统一或存在泄漏,应回到第 3~6 步复查。
特征工程不是一次性动作,而是随数据积累和模型反馈不断迭代的过程。初始特征集应保持“少而可解释”,随着对材料机理理解的深入,再逐步加入交互项、工艺路径特征或从文献中提炼的新描述符。一个能被材料学家读懂的特征表,远比一个黑箱高维特征集更有长期价值。