电子科技大学教授周涛:如何做工业生产中的缺陷检测

责任编辑:田小梦 2018.10.18 11:45 来源:通信世界全媒体

通信世界网消息(CWW)10月18日,以“实体融合新动能,数字经济新发展”为主题的“2018第五届中国国际大数据大会”,在京开幕。本届大会聚焦我国大数据产业关注的热点话题,推动数字化经济的创新合作。电子科技大学教授、大数据研究中心主任周涛,带来《工业大数据创新实践》的主题演讲。

演讲全文如下:

周涛:谢谢郑老师,非常荣幸今天能够在郑老师担任主持的会上发言,郑老师是培养和引领了中国整一代计算机的研究人员。

我们电子科大核心做一些关键算法和数据层面的研究,但是同时我们也在产业方面做了一些实践,譬如我们在北京就有做政府大数据的,我们和国家数据中心联合成立了电子科大北京分中心,并且在这个地方创立了国信优易。

今天主要给大家讲的是一个工业大数据方面的工作。简单而言,我们讲工业4.0,其实经历了四个阶段:

第一个阶段机械化。

第二个阶段自动化。

第三个阶段信息化。

第四个阶段智能化。

今天详细讲一个问题,我们怎么做工业生产中的缺陷检测?

自动化的检测,实际上是蛮简单的事,基本在工业生产中,在生产的不同环节,在最后环节,也有可能在中间环节,我们会发现生产的元器件出现问题,大部分这些检测都是基于光学进行检测。但是都是通过人用肉眼来看。但是现在我们尽可能想用自动和的办法来检测。目前,自动化的检测方法,可以取代80%甚至更多的人的检测。。

以前检测的方法就是我们看到左边这个,100%人工看的,不管是在最终还是在过程中,现在我们是希望用模型,用机器学习进行判断,其中有一部分机器学习判断不了,我们人工来判断。

在缺陷检测中存在几个问题。首先我们要对缺陷的类型进行分类。一般来说一个元器件,它出现缺陷不是一类,它可能有几百种缺陷,我们不仅说它好不好,还要说它属于哪种缺陷?我们还要判断这个缺陷位置在哪?多大的多小?同时还要对我的样本进行管理。与此同时,还要能够进行自动化的监测预警等等,这些都是目前我们需要做的。

这是一些比较典型的案例,这些缺陷以前是需要人肉眼来看,这个是重庆的一个半导体,大家可以看到,下面这个图的缺陷,也许你们坐的比较近的还能看到这个缺陷,但是上面这个缺陷,我相信肉眼不可能看到。有些缺陷我们知道它的原理,比如说成都的这个厂,我们知道这个缺陷是缺角,或者有颗粒。

一般,大家看到这个问题,一般而言就会想,这就是一个深度学习的图像分类问题,但实际上不是这么简单,不是用简单的一些数据包就能解决的问题。因为它面临着很多比较难的、核心的待解决的一些算法问题。

第一个问题,不同类型的缺陷样本,它的数量高度不平衡,比如说左边这些图,我们大概是在500万的片子里面,这个缺陷比较多,它总的不良率20%左右。最多的缺陷有8万个样本,但是有不到一万,甚至还有的就是几百,这就是不同类型的缺陷,它样本可能不一样。那这种小类型,很小的缺陷就很难被判断出来。

第二个问题,同一类别的缺陷,这样的样本数量不均衡,因为绝大部分还是好的,所以大家看到我们右边蓝色的部分,有缺陷的样本不超过总数的1%,75%的缺陷里面有缺陷的样本,都不会总量的1%。所以绝大部分情况下,我们的正负样本是高度不均衡的。

第三个问题,缺陷尺寸变化大。我们看到最小的检测缺陷大概是5×5,就是25个像素,最大的我们检测到的缺陷,它可以覆盖到一千多个,中间差4万多倍,所以它的缺陷可能是百万像素量级的,也有可能是十几万像素量级的。

第四个问题,无法通过简单的图像特征区分缺陷类别。比如说右边那个图很大看不清楚,都是一个黑点,它的局部特征是一样的,但是我们要看纹理。这是和大家比较熟悉的,卷积神经网络正常相比是有些难度的。

这些问题当然是可以解决的,我简单说一下解决这些问题的核心方法。因为你们不完全是做管理性工作。第一个问题是,我们怎么去解决这个缺陷样本分布不均呢?首先,我们不再用同等规模大小的框,第二,我的框不再是一个方框,我可能是一个复杂的多边形结构。第三,我不是简单的从右上角到三上角平滑的过度。

