JMP数据分析论坛

标题: 【案例】神经网络建模 + 可视化分析 = 提效增质的利器! [打印本页]

作者: admin    时间: 2020-6-9 14:41
标题: 【案例】神经网络建模 + 可视化分析 = 提效增质的利器!
在电子制造业企业,由于器件尺寸比较小、生产周期比较短等特征,设备及产品的异常诊断能力变得非常重要,其能力的强弱甚至在某种程度上成为企业竞争力的一部分。如何快速、高效地识别这些异常,如何利用计算机系统辅助人类做好提前预警和分析,成为企业提效增质、提高良率不可或缺的一项重要竞争优势。
今天我们以高科技电子行业的一个案例为例,来看看如何通过强大的神经网络建模+独特的可视化分析,帮助数据分析人员大幅减少异常芯片的识别与侦测时间,从而从根本上为企业提效增质。本文作者衮雪,JMP特约专栏作者,数据分析爱好者。如果你也想成为JMP合作专栏作者,或者想投稿,欢迎在JMP微信公众号对话框私信小编,或发送邮件至 jmpmarketing@sas.com 和小编聊聊哦~

为什么可续的数据分析如此重要?

众所周知,质量对于公司来说意味着制造成本、出货周期和品牌价值。所以几乎每家企业都把质量看作重中之重。那么如何改善企业的基准质量水平则是一项艰巨的任务。
[attach]4586[/attach]
以上是常见的电子类企业的典型生产步骤,其中:

其中,不同颜色代表着最终测试检测值的大小。红色最大,依次递减,蓝色最小。
从图上轻松看到,晶圆右下方蓝色部分的检测值偏低。这意味着什么呢?意味着在晶圆生长的时候这一区域有异常,需要尽快调查及解决。这样工程师就可以马上着手针对这类有问题的芯片进行快速跟进了。那么,具体该如何开展实施呢?我们以一个案例来说明。

案例分析—快速识别晶圆缺陷
某电子企业的工程师在最终测试阶段收集到了1559个芯片的缺陷数据,想分析其中某一项缺陷的比率随着位置的变化是否呈现规律。如果某一位置的缺陷率为‘0’,代表在这个位置没有出现过这项缺陷。如果在这个位置的缺陷率很高,则表明,次品集中在这个位置。
通过这种缺陷图形的寻找,最终为前道诸多工序建立另一种质量侦测手段或者指标,可以作为整体质量提升的突破。

在数据表中,LocX和LocY列分别是行、列坐标值,数值类型为名义值。最后一列为缺陷率,即在过去一段时间内某一位置出现缺陷的比率。

为了更好地判断问题,项目团队最终选择了神经网络算法。原因有以下几点:1项目需要算法能够从原始数据中自动发现需要检测的特征。2神经网络的算法一般都有多个层次,每一个层次做一次变换,这样可以有多次机会抓取不同特征。3通常来说,用来做训练的数据量越多,可以更好地提高其准确性。

一图胜千言!接下来我们看看如何在JMP中一步步实施分析。

首先,将数据导入JMP,把收集到的位置缺陷率转换为数据值并通过图形生成器来呈现。打开JMP菜单:分析(Analyze) -> 预测建模(Predictive modeling) -> 神经(Neural),把需要观测的缺陷率放在“Y,Response”,把Loc X和Loc Y放入“X,Factor”:
进入模型配置窗口,按照以下参数输入。本例从默认的神经网络模型开始,逐步增加更复杂的模型有两个隐藏层和其他的激活函数。最终选定以下配置(截图所示)。

在fitting option部分,告诉JMP重复多少次模型拟合算法。最终JMP会选择具有最佳验证统计量的迭代作为最终模型。本文最终采用10.

