第4章 机器学习与材料性能预测

Machine Learning and Materials Property Prediction
学习路径:问题定义 → 材料描述符 → 回归/分类 → 无监督分析 → 评估验证 → 材料案例
本章目标:理解机器学习建模流程,掌握材料性能预测的基本方法与可靠性评价。
@Shiyan Pan
CONTENTS

目录

  • 4.1 机器学习基本概念与建模流程 △
  • 4.2 特征工程与材料描述符 △★
  • 4.3 回归模型:线性回归、岭回归、随机森林、支持向量回归
  • 4.4 分类模型:逻辑回归、决策树、支持向量机
  • 4.5 聚类、降维与关联规则
  • 4.6 模型评估:误差、泛化、交叉验证 △★
  • 4.7 材料性能预测案例:强度、硬度、相组成、腐蚀性能

主线:从材料数据出发,建立可解释、可验证、可复现的性能预测模型。

第4章 流程 描述符 回归 分类 无监督 评估 案例

4.1 机器学习基本概念与建模流程 △

  • 从“规则编程”转向“从数据中学习规律”。
  • 明确输入、输出、样本、特征、标签、模型、损失函数。
  • 建立材料性能预测的一般流程。

先理解建模对象,再选择算法。

第4章 流程 描述符 回归 分类 无监督 评估 案例

4.1.2 从函数映射理解机器学习

设材料样本的输入特征为 xx,目标性能为 yy,机器学习模型可写为:

y^=fθ(x)\hat{y}=f_{\theta}(x)

其中:

  • xx:成分、工艺、组织或谱图等特征。
  • yy:强度、硬度、相类别、腐蚀速率等目标。
  • θ\theta:模型参数。
  • y^\hat{y}:模型预测值。

训练模型的实质:寻找合适的 θ\theta,使预测尽可能接近真实观测。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.1.3 数据集的数学表示

材料数据集通常表示为:

D={(xi,yi)}i=1n\mathcal{D}=\{(x_i,y_i)\}_{i=1}^{n}

矩阵形式为:

X=[x11x12x1px21x22x2pxn1xn2xnp],y=[y1y2yn]X=\begin{bmatrix} x_{11} & x_{12} & \cdots & x_{1p}\\ x_{21} & x_{22} & \cdots & x_{2p}\\ \vdots & \vdots & \ddots & \vdots\\ x_{n1} & x_{n2} & \cdots & x_{np} \end{bmatrix},\quad y=\begin{bmatrix}y_1\\y_2\\\vdots\\y_n\end{bmatrix}

nn 为样本数,pp 为特征数。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.1.4 材料机器学习的输入与输出

机器学习术语 材料科学含义 示例
样本 一组材料记录 某成分合金的一次实验
特征 可用于建模的变量 C、Cr、Ni、热处理温度
标签 要预测的目标 抗拉强度、硬度、相类别
模型 输入到输出的映射 随机森林、支持向量机
损失 预测偏差度量 MSE、交叉熵

正确定义样本、特征和标签,是建模的第一步。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.1.6 回归任务示例

目标:预测合金屈服强度。

σ^y=f(wC,wCr,wNi,Taging,taging,)\hat{\sigma}_{y}=f(w_{\mathrm{C}},w_{\mathrm{Cr}},w_{\mathrm{Ni}},T_{\mathrm{aging}},t_{\mathrm{aging}},\cdots)

其中:

  • wCw_{\mathrm{C}}wCrw_{\mathrm{Cr}}wNiw_{\mathrm{Ni}}:元素质量分数。
  • TagingT_{\mathrm{aging}}:时效温度。
  • tagingt_{\mathrm{aging}}:时效时间。

输出是连续变量,因此属于回归问题。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.1.7 分类任务示例

目标:预测凝固后主要相类别。

c^=f(wCr,wNi,wMo,R,G,)\hat{c}=f(w_{\mathrm{Cr}},w_{\mathrm{Ni}},w_{\mathrm{Mo}},R,G,\cdots)

可能类别:

  • c=0c=0:铁素体主导。
  • c=1c=1:奥氏体主导。
  • c=2c=2:马氏体或混合组织。

输出是离散类别,因此属于分类问题。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.1.10 训练集、验证集和测试集

  • 训练集:用于拟合模型参数。
  • 验证集:用于选择模型和调参。
  • 测试集:用于最终评估泛化能力。

一般划分方式:

D=DtrainDvalDtest\mathcal{D}=\mathcal{D}_{\mathrm{train}}\cup \mathcal{D}_{\mathrm{val}}\cup \mathcal{D}_{\mathrm{test}}

并要求:

DtrainDtest=\mathcal{D}_{\mathrm{train}}\cap \mathcal{D}_{\mathrm{test}}=\varnothing

测试集必须模拟“未来未知材料”的预测场景。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.1.11 损失函数的作用

训练模型需要定义“预测错了多少”。

回归常用均方误差:

MSE=1ni=1n(yiy^i)2\mathrm{MSE}=\frac{1}{n}\sum_{i=1}^{n}(y_i-\hat{y}_i)^2

分类常用交叉熵:

L=1ni=1nk=1Kyiklog(p^ik)L=-\frac{1}{n}\sum_{i=1}^{n}\sum_{k=1}^{K}y_{ik}\log(\hat{p}_{ik})

损失函数决定模型训练时“惩罚什么”。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.1.14 Python建模流程骨架

