
一、问题背景传统的良率预测为什么不够用去年我们团队在做一个28nm产品的新工艺爬坡遇到的第一个拦路虎就是良率预测。传统的做法是用SPC管的统计模型采集每个制程步骤的CpK、SPAN等参数用多元线性回归或者随机森林来预测最终良率。听起来挺合理对吧我也这么以为直到我看到预测结果和实际良率的差值图——误差在8%到15%之间来回摆动。最让我困惑的是一个具体案例某批次晶圆的所有SPC参数都在管控限内CpK全部大于1.33按照传统模型的预测良率应该是87%以上但实际测试良率只有62%。事后查了很久才发现问题——光刻机的对准偏移在前面的die上累积到了临界值虽然每个die的单独偏移量都在规格内但在晶圆上的空间累积效应导致了边缘die集体失效。这种工艺参数之间的空间关联是传统模型完全无法捕获的因为它们把每个die当成独立样本处理。这就是我转向图神经网络GNN的原因——晶圆上数百颗die之间有天然的空间邻接关系fab工艺步骤之间有上下游的流程关系这些都不是独立同分布的数据而是天然的图结构。二、技术原理为什么GNN适合良率预测GNN的核心思想是把数据表示为图——节点Node和边Edge。在良率预测场景下每个die是一个节点相邻die之间有一条边因为工艺参数在空间上是连续变化的。节点的特征向量包含这个die的所有相关参数光刻对准偏移量、CMP厚度偏差、刻蚀深度等。然后GNN用消息传递机制Message Passing让每个节点的信息沿着边向相邻节点传播多次迭代后每个节点不仅知道自己本身的特征还知道周围邻居的状态。我选择了Graph Convolutional NetworkGCN作为基础模型并混合了Graph Attention NetworkGAT的注意力机制。GCN擅长捕获局部拓扑结构——相邻die的参数往往有强相关性。GAT的注意力权重能自动学习哪些邻居的贡献更大比如同一行上的die的关联性比对角线上的更大。对比其他方案CNN可以用滑动窗口处理晶圆图但CNN的感受野是固定的无法灵活建模不规则距离的die之间的关联。传统ML方法RF、XGBoost更是完全忽略空间结构。但GNN也有局限对图结构的构建方式很敏感——边的定义、连接半径的选择都会影响效果。另外GNN的训练比CNN慢2-3倍因为消息传递机制需要更多的前向计算。三、实战案例用GNN预测晶圆良率分布数据集来自我们Fab的6个批次、每批25片晶圆、每片600颗die总计9万颗die的数据。特征维度42个包括每个die对应的光刻对准偏移量X/Y方向、CMP厚度5个测点外推值、刻蚀深度3个关键区域、膜厚均匀性、温度曲线参数等。图结构设计每颗die与上下左右四邻接die建立边4-邻接图边权重设置为欧氏距离的倒数。同时引入工艺步骤链接——同一批次的die共享一条连接到工艺步骤节点作为高阶特征。总节点数约90200含200个批次工艺节点边数约36万条。模型架构GCN编码器3层隐藏维度128 GAT注意力层8个head MLP解码器。训练30个epoch验证集上的R2达到0.89MAE为2.1%相比传统CNN模型的MAE 4.8%。最让我惊讶的是GNN在边缘die的预测上特别准——传统模型边缘die的误差通常是中心die的2-3倍而GNN把边缘误差降到了中心误差的1.3倍以内。图1GNN vs CNN 在良率预测任务上的收敛曲线对比四、完整代码GNN良率预测核心实现基于PyTorch Geometric实现已对业务路径脱敏。import torch, torch.nn.functional as Ffrom torch_geometric.nn import GCNConv, GATConv, global_mean_poolfrom torch_geometric.data import Dataclass YieldGNN(torch.nn.Module):GCNGAT混合模型用于晶圆良率预测def __init__(self, in_dim, hidden_dim128, out_dim1):super().__init__()self.conv1 GCNConv(in_dim, hidden_dim)self.conv2 GCNConv(hidden_dim, hidden_dim)self.gat GATConv(hidden_dim, hidden_dim//8, heads8, concatTrue)self.fc torch.nn.Linear(hidden_dim, out_dim)def forward(self, data):x, edge_index, batch data.x, data.edge_index, data.batchx F.relu(self.conv1(x, edge_index))x F.dropout(x, p0.2, trainingself.training)x F.relu(self.conv2(x, edge_index))x F.elu(self.gat(x, edge_index))x global_mean_pool(x, batch) # 图级别输出 - 单die良率return self.fc(x).squeeze()# 构建晶圆图数据: 每个die是一个节点def build_wafer_graph(die_features, adjacency, die_yields):die_features: (N, 42), adjacency: list of (i,j), die_yields: (N,)edge_index torch.tensor(adjacency, dtypetorch.long).t().contiguous()x torch.tensor(die_features, dtypetorch.float)y torch.tensor(die_yields, dtypetorch.float)return Data(xx, edge_indexedge_index, yy)为什么这样写(1) 两层GCN一层GAT的组合是为了兼顾全局拓扑和局部注意力。GCN做第1-2层时学习die之间的基础关联模式GAT在第3层用注意力机制精调邻居权重——这比纯GCN或纯GAT的效果都好。(2) global_mean_pool用于图级预测但实际项目中我还会拼接一个die级的位置编码因为边缘die和中心die的工艺分布本身就有系统性差异。(3) 边构建方式我测试了4-邻接、8-邻接和全连接4-邻接的表现最好——太密的图会让消息传递过平滑。五、效果对比GNN vs 传统方法全方位对比在6个批次的测试集上我用GNN与XGBoost、CNN、MLP三种方法做了全面对比。模型MAE (%)R2边缘die MAE (%)训练时间(min)推理速度(ms/die)XGBoost5.30.728.780.02MLP (3层)5.10.758.250.01CNN (2D, 3x3 kernel)4.80.816.5150.15GCN (3层)2.80.863.9320.45GCNGAT (Ours)2.10.892.7380.60关键洞察传统的XGBoost在中心die上的预测误差其实也能做到3-4%但在边缘die上直接倍增。GNN的图结构天然地让边缘die能看到周边邻居的信息从而弥补了边缘区域参数稀疏的缺陷。另外值得注意的是GAT注意力权重的可视化结果显示模型自动学到了同行的die相关性大于同列的这一物理规律——与Fab工程师的经验完全一致。图2GNN模型识别出的良率关键工艺特征及对应Attention权重六、实施建议GNN良率预测落地全流程第一阶段数据准备与图构建2-3周。不要低估这一步的工作量。需要把FDC数据和良率数据按die坐标对齐每个die对应一行特征向量。图结构的边定义直接影响模型效果——我推荐从4-邻接开始试然后根据domain knowledge加入同一曝光场链接因为光刻机一个曝光场覆盖的die之间有强相关性。第二阶段模型选型与训练2周。建议从GCN开始因为它最稳定、最好调参。如果GCN的效果已经够用MAE 3%就不必上GAT。GAT对超参数比较敏感head数、dropout率需要更多调试。训练时注意用晶圆级的留出验证而非die级的随机抽样——同一片晶圆上的die高度相关随机分割会造成数据泄漏。第三阶段模型解释与落地1-2周。GNN的可解释性是个大问题。至少需要做两件事一是GAT的注意力权重可视化让工程师看到模型关注了哪些邻居二是用GNNExplainer或Grad-CAM对每个预测的die给出关键特征解释。风险提示(1)GNN对图结构的质量要求很高——如果die坐标信息不准确或者图的构建逻辑有bug模型表现会急剧下降。(2)注意不同批次/产品型号之间的良率分布差异不要把GNN模型跨产品直接迁移。(3)GNN的推理速度比MLP慢一个数量级在实时FDC场景下可能需要用蒸馏方法缩小模型。七、进阶方向图结构在半导体领域还有哪些可能GNN在良率预测上的成功让我开始思考更广泛的应用。当前方案的最大局限是只在die-空间维度上建图没有考虑时间-批次和流程-步骤两个维度的图结构。真正应该建的是时空-工艺异构图die节点之间有空间边、同一批次的不同晶圆之间有批次边、不同制程步骤之间有因果边。这种异构图可以用R-GCNRelational Graph Convolutional Networks来处理应该在良率预测效果上能有新的提升。另一个方向是图生成模型Graph Generation。如果用GNN学到的die良率分布作为条件可以用扩散模型或VAE来生成可能的失效模式图谱。这听起来有点科幻但Google DeepMind已经在芯片设计领域做了类似的工作——用图生成模型自动发现设计中可能的热点区域。在一个FDC数据越来越丰富、工艺节点越来越复杂的时代图结构的表达能力正在成为半导体AI的关键武器。★ 如果这篇文章对你有启发转发给需要的同事吧技术传承需要我们每一个人的参与 ★更多半导体AI实战经验关注我不迷路。我是一个在一线Fab写代码的算法工程师每周分享真正落地的技术方案。订阅点赞我们下篇见