我们这个模型不断的微调,我必须要知道某一条生产线,比如说这个生产线,这个加工工艺是刻时,它可能出现缺陷的类型就十几种,这个你要对每个阶段加工什么东西,用什么工具,在哪条生产线上判断?这个需要大量数据的验证。

在有了这些之后,我们就能把后面第二阶段的学习,拆成按生产工艺和加工类型来做。从在局部来看,它的缺陷样本和不均匀性就会下降,并且使得后面学习速度很快,学习到一定程度再返回过去,改变原来的大格局。

第二类比较简单的,就是正负样本分配不均,大家看我把它画成网格,这个时候我们怎么做呢?大家回忆一下我们本科的时候,或者研究生一年级的时候,有一个叫代价区县,我把一个东西从0分到1和1分到0它的代价是不一样的。比如说一个健康人,我们把健康人判断成病人,这个代价是小的,因为他做过一次检查,但是我把一个病人看作是健康的,这个代价比较大。

但是,我们现在用同样的思路,但不用这个方法。原来我们看蓝色那条线,一般我们做损失函数,它尾部绝大多数增量占比比较大,所以应该是占比99%以上,所以说它尾部这部分下面的面积,实际上很大。因为这个原因,所以我们要改变损失函数,要尽量把尾部压平,压到外部这条线上,使尾部的缺陷缩小。

第三类就是我们刚才讲的,怎么样解决有4、5万倍尺度差异的缺陷,有的是十几万像素,有的是百万像素。我们可以做一个类似金字塔的一个结构,但是计算量特别大。在你做卷积的时候,多加一些附加的计算,把不同尺度的特征再算出来。所以我们在做缺陷发现的时候,就不再做图像的缺陷发现,而是做特征的缺陷发现,这样我们可以很快解决这个问题。这个问题稍微比较复杂,前面比较简单,我们把Attention block,使网络结构能够从全局信息中选择性地扩大有价值的特征channe并抑制无用的特征channe。

所以大体上用这个方法,我们在一些地方做实验,胴体提高了很多,比如刚才讲的这些例子,我们做一些大型的面板生产厂商,80%都需要人工的,全都用手检,准确度也提高了。

今年我们用这个方法也参加的多次,包括在座的可能有来自IBM、阿里,应该和我们做过P2C,我们除了一两次P2C的第二名,剩下20多次都是第一名。总体来说,我觉得这些方法还是能够的,我们能看得到它可以大幅度提升我们在缺陷检测的准确,包括它的分类,还有定位的准确度,都能够大幅提升。

我们还做了一些杂七杂八的事,第一个当很长的产品线,你可能有几百个操作要运到上百个设备,上万个参数的时候,我们要看不同的缺陷,到底是主要和哪些设备?哪些参数有关?这样的话,我们才能够提供自动化调参的方式,把你的参数调的最好。我们做的最厉害的,可以把不良率降低到30%,每条生产线每年可以带来两三亿新增的利润,这都是典型的问题。

还有我们自己最近的一些文章,我们怎么样对刀具进行管理?我们对口径在1.5毫米以上的进行很好的管理,管理这个刀的寿命,通过刀尖的信息,它是个时间序列,我们在高维空间里面做深度学习,同时能够很好的度量一个机床上,这个刀的质量怎么样?有没有出现断刀的情况。

大体上,如果这些事慢慢都成了,我们将来就能形成这个样子的智能工厂管理系统,这个比较宏观了,好多大家都是做管理的都知道,其实就是一团废话,这样的话,归根到底还是看能不能解决具体问题?因为解决不了具体问题,所有的在座的好多来开会,你们开的绝大部分的会听到的都是信息化,其实没有信息化,你们哪天听到了智慧化?因为听不到智慧化,因为智慧化是刚才说的问题。归根结底,我们一定要把它变成一个数学问题,如果你不能把它变成一个有优化目标的数学问题,那这是一个伪命题。这个工作是我们四个人做的,其他三位在这致谢一下。

最后打个广告,我们是专门做智慧治理和智能制造。如果大家有兴趣,可以通过到我们的官网,或者到微信公众号来了解最近在工业制造方面一些好的案例。我们绝大多数成果都公开发表,也欢迎在座工业制造的同志,可以看我们论文,看我们PPT,我们很多核心的包括核心的代码,都已经共享出来了。因为我们也在往前跑,我们也欢迎大家往前跑,并不想靠特定的方法来减缓大家往前跑的速度。

我今天报告到此结束,希望真正的人工智能给我们行业转型升级,谢谢!


发表评论请先登录
...
CWW视点
暂无内容