import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.pipeline import Pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.ensemble import RandomForestRegressor
from sklearn.metrics import mean_absolute_error

df = pd.read_csv("materials_strength.csv")
X = df[["C", "Cr", "Ni", "aging_T", "aging_t"]]
y = df["yield_strength"]

X_train, X_test, y_train, y_test = train_test_split(
    X, y, test_size=0.2, random_state=0
)
model = RandomForestRegressor(random_state=0)
model.fit(X_train, y_train)
pred = model.predict(X_test)
print(mean_absolute_error(y_test, pred))
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.2 特征工程与材料描述符 △★

  • 理解材料描述符是材料对象与机器学习模型之间的桥梁。
  • 学习成分、工艺、组织、结构和谱图描述符。
  • 掌握标准化、编码、特征选择与数据泄漏防范。

特征决定模型能看到什么,模型决定如何利用这些信息。

第4章 流程 描述符 回归 分类 无监督 评估 案例

4.2.1 为什么需要特征工程

机器学习模型通常不能直接理解“Fe-18Cr-8Ni”或显微组织图像。

需要将材料对象转化为数值向量:

Materialx=[x1,x2,,xp]\mathrm{Material}\rightarrow x=[x_1,x_2,\ldots,x_p]

特征工程的目标:

  • 保留材料本质信息。
  • 降低无关噪声。
  • 使模型更容易学习规律。
  • 提高模型可解释性和泛化性。
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.2.2 材料描述符的层级

描述符类型 来源 示例 适用任务
成分描述符 化学式或质量分数 平均原子序数、混合熵 性能预测、相预测
工艺描述符 制备与热处理 温度、时间、冷却速率 工艺优化
组织描述符 显微组织 晶粒尺寸、相分数 强度、韧性预测
结构描述符 晶体结构 晶格常数、配位数 DFT数据建模
谱图描述符 XRD/EDS/EBSD 峰位、峰强、纹理 相识别、缺陷识别
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.2.3 成分描述符:从元素含量开始

对于多元合金,设第 ee 个元素的摩尔分数为 xex_e,可构造:

Zˉ=exeZe\bar{Z}=\sum_{e}x_e Z_e

ΔZ=exe(ZeZˉ)2\Delta Z=\sqrt{\sum_{e}x_e(Z_e-\bar{Z})^2}

其中:

  • ZeZ_e:元素原子序数。
  • Zˉ\bar{Z}:平均原子序数。
  • ΔZ\Delta Z:元素属性离散程度。

这种思路也可用于原子半径、电负性、价电子数等元素属性。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.2.4 混合熵描述符

高熵合金中常用构型混合熵描述成分复杂性:

ΔSmix=Re=1mxelnxe\Delta S_{\mathrm{mix}}=-R\sum_{e=1}^{m}x_e\ln x_e

其中:

  • RR:气体常数。
  • mm:元素种类数。
  • xex_e:第 ee 个元素摩尔分数。

若等摩尔成分满足 xe=1/mx_e=1/m,则:

ΔSmix=Rlnm\Delta S_{\mathrm{mix}}=R\ln m

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.2.5 工艺描述符

工艺变量常具有强烈的非线性影响。

常见工艺描述符包括:

  • 凝固冷却速率 RcoolR_{\mathrm{cool}}
  • 温度梯度 GG
  • 界面生长速度 VV
  • 热处理温度 TT 和时间 tt
  • 激光功率、扫描速度、送粉量。
  • 焊接电流、电压、热输入。
增材制造中,线能量密度常写为 $E=P/v$,但它不能完全替代真实热历史。
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.2.7 性能与单位的一致性

同一物理量在不同文献中可能使用不同单位。

变量 常见单位 统一建议
强度 MPa、GPa MPa
硬度 HV、HRC、GPa 明确量纲并避免混用
温度 K、℃ K 或 ℃,全表一致
时间 s、min、h s 或 h,记录换算
腐蚀速率 mm/y、A/cm² 按任务统一

单位不统一会造成模型学习到错误规律。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.2.9 特征标准化

标准化将特征变换为均值为 0、标准差为 1 的尺度:

z=xμsz=\frac{x-\mu}{s}

其中 μ\muss 只能由训练集计算。

适合标准化的模型:

  • 线性模型。
  • 支持向量机。
  • KNN。
  • 神经网络。

随机森林和决策树通常对单调缩放不敏感,但统一预处理仍有助于流程管理。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.2.10 特征归一化

Min-Max 归一化将特征缩放到指定区间:

x=xxminxmaxxminx'=\frac{x-x_{\min}}{x_{\max}-x_{\min}}

常见范围为 [0,1][0,1]

注意:

  • xminx_{\min}xmaxx_{\max} 应来自训练集。
  • 对异常值敏感。
  • 适用于需要固定输入范围的模型或可视化。
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.2.11 特征交互项

材料性能常由多个变量共同控制,而非单个变量独立决定。

可构造交互项:

xCrNi=wCrwNix_{\mathrm{CrNi}}=w_{\mathrm{Cr}}w_{\mathrm{Ni}}

xGT=GRcoolx_{GT}=G\cdot R_{\mathrm{cool}}

示例:

  • 合金元素之间存在协同强化。
  • 工艺参数共同决定热历史。
  • 成分与热处理共同决定析出相。