点击Model左边红色小箭头,选择保存公式(Save Formulas),主要是为了存储变换之后的数值以备用。
这样经过行列转换后,得到以下新的数据表:
如果用图形来简单说明转换过程的话,就如下图所示:
接下来,应用JMP 独有的“图形生成器(Graph Builder)”开展分析。这里我们将LocX放到横轴,LocY放到纵轴,Transform Value放到右上角的Color中,点击Graph Builder下面的红色小箭头,选择Local Data Filter:[attach]4587[/attach]


在Local Data Filter下选择Label:
然后,再选择红色小箭头——“Animation”,得到以下动态图形:
[attach]4588[/attach]

这个动图主要展示了JMP在内部运算过程中是如何逐一扫描整个wafer,最终找到最优解的过程。其中H1_1是指第一个隐藏层的第一个节点,以此类推。

这就是在模型构建层面我们的思路和策略。那么,具体到实际项目的应用层面,应该怎么部署和分析呢?我们来继续探讨。


落地应用:项目部署及成效
按照上面JMP生成的模型,接下来我们就可以部署在应用层面。

在部署层面,实际上我们只需要建立一个ranking model,即排序模型。这个模型不需要保证每一个计算结果都非常精确,最重要的是能够在多个wafer map中抓到最显著的图形即可。由于数据量较大以及服务器是Linux系统(相对稳定),故而采用python程序从数据库中提取数据,根据以上神经网络方法把有问题的wafer map按照RSquare排序。


之所以选择RSquare排序,是想按照模型的显著性来代表是否抓到了pattern。即模型越显著,代表着抓到pattern的可能性越大。关于Generalized R-Square如何计算(截图所示),可参考之前我们推送的文章“我的智造我做主-一个案例带你看明白神经网络如何助力企业提速增效”。

举例如下,这里有以下7类次品(从Defect A到Defect G),每一行代表wafer map上X,Y坐标,以及在相应坐标位置上不同次品类型分别累计(某一周)的缺陷率。

按照上一节介绍的算法以及RSquare排序如下,这时我们发现Defect C和Defect A是所有类型的次品中值最高的(如果定义阈值为>0.7的话,当然阈值可以根据案例自己定义)。
那么经过Graph Builder 生成的Defect C和Defect A次品图形确实非常值得研究,而值最低的Defect D,经过Graph Builder画出wafer map后图形确实不明显。

Defect C(RSquare值高)-右侧边缘图形:
[attach]4592[/attach]
[attach]4589[/attach]

Defect A(RSsquare值高)-中心右上方图形:

Defect D(RSsquare值低)-几乎看不出图形
[attach]4591[/attach]


以下是系统架构示意图:
[attach]4592[/attach]

需要注意的是,人工根据样本数据,通过JMP计算,需要每个月为模型更新第一层和第二层layer中的节点数(比如对于新出现的pattern,当前配置是否可以识别到,需要考虑调整节点数等),以便使模型的计算更加有效。

通过这个方法,经实践证明,企业中每名数据分析人员平均每周减少60%的图形识别时间,而且异常图形平均侦测时间累计较以前缩短70%,为企业质量管控整体水平提升做出了巨大的贡献。


思考:你的企业是否遇到同样问题?
通过上述实战案例我们可以看到,产品的良率侦测仅仅依靠人工不仅耗时耗力,还容易出现错误、漏检等情况,而重要的质量风险却往往隐藏在某些人工无法识别的地方。

这就好比一座冰山,人们往往关注露出水面部分的问题,但是水面以下的部分往往由于各种原因没有办法看到。借助于先进的计算机系统和技术,可以很好地解决问题:




作者: newhjh    时间: 2020-6-11 18:01
这个案例还是比较形象的。

作者: admin    时间: 2020-6-13 13:14
newhjh 发表于 2020-6-11 18:01
这个案例还是比较形象的。

这个是真实案例。作者讲述了前端和后端完整的一个过程,以及最后的部署实施。希望对大家都有参考意义~




欢迎光临 JMP数据分析论坛 (http://www.jmpforum.net/) X3