交互特征应有物理意义,不能无限制扩展。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.2.13 相关系数筛选

Pearson 相关系数用于衡量线性相关:

rxy=i=1n(xixˉ)(yiyˉ)i=1n(xixˉ)2i=1n(yiyˉ)2r_{xy}=\frac{\sum_{i=1}^{n}(x_i-\bar{x})(y_i-\bar{y})}{\sqrt{\sum_{i=1}^{n}(x_i-\bar{x})^2}\sqrt{\sum_{i=1}^{n}(y_i-\bar{y})^2}}

解释:

  • rxy1r_{xy}\approx 1:强正相关。
  • rxy1r_{xy}\approx -1:强负相关。
  • rxy0r_{xy}\approx 0:无线性相关。

相关系数只能识别线性关系,不能证明因果性。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.2.16 使用 Pipeline 防止泄漏

from sklearn.pipeline import Pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import Ridge
from sklearn.model_selection import cross_val_score

pipe = Pipeline([
    ("scaler", StandardScaler()),
    ("model", Ridge(alpha=1.0))
])

scores = cross_val_score(
    pipe, X, y, cv=5, scoring="neg_mean_absolute_error"
)
print(-scores.mean())

Pipeline 会在每个交叉验证折内独立执行标准化和训练。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.2.17 matminer 与材料描述符

matminer 是材料信息学中常用的 Python 工具之一,可从成分、结构、能带和态密度等数据生成描述符。

示例思路:

from matminer.featurizers.composition import ElementProperty
from pymatgen.core import Composition

comp = Composition("Fe0.7Ni0.3")
featurizer = ElementProperty.from_preset("magpie")
features = featurizer.featurize(comp)

自动描述符生成可以提高效率,但仍需进行物理审查与特征筛选。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.3 回归模型

  • 学习连续材料性能预测的常用模型。
  • 从线性回归过渡到岭回归,再到随机森林和支持向量回归。
  • 理解模型复杂度、正则化和非线性拟合。

回归模型回答:材料性能数值是多少?

第4章 流程 描述符 回归 分类 无监督 评估 案例

4.3.1 回归问题的定义

回归任务预测连续变量:

y^=f(x)\hat{y}=f(x)

材料案例:

  • 抗拉强度 σUTS\sigma_{\mathrm{UTS}}
  • 屈服强度 σy\sigma_y
  • 维氏硬度 HVH_{\mathrm{V}}
  • 腐蚀速率 vcorrv_{\mathrm{corr}}
  • 相变温度 TcT_{\mathrm{c}}

关键问题:如何在有限样本下获得稳定且可解释的预测?

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.3.2 线性回归模型

线性回归假设目标值是特征的线性组合:

y^=w0+j=1pwjxj\hat{y}=w_0+\sum_{j=1}^{p}w_jx_j

向量形式:

y^=Xw\hat{y}=Xw

模型优点:

  • 简单、可解释。
  • 适合作为基准模型。
  • 可观察每个特征的线性贡献。

缺点:难以表达强非线性关系。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.3.3 最小二乘估计

普通最小二乘通过最小化残差平方和确定参数:

minwi=1n(yixiTw)2\min_{w}\sum_{i=1}^{n}(y_i-x_i^{\mathsf{T}}w)^2

矩阵形式的闭式解为:

w^=(XTX)1XTy\hat{w}=(X^{\mathsf{T}}X)^{-1}X^{\mathsf{T}}y

条件:XTXX^{\mathsf{T}}X 可逆。

当特征强相关或特征数接近样本数时,普通最小二乘容易不稳定。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.3.4 线性回归的材料解释

假设:

σ^y=w0+w1wC+w2wCr+w3Taging\hat{\sigma}_{y}=w_0+w_1w_{\mathrm{C}}+w_2w_{\mathrm{Cr}}+w_3T_{\mathrm{aging}}

w1>0w_1>0,可解释为在其他变量不变时,C 含量提高与强度提高相关。

注意:

  • 系数解释依赖变量尺度。
  • 相关关系不等同于因果关系。
  • 共线性会扭曲系数解释。
  • 必须结合材料机理判断。
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.3.5 岭回归:加入正则化

岭回归在最小二乘基础上惩罚大系数:

minw[i=1n(yixiTw)2+αj=1pwj2]\min_{w}\left[\sum_{i=1}^{n}(y_i-x_i^{\mathsf{T}}w)^2+\alpha\sum_{j=1}^{p}w_j^2\right]

其中 α\alpha 控制正则化强度。

作用:

  • 降低系数波动。
  • 缓解多重共线性。
  • 提高小样本下泛化能力。

α\alpha 太大可能导致欠拟合。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.3.6 岭回归代码示例

from sklearn.linear_model import Ridge
from sklearn.pipeline import Pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.model_selection import GridSearchCV

pipe = Pipeline([
    ("scaler", StandardScaler()),
    ("ridge", Ridge())
])

param_grid = {"ridge__alpha": [0.01, 0.1, 1, 10, 100]}
search = GridSearchCV(pipe, param_grid, cv=5, scoring="neg_mean_absolute_error")
search.fit(X_train, y_train)
print(search.best_params_)
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.3.7 偏差—方差权衡

模型误差可概念性分解为:

Error=Bias2+Variance+Noise\mathrm{Error}=\mathrm{Bias}^{2}+\mathrm{Variance}+\mathrm{Noise}

解释:

  • 偏差大:模型过于简单,欠拟合。
  • 方差大:模型过于复杂,过拟合。
  • 噪声:数据本身测量误差或不可解释波动。

材料数据中噪声常来自:实验误差、批次差异、文献条件不一致。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.3.8 随机森林回归

随机森林由多棵决策树组成,通过集成降低方差:

y^=1Bb=1BTb(x)\hat{y}=\frac{1}{B}\sum_{b=1}^{B}T_b(x)

其中:

  • BB:树的数量。
  • Tb(x)T_b(x):第 bb 棵树的预测结果。

优点:

  • 可处理非线性关系。
  • 对特征尺度不敏感。
  • 可给出特征重要性。
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.3.9 决策树回归的基本思想

决策树把特征空间不断切分为子区域。

每个叶节点输出该区域样本均值:

y^Rm=1RmxiRmyi\hat{y}_{R_m}=\frac{1}{|R_m|}\sum_{x_i\in R_m}y_i

切分目标:让子区域内部性能值尽量一致。

材料解释示例:

  • wC>0.3w_{\mathrm{C}}>0.3Taging>700T_{\mathrm{aging}}>700 K 时,强度较高。
  • 当孔隙率超过阈值时,延伸率显著降低。
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.3.10 随机森林代码示例

from sklearn.ensemble import RandomForestRegressor
from sklearn.metrics import mean_absolute_error, r2_score

rf = RandomForestRegressor(
    n_estimators=300,
    max_depth=None,
    min_samples_leaf=2,
    random_state=0
)
rf.fit(X_train, y_train)
pred = rf.predict(X_test)

print("MAE:", mean_absolute_error(y_test, pred))
print("R2:", r2_score(y_test, pred))
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.3.12 支持向量回归 SVR

SVR 的核心思想:允许误差落在 ε\varepsilon 管内而不惩罚。

损失函数可表示为:

Lε(y,y^)=max(0,yy^ε)L_{\varepsilon}(y,\hat{y})=\max(0,|y-\hat{y}|-\varepsilon)

特点:

  • 适合中小样本。
  • 可用核函数处理非线性。
  • 对特征尺度敏感,通常需要标准化。
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.3.13 SVR 的核函数思想

核函数将原始空间中的非线性问题转化为高维空间中的线性问题。

常用 RBF 核:

K(xi,xj)=exp(γxixj2)K(x_i,x_j)=\exp(-\gamma\|x_i-x_j\|^2)

参数含义:

  • CC:误差惩罚强度。
  • ε\varepsilon:不敏感误差带宽。
  • γ\gamma:核函数局部性。

CCγ\gamma 过大时容易过拟合。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.3.14 SVR 代码示例

from sklearn.svm import SVR
from sklearn.pipeline import Pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.model_selection import GridSearchCV

pipe = Pipeline([
    ("scaler", StandardScaler()),
    ("svr", SVR(kernel="rbf"))
])

param_grid = {
    "svr__C": [1, 10, 100],
    "svr__gamma": [0.01, 0.1, 1],
    "svr__epsilon": [0.01, 0.1]
}
search = GridSearchCV(pipe, param_grid, cv=5, scoring="neg_mean_absolute_error")
search.fit(X_train, y_train)
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.3.15 回归模型对比

模型 优点 局限 材料应用建议
线性回归 简单可解释 难表征非线性 基准模型
岭回归 稳定、抗共线性 仍主要线性 小样本、多特征
随机森林 非线性、鲁棒 外推能力有限 性能预测常用
SVR 适合中小样本 调参敏感 小样本非线性问题
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.4 分类模型

  • 理解分类任务的概率输出和决策边界。
  • 学习逻辑回归、决策树和支持向量机。
  • 掌握混淆矩阵、准确率、精确率、召回率等指标的含义。

分类模型回答:材料属于哪一类?

第4章 流程 描述符 回归 分类 无监督 评估 案例

4.4.1 分类问题的定义

分类任务预测离散类别:

c^=f(x),c{1,2,,K}\hat{c}=f(x),\quad c\in \{1,2,\ldots,K\}

材料分类案例:

  • 奥氏体、铁素体、马氏体相组成分类。
  • 显微组织图像分类。
  • 腐蚀等级分类。
  • 缺陷类型分类。
  • 合格/不合格质量判定。
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.4.2 二分类与多分类

二分类:

y{0,1}y\in\{0,1\}

例如:材料是否发生点蚀、样品是否达标。

多分类:

y{1,2,,K}y\in\{1,2,\ldots,K\}

例如:相类别为铁素体、奥氏体、马氏体或混合组织。

分类问题不仅要给出类别,还应尽量给出置信度或概率。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.4.3 逻辑回归:分类中的线性模型

逻辑回归首先计算线性得分:

z=w0+wTxz=w_0+w^{\mathsf{T}}x

再通过 Sigmoid 函数转化为概率:

p(y=1x)=11+exp(z)p(y=1|x)=\frac{1}{1+\exp(-z)}

决策规则:

y^={1,p0.50,p<0.5\hat{y}=\begin{cases}1, & p\geq 0.5\\0, & p<0.5\end{cases}

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.4.4 逻辑回归的材料解释

示例:预测不锈钢是否以奥氏体为主。

输入特征:

  • Ni 当量。
  • Cr 当量。
  • 冷却速率。
  • N 含量。

模型输出:

pγ=p(y=γx)p_{\gamma}=p(y=\gamma|x)

解释:pγ=0.82p_{\gamma}=0.82 表示模型认为奥氏体主导的概率较高,但仍需结合相图和实验验证。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.4.5 逻辑回归代码示例

from sklearn.linear_model import LogisticRegression
from sklearn.pipeline import Pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.metrics import classification_report

pipe = Pipeline([
    ("scaler", StandardScaler()),
    ("clf", LogisticRegression(max_iter=1000))
])
pipe.fit(X_train, y_train)
pred = pipe.predict(X_test)
print(classification_report(y_test, pred))
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.4.6 混淆矩阵

二分类混淆矩阵:

实际/预测 预测正类 预测负类
实际正类 TP FN
实际负类 FP TN

材料案例:预测“是否耐蚀合格”。

  • TP:实际合格且预测合格。
  • FP:实际不合格但预测合格。
  • FN:实际合格但预测不合格。
  • TN:实际不合格且预测不合格。
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.4.7 分类指标

准确率:

Accuracy=TP+TNTP+TN+FP+FN\mathrm{Accuracy}=\frac{TP+TN}{TP+TN+FP+FN}

精确率:

Precision=TPTP+FP\mathrm{Precision}=\frac{TP}{TP+FP}

召回率:

Recall=TPTP+FN\mathrm{Recall}=\frac{TP}{TP+FN}

F1 值:

F1=2PrecisionRecallPrecision+RecallF_1=\frac{2\cdot \mathrm{Precision}\cdot \mathrm{Recall}}{\mathrm{Precision}+\mathrm{Recall}}

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.4.9 决策树分类

决策树通过一系列规则划分样本:

  • wNi>8%w_{\mathrm{Ni}}>8\%,进入右分支。
  • Rcool>103R_{\mathrm{cool}}>10^3 K/s,继续划分。
  • 叶节点给出类别。

常用划分准则:

G=1k=1Kpk2G=1-\sum_{k=1}^{K}p_k^2

其中 GG 为 Gini 不纯度,pkp_k 为节点中第 kk 类比例。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.4.10 信息熵与分类不确定性

节点信息熵为:

H=k=1Kpklog2pkH=-\sum_{k=1}^{K}p_k\log_2 p_k

解释:

  • 样本都属于同一类时,H=0H=0
  • 类别混合越均匀,HH 越大。
  • 决策树希望划分后子节点更“纯”。

熵可以看作类别混杂程度的度量。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.4.12 支持向量机分类

线性 SVM 寻找最大间隔分类超平面:

wTx+b=0w^{\mathsf{T}}x+b=0

优化思想:

minw,b12w2\min_{w,b}\frac{1}{2}\|w\|^2

并使样本尽可能满足正确分类约束。

最大间隔有助于提升泛化能力,适合中小样本分类。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.4.13 软间隔 SVM

实际材料数据可能不可完全线性分离,引入松弛变量:

minw,b,ξ12w2+Ci=1nξi\min_{w,b,\xi}\frac{1}{2}\|w\|^2+C\sum_{i=1}^{n}\xi_i

其中:

  • ξi\xi_i:允许第 ii 个样本违反间隔的程度。
  • CC:误分类惩罚强度。

CC 大:训练集拟合更强,但可能过拟合。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.4.14 SVM 分类代码示例

from sklearn.svm import SVC
from sklearn.pipeline import Pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.model_selection import GridSearchCV

pipe = Pipeline([
    ("scaler", StandardScaler()),
    ("svc", SVC(kernel="rbf", probability=True))
])
param_grid = {
    "svc__C": [0.1, 1, 10, 100],
    "svc__gamma": [0.01, 0.1, 1]
}
search = GridSearchCV(pipe, param_grid, cv=5, scoring="f1_macro")
search.fit(X_train, y_train)
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.4.16 分类模型对比

模型 优点 局限 材料应用建议
逻辑回归 可解释,输出概率 决策边界简单 基准分类模型
决策树 规则直观 易过拟合 解释工艺阈值
随机森林 稳定、非线性 外推弱 多变量分类
SVM 中小样本有效 需要标准化和调参 相分类、缺陷分类
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.5 聚类、降维与关联规则

  • 在没有明确标签时发现材料数据结构。
  • 使用聚类识别材料族群,使用降维理解高维描述符。
  • 使用关联规则发现变量组合关系。

无监督学习帮助我们先看清数据,再建立模型。

第4章 流程 描述符 回归 分类 无监督 评估 案例

4.5.2 K-means 聚类

K-means 将样本划分为 KK 个簇,使簇内平方距离最小:

minC1,,CKk=1KxiCkxiμk2\min_{C_1,\ldots,C_K}\sum_{k=1}^{K}\sum_{x_i\in C_k}\|x_i-\mu_k\|^2

其中 μk\mu_k 为第 kk 个簇的中心。

材料应用:

  • 按成分描述符合金族群。
  • 按谱图特征划分不同相结构。
  • 按工艺参数识别工艺窗口。
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.5.4 K-means 代码示例

from sklearn.cluster import KMeans
from sklearn.preprocessing import StandardScaler
from sklearn.pipeline import Pipeline

pipe = Pipeline([
    ("scaler", StandardScaler()),
    ("kmeans", KMeans(n_clusters=3, random_state=0, n_init="auto"))
])
cluster_id = pipe.fit_predict(X)
df["cluster"] = cluster_id
print(df.groupby("cluster").mean(numeric_only=True))

聚类编号本身没有物理意义,物理意义来自簇内样本的共同特征。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.5.5 主成分分析 PCA

PCA 寻找最大方差方向,将高维数据投影到低维空间。

协方差矩阵:

S=1n1XTXS=\frac{1}{n-1}X^{\mathsf{T}}X

特征值分解:

Svj=λjvjSv_j=\lambda_jv_j

其中 vjv_j 为第 jj 个主成分方向,λj\lambda_j 表示该方向方差大小。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.5.7 PCA 代码示例

from sklearn.decomposition import PCA
from sklearn.preprocessing import StandardScaler
import pandas as pd

X_scaled = StandardScaler().fit_transform(X)
pca = PCA(n_components=2)
Z = pca.fit_transform(X_scaled)

print("Explained ratio:", pca.explained_variance_ratio_)
pc_df = pd.DataFrame(Z, columns=["PC1", "PC2"])
pc_df["property"] = y.values
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.5.9 关联规则

关联规则描述变量组合之间的共现关系。

规则形式:

ABA\Rightarrow B

支持度:

support(AB)=P(AB)\mathrm{support}(A\Rightarrow B)=P(A\cap B)

置信度:

confidence(AB)=P(BA)\mathrm{confidence}(A\Rightarrow B)=P(B|A)

提升度:

lift(AB)=P(AB)P(A)P(B)\mathrm{lift}(A\Rightarrow B)=\frac{P(A\cap B)}{P(A)P(B)}

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.5.10 关联规则材料案例

规则示例:

{wCr>12%, wNi>8%}{high corrosion resistance}\{w_{\mathrm{Cr}}>12\%,\ w_{\mathrm{Ni}}>8\%\}\Rightarrow\{\mathrm{high\ corrosion\ resistance}\}

解释时需要注意:

  • 规则反映统计共现,不等于因果机制。
  • 需要检查样本数量和来源偏差。
  • 连续变量需要先离散化。
  • 高提升度规则可能来自极少数样本。
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.6 模型评估:误差、泛化、交叉验证 △★

  • 理解训练误差、验证误差和测试误差。
  • 掌握回归、分类和聚类评估指标。
  • 学会使用交叉验证评估小样本材料模型。

没有可靠评估的模型,不应进入材料设计决策。

第4章 流程 描述符 回归 分类 无监督 评估 案例

4.6.2 回归评估指标:MAE

平均绝对误差:

MAE=1ni=1nyiy^i\mathrm{MAE}=\frac{1}{n}\sum_{i=1}^{n}|y_i-\hat{y}_i|

特点:

  • 单位与目标变量一致。
  • 对异常值相对不如 MSE 敏感。
  • 易于工程解释。

示例:强度预测 MAE 为 30 MPa,可直接与实验误差或工程容差比较。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.6.3 回归评估指标:RMSE

均方根误差:

RMSE=1ni=1n(yiy^i)2\mathrm{RMSE}=\sqrt{\frac{1}{n}\sum_{i=1}^{n}(y_i-\hat{y}_i)^2}

特点:

  • 对大误差更敏感。
  • 适合强调严重误判的任务。
  • 单位与目标变量一致。

若 RMSE 远大于 MAE,说明可能存在少数大误差样本。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.6.4 回归评估指标:R2R^2

决定系数:

R2=1i=1n(yiy^i)2i=1n(yiyˉ)2R^2=1-\frac{\sum_{i=1}^{n}(y_i-\hat{y}_i)^2}{\sum_{i=1}^{n}(y_i-\bar{y})^2}

解释:

  • R2=1R^2=1:完美预测。
  • R2=0R^2=0:与预测均值相当。
  • R2<0R^2<0:比预测均值更差。

R2R^2 受目标变量分布影响,应与 MAE、RMSE 一起报告。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.6.5 分类评估指标回顾

分类评估应根据任务风险选择指标。

指标 适用场景 风险关注
Accuracy 类别较均衡 总体正确率
Precision 误报代价高 减少 FP
Recall 漏报代价高 减少 FN
F1 类别不平衡 平衡 Precision 与 Recall
ROC-AUC 二分类排序能力 阈值变化下表现
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.6.6 留出法评估

将数据划分为训练集和测试集:

D=DtrainDtest\mathcal{D}=\mathcal{D}_{\mathrm{train}}\cup\mathcal{D}_{\mathrm{test}}

优点:

  • 简单直接。
  • 计算成本低。

缺点:

  • 小样本下结果对随机划分敏感。
  • 测试集过小导致评估不稳定。

材料小样本任务通常需要交叉验证。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.6.7 K 折交叉验证

K 折交叉验证将数据划分为 KK 个子集。

每次使用一个子集测试,其余子集训练:

CV=1Kk=1KMk\mathrm{CV}=\frac{1}{K}\sum_{k=1}^{K}M_k

其中 MkM_k 为第 kk 折的评价指标。

优点:

  • 更充分利用有限数据。
  • 可以估计模型性能波动。
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.6.8 交叉验证代码示例

from sklearn.model_selection import KFold, cross_validate
from sklearn.ensemble import RandomForestRegressor

cv = KFold(n_splits=5, shuffle=True, random_state=0)
model = RandomForestRegressor(random_state=0)

result = cross_validate(
    model, X, y, cv=cv,
    scoring=["neg_mean_absolute_error", "r2"],
    return_train_score=True
)
print(-result["test_neg_mean_absolute_error"].mean())
print(result["test_r2"].mean())
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.6.9 交叉验证中的材料数据分组

普通随机 K 折可能不适合所有材料数据。

应考虑:

  • 同一论文数据是否应放在同一折?
  • 同一实验批次是否存在强相关?
  • 同一材料体系是否重复出现?
  • 目标是否是跨体系预测?

可使用 GroupKFold:

from sklearn.model_selection import GroupKFold
cv = GroupKFold(n_splits=5)

分组交叉验证更接近真实外推场景。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.6.11 网格搜索示例

from sklearn.model_selection import GridSearchCV
from sklearn.ensemble import RandomForestRegressor

param_grid = {
    "n_estimators": [100, 300, 500],
    "max_depth": [None, 5, 10],
    "min_samples_leaf": [1, 2, 5]
}
search = GridSearchCV(
    RandomForestRegressor(random_state=0),
    param_grid=param_grid,
    cv=5,
    scoring="neg_mean_absolute_error"
)
search.fit(X_train, y_train)
print(search.best_params_)
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.6.13 残差分析

残差定义为:

ei=yiy^ie_i=y_i-\hat{y}_i

残差分析关注:

  • 残差是否围绕 0 随机分布?
  • 是否在高强度区域系统低估?
  • 是否某一材料体系误差特别大?
  • 是否存在明显异常样本?

残差图常比单一平均误差更能揭示模型问题。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.6.15 预测区间与不确定性

点预测不足以支撑材料决策。

更合理的表达形式:

y^±u\hat{y}\pm u

其中 uu 表示预测不确定性。

不确定性来源:

  • 数据噪声。
  • 模型参数不确定性。
  • 样本分布外预测。
  • 特征缺失或测量误差。

在材料筛选中,高预测值但高不确定性的候选样本应谨慎处理。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.6.17 常见不规范表述

应避免:

  • “模型准确率达到 99%,说明模型可靠。”
  • “训练集 R2=0.98R^2=0.98,证明预测能力强。”
  • “随机森林效果最好,因此该材料机制由特征重要性决定。”
  • “样本只有 30 个,但深度学习模型效果很好。”

建议改写:

  • “在 5 折交叉验证下,MAE 为 35±835\pm 8 MPa,适用于当前成分范围内的初步筛选。”
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.7 材料性能预测案例

  • 以强度、硬度、相组成和腐蚀性能为例。
  • 展示从数据表到模型评估的完整路径。
  • 形成章节作业:完成一个小型材料性能预测任务。

案例不是展示算法,而是训练完整建模思维。

第4章 流程 描述符 回归 分类 无监督 评估 案例

4.7.1 案例一:强度预测

任务:预测合金屈服强度或抗拉强度。

输入特征:

  • 化学成分:C、Cr、Ni、Mo、Mn 等。
  • 工艺参数:热处理温度、时间、冷却速率。
  • 组织参数:晶粒尺寸、相分数、析出相尺寸。

输出:

σ^y=f(x)\hat{\sigma}_{y}=f(x)

评价:MAE、RMSE、R2R^2,并检查高强度区域残差。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.7.2 强度预测的特征选择

可能有效的材料描述符:

  • 固溶强化相关:原子半径差、电负性差。
  • 析出强化相关:时效温度、时效时间。
  • 细晶强化相关:晶粒尺寸 dd
  • 相组成相关:奥氏体/铁素体/马氏体体积分数。

Hall-Petch 关系提示:

σy=σ0+kd1/2\sigma_y=\sigma_0+kd^{-1/2}

因此可加入 d1/2d^{-1/2} 作为特征。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.7.3 强度预测代码骨架

features = [
    "C", "Cr", "Ni", "Mo", "aging_T", "aging_t",
    "grain_size", "phase_fraction"
]
X = df[features].copy()
X["grain_size_inv_sqrt"] = 1.0 / (X["grain_size"] ** 0.5)
y = df["yield_strength"]

model = RandomForestRegressor(
    n_estimators=300, min_samples_leaf=2, random_state=0
)
model.fit(X_train, y_train)

将机理启发特征加入机器学习流程,可提高模型可解释性。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.7.5 硬度预测的单位与条件

硬度数据的可靠建模要求记录:

项目 需要记录的内容
硬度类型 HV、HRC、HB、纳米硬度
载荷 例如 HV0.2、HV1、HV10
测试位置 基体、焊缝、热影响区
样品状态 铸态、轧制态、时效态
重复次数 平均值与标准差

如果测试条件混杂,模型误差可能来自数据定义不一致。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.7.6 案例三:相组成预测

任务:预测材料最终相类别或相分数。

类别预测:

c^{α,γ,M,mixed}\hat{c}\in\{\alpha,\gamma,M,\mathrm{mixed}\}

相分数预测:

f^γ=f(x),0f^γ1\hat{f}_{\gamma}=f(x),\quad 0\leq \hat{f}_{\gamma}\leq 1

输入特征:成分、冷却速率、温度梯度、热处理路径。

类别模型适合粗略判断,相分数回归更适合定量组织预测。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.7.8 相分类模型代码骨架

from sklearn.pipeline import Pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.svm import SVC
from sklearn.metrics import confusion_matrix, classification_report

X = df[["Cr_eq", "Ni_eq", "cooling_rate", "G", "V"]]
y = df["phase_class"]

pipe = Pipeline([
    ("scaler", StandardScaler()),
    ("svc", SVC(kernel="rbf", class_weight="balanced"))
])
pipe.fit(X_train, y_train)
pred = pipe.predict(X_test)
print(confusion_matrix(y_test, pred))
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.7.11 腐蚀速率转换示意

若使用电化学腐蚀电流密度,可通过经验公式换算腐蚀速率:

vcorr=KicorrEWρv_{\mathrm{corr}}=K\frac{i_{\mathrm{corr}}EW}{\rho}

其中:

  • KK:单位换算常数。
  • EWEW:当量重量。
  • ρ\rho:密度。

建模前必须确认目标变量定义一致,否则不同来源数据不可直接合并。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.7.13 综合案例代码框架

from sklearn.model_selection import train_test_split, cross_validate
from sklearn.pipeline import Pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.ensemble import RandomForestRegressor

features = ["C", "Cr", "Ni", "Mo", "aging_T", "aging_t", "grain_size"]
X = df[features]
y = df["yield_strength"]

X_train, X_test, y_train, y_test = train_test_split(
    X, y, test_size=0.2, random_state=42
)
model = RandomForestRegressor(n_estimators=300, random_state=42)
model.fit(X_train, y_train)
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.7.14 结果解释模板

建议按以下结构解释模型结果:

  • 数据范围:材料体系、样本量、成分与工艺范围。
  • 模型表现:MAE、RMSE、R2R^2 或分类指标。
  • 稳定性:交叉验证均值和标准差。
  • 误差来源:高误差样本、异常工艺、数据噪声。
  • 特征贡献:与材料机理是否一致。
  • 适用边界:不能外推到哪些材料体系。
  • 后续验证:推荐实验或计算验证方案。
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.7.15 章节综合图景

机器学习与材料性能预测的逻辑链条:

DataDescriptorModelValidationDecision\mathrm{Data}\rightarrow \mathrm{Descriptor}\rightarrow \mathrm{Model}\rightarrow \mathrm{Validation}\rightarrow \mathrm{Decision}

对应材料科学过程:

CompositionProcessingMicrostructureProperty\mathrm{Composition}\rightarrow \mathrm{Processing}\rightarrow \mathrm{Microstructure}\rightarrow \mathrm{Property}

可靠模型不是只会预测,而是能说明数据来源、适用边界和误差风险。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

4.7.17 思考题

  1. 为什么材料机器学习不能只报告训练集精度?
  2. 成分描述符与组织描述符各有什么优势和局限?
  3. 若样本只有 50 个,为什么不应盲目使用复杂深度模型?
  4. 对强度预测任务,MAE 和 R2R^2 分别说明什么?
  5. 如果训练数据只包含低 Cr 合金,模型能否用于高 Cr 合金预测?为什么?

请用“数据范围—模型假设—误差来源—材料机理”的逻辑回答。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

作业参考代码骨架

import numpy as np
import pandas as pd
from sklearn.model_selection import cross_validate, KFold
from sklearn.pipeline import Pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import Ridge
from sklearn.ensemble import RandomForestRegressor

rng = np.random.default_rng(0)
n = 120
df = pd.DataFrame({
    "C": rng.uniform(0.05, 0.8, n),
    "Cr": rng.uniform(0.0, 18.0, n),
    "Ni": rng.uniform(0.0, 12.0, n),
    "aging_T": rng.uniform(450, 750, n),
    "aging_t": rng.uniform(0.5, 20.0, n)
})
df["strength"] = 300 + 250*df["C"] + 5*df["Cr"] + 3*df["Ni"] \
    + 0.15*df["aging_T"] - 0.8*df["aging_t"] + rng.normal(0, 25, n)
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

作业参考代码骨架:模型比较

X = df[["C", "Cr", "Ni", "aging_T", "aging_t"]]
y = df["strength"]
cv = KFold(n_splits=5, shuffle=True, random_state=0)

models = {
    "Ridge": Pipeline([
        ("scaler", StandardScaler()),
        ("model", Ridge(alpha=1.0))
    ]),
    "RandomForest": RandomForestRegressor(
        n_estimators=300, min_samples_leaf=2, random_state=0
    )
}

for name, model in models.items():
    res = cross_validate(model, X, y, cv=cv,
                         scoring=["neg_mean_absolute_error", "r2"])
    print(name, -res["test_neg_mean_absolute_error"].mean(),
          res["test_r2"].mean())
《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

参考资料与延伸阅读

  • scikit-learn User Guide:监督学习、无监督学习、模型选择与评估。
  • scikit-learn Preprocessing:特征缩放、标准化与数据预处理。
  • scikit-learn Cross-validation:交叉验证评估模型泛化能力。
  • scikit-learn Metrics:回归、分类与聚类评价指标。
  • matminer:材料数据挖掘与描述符生成工具。

推荐学习顺序:先掌握数据划分和评估,再学习更复杂模型。

《人工智能与大数据》 | 第4章
第4章 流程 描述符 回归 分类 无监督 评估 案例

谢谢

下一章:深度学习、多模态AI与显微组织识别

从表格数据走向图像、谱图和多模态材料数据。