基于多头注意力和对抗网络的晶圆图缺陷生成方法
Wafer Map Defect Generation Model Based on Multi-Head Attention and Generative Adversarial Networks
摘要: 为了解决深度学习分类模型对少数样本的晶圆图缺陷模式的分类准确率低的问题。该研究提出了一种融合多头注意力机制和对抗网络模型的生成算法Multi-SAGAN。多头注意力机制拥有多个特征子空间,可以生成更丰富的图像细节和全局特征,利用Multi-SAGAN生成的晶圆图来扩充数量较少的晶圆图缺陷模式,能够提高分类器的分类准确率。为了比较DCGAN、SAGAN、数据增强模型和Multi-SAGAN的生成性能,分别把生成的图像和原始数据集组合成新的数据集,放入同一个分类模型中比较分类准确率。最终实验结果表明由Multi-SAGAN生成的图像组成的数据集准确率比原始数据集准确率高18.9%,比数据增强和DCGAN的扩充数据集准确率分别高7.4%和6.4%。比SAGAN的扩充数据集准确率高2.2%。
Abstract: To address the issue of low classification accuracy of deep learning models on wafer map defect patterns with scarce quantities, this study proposes a novel generative algorithm named Multi-SAGAN, integrating multi-head-attention and SAGAN. Generating multiple feature subspaces through multi-attention enables the creation of richer image details and global features. Ultimately, utilizing this generative algorithm to augment the limited quantity of wafer map defect patterns aims to enhance the classifier’s classification accuracy. The images generated by DCGAN, SAGAN, data augmentation, and Multi-SAGAN are respectively mixed with the original dataset to create new datasets, which are then input into the same classification model to compare classification accuracy. The final experimental results show that the dataset generated by Multi-SAGAN achieves an accuracy 18.9% higher than the original dataset, surpassing the accuracy of the datasets generated by data augmentation and DCGAN by 7.4% and 6.4% respectively. Additionally, it outperforms the accuracy of the dataset generated by SAGAN by 2.2%.
文章引用:王先旺. 基于多头注意力和对抗网络的晶圆图缺陷生成方法[J]. 建模与仿真, 2025, 14(2): 304-317. https://doi.org/10.12677/mos.2025.142153

1. 引言

随着晶圆的生产工艺的发展,其工艺流程愈发复杂,整个生产过程中某一个环节出现一些细微的差异都会导致晶圆中的一些芯片成为不良品,尤其是大规模生产晶圆时出现这种批量的不良品会导致产生严重的经济损失。在生产中,晶圆图上有缺陷芯片重复产生的图案可以与特定制造阶段的步骤相关联。例如,分布在晶圆边缘环状缺陷对应着刻蚀问题,分布在中心的缺陷对应着氧化过程中的温度不均匀[1],给批量晶圆图中的缺陷图案分类有助于检查生产流程中的异常,并且能为整个晶圆制造过程提供帮助。

传统的缺陷模式识别往往由肉眼借助电子扫描显微镜来实现,但是因为生产规模的扩大,人工检测的方式已经达不到生产的要求[2]。于是出现了自动检测方法,例如,卢笑蕾等人[3]使用基于流形调节的局部连续高斯模型来处理晶圆图故障模式识别,这种识别方法需要人为的对各个缺陷模式统计建模,并不是完全的自动检测。随着深度学习的发展,卷积神经网络(CNN) [4]被广泛用于晶圆图故障模式分类,Yu等人[5]开发了一种13层卷积神经网络来对缺陷图案进行分类,Wang等人[6]提出用MobileNet轻量化卷积神经网络模型取得较好的分类结果,但是这些基于CNN模型都需要大量的训练数据,然而实际生产中的晶圆图中有些缺陷模式数据量很少,使得分类模型对这类缺陷模式的分类准确率非常低[7]

为了提升少数样本类别准确率,张玉彦等人[8]提出使用GAN [9]网络来扩充数据集,但是传统的GAN网络都用线性层提取特征,其网络深度有限,只能生成一些简单的缺陷模式。为了能够生成更加复杂的缺陷模式,LEE等人[10]提出结合了CNN的GAN模型——DCGAN去生成晶圆图缺陷模式,DCGAN借助CNN把网络堆叠得很深,使得模型能够提取到更加丰富的特征,例如丁满[11]等人利用DCGAN提取深层特征的特点对原图像做色彩风格迁移。但是DCGAN对带全局信息特征的缺陷模式的晶圆图生成效果并不理想,这是因为每一层的卷积都只带有局部感受野,要想提取到全局的信息特征只能通过不停地堆叠网络深度去融合各个层的特征,这种方法往往效果不佳并且计算成本高。本文作者基于这一点想到利用自注意力机制的对抗网络SAGAN [12]去生成数据集,SAGAN加入transformer [13]中的self-attention主要是为了获得全局感受野,而卷积只有局部感受野,这使得CNN模型不具有图像区域之间的长范围、多级依赖关系,Jean-Baptiste [14]等人也进一步证实了这一思想,并具体解释了CNN和self-attention之间的区别。因此,SAGAN不仅能生成高清晰的图像,而且还能注意到图像中不同特征之间的一些关联。为了让SAGAN的生成效果更加优秀,本文作者设计出multi-attention模块,该模块将CNN融入到transformer中的多头注意力机制中,进而得到了Multi-SAGAN模型。多头注意力机制等同于多个通道的self-attention,不同的通道负责不同类型的特征,这样就能提取到图片上更加丰富的特征信息,有利于生成更加逼真的图像。经过实验表明,用Multi-SAGAN生成的图片扩充的数据集对分类性能的提升率高于SAGAN和DCGAN。

2. 方法

2.1. WM-811k数据集预处理

WM-811k [15]共有81万张晶圆图,其中有标注的17万张,有标注并带缺陷的共计2.5万张,该数据集包括正常模式共有10个类别,各类别数量占比差异大而且尺寸大小不一,因此需要做数据预处理便于研究。本文从WM-811k的带标签数据中选取6301张晶圆图作为原始数据集,其数量和标签如图1所示,其中donut、linear-stripe、near-full、random、scratch、loc这6个类别的样本数均不足1000,这些类别作为少数样本类别进行数据扩充,图中的折线图是每个类别扩充的样本数量,数量为0的类别是多数样本类别,不需要进行扩充。图2是经过预处理后的原始数据集图像,其中的linear-stripe (线性条纹)类别是从scratch (刮痕)类别中分离出来的,由于scratch和linear-stripe在特征结构上存在巨大差异,因此将这种带线性特征的晶圆图单独作为一个类别来处理。

Figure 1. Ten classes of wafer map in the WM811k dataset

1. WM811k数据集10种类别晶圆图像

Figure 2. Sample counts for the original and augmented datasets

2. 原始数据集和扩充数据集样本数量图

预处理的第一步是将图像resize成64 × 64大小,考虑到过大或过小尺寸的晶圆图resize之后图像严重变形、失真导致数据质量不高,所以在resize之前会把图像尺寸小于16或大于200的图像过滤掉,最终得到了6301张长宽均为64 × 64的晶圆图。

第二步将图像二值化,WM-811K中的原始图像分为有缺陷区、无缺陷区和背景三个部分,本研究将无缺陷区和背景统一映射为0,有缺陷区域映射到255。

第三步是通过联通组件功能过滤掉图像中的噪点,本研究将噪点大小的阈值自定义为25,能够筛选掉大部分随机噪点,图3是none类别晶圆图去噪前后对比。

Figure 3. “none”: denoised using connected components (left is before, right is after)

3. none类别使用联通组件去噪(左为去噪前,右为去噪后)

2.2. GAN框架模型结构介绍

GAN网络框架主要由generator和discriminator两个部分组成,generator的输入是随机噪声,输出是生成的图像,通过优化器更新generator的可学习参数,使得generator生成的图像更加接近真实图像,discriminator是一个二分类模型,输入是无标签的真实图像和generator生成的图像,通过训练去判别图像是否是生成的。generator生成逼真的图像来“欺骗”discriminator,discriminator通过训练来识别出生成的图像,两者相互对抗直至一个动态平衡,GAN的框架模型结构如图4所示。

Figure 4. The framework of GAN

4. GAN框架结构图

2.3. 生成模型设计

本文主要是用到了三个生成模型,DCGAN、SAGAN和本文提出的Multi-SAGAN模型,DCGAN是一种仅使用卷积做特征提取的模型,其discriminator,generator的特征提取都是通过卷积来实现的。SAGAN是引入了self-attention模块的一类GAN生成模型,其特征提取部分既有卷积也有self-attention模块。下面主要介绍本文提出的Multi-SAGAN模型,其模型结构图如下图所示:

Figure 5. The model architecture of SAGAN and Multi-SAGAN

5. SAGAN & Multi-SAGAN模型结构图

Multi-SAGAN是本文作者针对WM-811K训练时对SAGAN模型做了改进后的模型,主要是将SAGAN中的self-attention模块换成融合了多头注意力机制和CNN的multi-attention模块(图5中的绿色块),Multi-SAGAN模型的generator共有5个核为4的转置卷积,第一个转置卷积的步长为1,其余步长均为2。因为转置卷积存在棋盘效应,棋盘效应是指生成的上采样特征图中出现的不规则、方块状的图案或伪影,棋盘效应的出现主要是因为在反卷积操作时,如果卷积核(kernel)大小不能被步长(stride)整除时,反卷积输出的结果就会不均匀重叠,所以选择4作为卷积核大小,它既可以被步长2整除,也保持了较小的核尺寸,能减少算力的开销。generator的输入是[32, 512, 1, 1]形状的四维随机噪声,由于第一个转置卷积层的步长为1,核为4,填充0,因此,图像尺寸由1 × 1变成了4 × 4,随后的四个转置卷积都将图像放大二倍,最终得到64 × 64的图像。Multi-SAGAN模型的discriminator同样由两个multi-attention模块和5个卷积层组成,其结构如图5右边所示,最后一个卷积层的核为4,步长为1,将4 × 4的输入变成1 × 1的输出,这与generator的第一层转置卷积效果刚好相反,所以Multi-SAGAN的generator和discriminator可以看作是一对互逆的过程,这有助于对两个模型复杂度的估计,使两者能够稳定地进行对抗训练。

本文设计的multi-attention模块结构图如图6所示,该模块借用了transformer的多头注意力机制思想,多头注意力允许模型同时关注输入的不同特征子空间,通过学习多个独立的注意力权重矩阵,每个权重矩阵可以捕捉不同的特征表示。由于multi-attention模块需要提取的是图像特征,显然使用CNN要比transformer中的前馈神经网络更加有效,由图6可以看出,multi-attention模块利用CNN得到了Q、K、V矩阵,不同于transformer中的直接复制Q、K、V矩阵来分头,本文选择使用特征图进行分头,这样既保留了所有的特征图,也减少了计算量。分头后得到多个q,k,v卷积输出矩阵,经过独立计算得到由多个注意力矩阵拼接在一起的大矩阵A,注意力矩阵之间相互独立,分别处理多个特征子空间。

Figure 6. The multi-attention module architecture of Multi-SAGAN

6. Multi-SAGAN的multi-attention模块结构图

此外,Multi-SAGAN给attention矩阵乘上了缩放因子(scale factor),即图6中的 x scale ,值为 1/ C ,缩放因子的作用是为了防止attention矩阵中较大值进入softmax后增长太快,因为softmax的指数函数的特性,输入的值越大,那么这个值归一化后在1中的占比也就越大,反之数值越小占比也就越小,这就导致softmax的输出矩阵中只有一个值趋近于1,其余的值几乎趋近于0,在这种情况下,对softmax求导后的梯度也会趋近于0,使得反向传播时梯度消失,模型也将停止学习。但是在softmax之前乘上一个缩放因子就能够弱化softmax这种趋势,进而防止梯度消失。

因为不同通道的特征具有差异性,那么它们的注意力重要性和全局依赖也会有所不同,为了给不同通道赋予不一样的全局依赖,因此,本研究将γ参数设计成[batch_size, channel, 1, 1]的四维形状,这就使得不同的样本不同的通道都有一个与之相乘的γ,这样对于那些不那么需要注意力的通道,模型通过学习会分配一个较小的γ

3. 多头注意力机制和损失函数介绍

3.1. 多头注意力模块结构

假设multi-attention模块的输入是单个样本,则输入 x R C×N ,这里面的 C 为卷积层输出的通道数, N 为特征图长宽的乘积,代表不同的区域位置,首先 x 会分别进入三个二维卷积中分别得到三个输出空间 Q , K , V ,公式如下:

Q = W q x,  K = W k x,  V = W v x (1)

公式(1)中的 W q , W k , W v 分别代表相应的卷积层打包后的矩阵,其中 Q K 的输出通道数为 C 1 =C/8 V 的输出通道数为 C ,这么做是为了减少参数,降低计算量。因此得到形状分别为 [ C 1 ,N ],[ C 1 ,N ],[ C,N ] ,最终变形得到 Q,K,V 公式如下:

Q=view( Q )={ q 1 , q 2 ,, q h }, K=view( K )={ k 1 , k 2 ,, k h }, V=view( V )={ v 1 , v 2 ,, v h }, h[ 1,2,,heads ] (2)

Q,K,V 的形状分别为 [ heads, C 2 ,N ],[ heads, C 2 ,N ],[ heads, C 3 ,N ] C 2 =C/ 8/ heads , C 3 =C/ heads Q K 相乘得到softmax之前的注意力矩阵,公式如下所示:

E= Q T K={ e 1 , e 2 ,, e h }={ ( q 1 ) T k 1 , ( q 2 ) T k 2 ,, ( q h ) T k h } (3)

得到的 E 的形状为 [ heads,N,N ] ,从公式(3)可以看出,每一个head都是独立计算的,这样就可以实现在不同的子空间去获得注意力。 E 中的每一个二维矩阵 e h 代表的是对应的head的特征图的每个位置与其它位置的注意力分数,这些分数需要经过softmax做一次归一化得到 A 矩阵,公式如下:

A=softmax( E* x scale )={ a 1 , a 1 ,, a h }, a j,i h = exp( a ij h ) i=1 N exp( a ij h ) (4)

A 的形状跟 E 相同,只是里面的每一个注意力矩阵做了归一化,公式(4)中的 a j,i h 代表的是第h个头的第i个位置相对于第j个位置的注意力分数。最后将 A V 矩阵相乘得到输出 O ,将 O 矩阵变形得到O矩阵,Oγ相乘再加上输入得到multi-attention模块的输出 Y ,公式如下所示:

O =A V T ={ o 1 , o 2 ,, o h }={ a 1 ( v 1 ) T , a 2 ( v 2 ) T ,, a h ( v h ) T }, Y=view( O )*γ+x (5)

O 的形状为 [ heads,N, C 3 ] γ的形状为 [ C,1,1 ] ,因此 O γ相乘之前需要变形,将 N 分解为二维的 W×H ,同时把不同的注意力头的通道拼接在一起,最后得到的形状为 [ C,W,H ] ,由于γ是可学习的参数,将会有 C γ值分别与每一个通道的注意力矩阵相乘,在这种情况下,模型就能根据不同通道对注意力的需要程度分别去分配一个γ值。以上就是multi-attention模块的整体结构,该模块即被用于生成器也被用于判别器。

3.2. Wgan-gp损失函数

最小化损失函数采用的是Ishaan Gulrajani [16]等人提出的wgan-gp损失函数,采用交替训练生成器和判别器的方式来最小化损失函数,公式如下所示:

L D = E x ~ p g [ D( x ) ] E x~ p r [ D( x ) ]+λ E x ^ ~ p x ^ [ ( x ^ D( x ^ ) 2 1 ) 2 ], L G = E x ~ p g [ D( x ) ] x =G( z ) (6)

公式(6)中的 p g 代表的是模型的分布, p r 是真实样本的分布, p x ^ p r p g 之间的一种插值分布, x 是真实的样本数据, x' 是生成的数据, z 是随机噪声, x ^ 是真实数据 x 和生成数据G(z)之间的插值, D 表示的是判别器, G 表示的是生成器, λ 表示的是梯度惩罚项权重,是一个常量一般取10。 x ~ p g 可以隐式的表示为 x =G( z ),z~ p z 。由公式(6)可以看出 L D 由三部分组成,它们分别为生成图像的判别损失(loss_out_fake)、真实图像的判别损失(loss_out_real)和梯度惩罚项损失(loss_gp),前两项很容易理解就是真实或者生成的数据进入判别器后得到的loss,并且 L G 就是负的loss_out_fake,这就导致loss_out_fake的变化必定导致 L G L D 向着不同的方向变化,这样也就形成了对抗。Wgan-gp最重要的部分是梯度惩罚项,也就是loss_gp,该惩罚项可以使训练时的梯度尽可能的接近1,防止“梯度爆炸”和“梯度消失”,使训练更加稳定。如果式中的梯度距离 grad= x ^ D( x ^ ) 2 过小时,也就是grad趋近于0时,loss_gp会逐渐增大到10,这也会导致 L D 的增大,从而进行反向传播来缓解“梯度消失”,当grad > 1时,loss_gp也会增长,而且grad越大,loss_gp增长的也就越快, L D 增长的也就越快,使得反向传播时会有更大的惩罚力度来防止“梯度爆炸”。只有当 grad 趋近于1时,loss_gp才会趋近于0。

3.3. Mixloss损失函数

Mixloss是做消融实验时用来评估生成图片质量的一个综合指标,因为该指标理论上也可以作为损失函数,所以在消融实验中将该指标作为次要损失函数参与运算,其公式如式(7)所示,式中的αβλ是三个常量,代表均方误差(mean-square error, MSE),结构相似度(Structural Similarity, SSIM),峰值信噪比(Peak signal-to-noise ratio, PSNR)的三个loss分量的权重,本文设置的分别为16,2,12,这是根据对比实验的各项指标的取值范围来确定的,当这三项指标非常差时,使其损失值为1左右,也就是把这三个loss分量都设置在[0, 1]这个区间。mse是均方误差,用来比较真实图片与生成图片的均值之间的差异;ssim是结构相似度,主要是比较真实图像与生成图像之间的特征结构、对比度和亮度的差异,区间均为[−1, 1],数值越大说明生成图像结构越相似;psnr是峰值信噪比,用于表示信号的最大可能功率与影响其表示的保真度的破坏噪声的功率之间的比率,区间为 [ 0,+ ) ,数值越大说明生成的图像质量越高。分别给这三个指标引入一个函数就得到下面的Mixloss,当mse越小,ssim越接近于1,psnr越大时,Mixloss越小,生成图片质量越高,反之,Mixloss越大。如图7所示横轴代表psnr,mse,ssim指标的数值,纵轴代表的是与这些指标相对应的loss值,也就是mixloss的loss分量。在式(7)中的 L D L 和Mixloss两部分组成,这是在消融实验中把Mixloss也加入到了生成器的损失计算中, L 是主损失函数,本文选择用来做消融实验的主损失函数是Wgan_loss。

Mixloss=α*( e mse 1 )+β*ln( 2 ssim+1 )+λ* 1 psnr L D = L *0.6+Mixloss*0.4 (7)

Figure 7. The curves of the three loss components in Mixloss

7. Mixloss的三个loss分量曲线

4. 实验

本节主要由三部分实验组成,其中第一部分是生成模型对比实验,比较不同生成方法生成图像质量。第二部分是Multi-SAGAN的消融实验。第三部分为分类准确率实验,比较分类准确率。

4.1. 生成模型对比实验

本实验用来比较和评估模型的指标主要有dis_loss,mse,ssim,psnr,dis_loss可以简单地理解成生成图片和真实图片分别进入判别器后的输出差值,数值越小表示生成图像的质量越好,另外三项指标前文都有提到过,这里就不做过多解释,mse数值越小越优,ssim和psnr数值越大越优。表1中加粗的代表对比中的最优结果,可以看到在这六类晶圆缺陷模式生成中,其中有三类Multi-SAGAN的四项指标都是最优,两类三项最优,一类两项最优。综合来看,Multi-SAGAN的模型性能要优于SAGAN和DCGAN。

Table 1. Comparison of experimental results

1. 对比实验结果

模型

类别

dis_loss

mse

ssim

psnr

donut

DCGAN

28.268

0.197

0.282

7.052

SAGAN

3.151

0.176

0.477

7.554

Multi-SAGAN

1.849

0.174

0.464

7.595

linear-stripe

DCGAN

0.337

0.044

0.717

13.538

SAGAN

1.286

0.039

0.770

14.113

Multi-SAGAN

0.291

0.024

0.876

16.213

loc

DCGAN

15.353

0.182

0.480

7.393

SAGAN

3.211

0.183

0.427

7.357

Multi-SAGAN

3.002

0.163

0.385

7.874

续表

near-full

DCGAN

2.065

0.197

0.233

7.045

SAGAN

1.972

0.169

0.305

7.730

Multi-SAGAN

1.847

0.136

0.459

8.659

random

DCGAN

15.858

0.370

0.120

4.313

SAGAN

2.957

0.360

0.130

4.443

Multi-SAGAN

1.455

0.369

0.131

4.333

scratch

DCGAN

10.928

0.066

0.021

11.794

SAGAN

1.031

0.050

0.484

12.984

Multi-SAGAN

0.432

0.027

0.763

15.632

4.2. Multi-SAGAN消融实验

消融实验的主要目的是匹配出最优的Multi-SAGAN模型配置,本实验分别从损失函数、缩放因子、注意力头数、注意力机制伽马值形状这四个维度去设计实验,以Mixloss作为评估指标来进行实验,在对比实验中用到了dis_loss,mse,psnr,ssim,本实验由于实验次数多,为了便于评估,将mse,psnr,ssim综合成了一个统一的指标Mixloss,同时它也作为损失函数参与计算,该指标在3.3节有详细介绍。dis_loss之所以没有作为本消融实验的评估指标主要考虑到dis_loss是Wgan-gp损失值与Mixloss的和值,而该消融实验把Mixloss也考虑进来,这使得没有加Mixloss的dis_loss必定比加了Mixloss的要小,也就没有了实验的比较性。

Table 2. Results of ablation study

2. 消融实验结果

second loss

Mixloss

none

scales

scale

none

scale

none

every

batch

2

2.259

2.203

2.258

2.211

4

2.270

2.166

2.249

2.182

8

2.355

2.242

2.325

2.349

every

sample

2

2.134

2.121

2.158

2.091

4

2.109

2.078

2.153

2.115

8

2.080

2.147

2.111

2.107

every

channel

2

1.738

1.825

1.731

1.717

4

1.707

1.805

1.737

1.690

8

1.721

1.865

1.706

1.916

表2的第一行是是否使用副损失函数(second loss),如果是Mixloss代表使用,则dis_loss = Mixloss + wang-gp,none则代表dis_loss = wgan-gp,第二行代表是否使用缩放因子 x scale ,every_batch,every_sample,every_channel代表的是伽马值的不同形状,2,4,8是多头注意力的头数,评估的数值用的是Mixloss。

从实验结果来看,最好的Multi-SAGAN模型配置是4头注意力,伽马形状为every_channel,不需要 x scale 和Mixloss。首先可以看到伽马形状every_channe为最优,因为每一列的伽马形状的Mixloss均值都是向下依次减少;然后是最优的头数是4,大于或小于这个头数的Mixloss都要更大; x scale 的加入从这个消融实验的总体来看负优化要多于正优化,可能是wgan-gp本身存在限制梯度的机制,再加入 x scale 反而破坏了wgan-gp的梯度限制能力。Mixloss总体来看确实有优化模型性能的效果,单从列1和列3可以看到加入Mixloss函数的情况下数值更低,但是不同的行优化效果的差异很大,有的甚至有负优化的情况,所以Mixloss函数的加入确实能优化模型性能,但是需要根据情况去调参才能起到明显的优化效果,Mixloss函数本身有三个超参数,这是在设计这个函数之前就考虑到不同参数的影响,所以故意设计了这三个超参数。

4.3. 分类准确率实验

该实验的数据集组成如图8所示,DS0~DS6七个训练集的测试集是一样的,保证在推理过程中比较的一致性。本文选用经典CNN模型ResNet18 [17]作为分类器,该模型是一个标准的残差模型,被广泛用于多分类任务,本实验将使用该模型来做分类任务。

Figure 8. The structure for datasets DS0 to DS6

8. 数据集DS0~DS6结构图

DS0~DS6数据集的少数样本类别扩充后的训练准确率如表3所示,表4展示了各个数据集的训练集和测试集的样本数量和少数样本类别的平均准确率。DS0为原始数据集,所有的数据集都是基于DS0做数据扩充得到,DS2是将原始数据集图像做翻转和平移得到,DS4和DS6是将生成的图像再做一次随机数据增强得到。

表3的结果表明,引入了注意力机制的SAGAN和Multi-SAGAN对准确率的提升效果明显高于DCGAN和数据增强。从总体来看,由Multi-SAGAN扩充的DS5和DS6比SAGAN扩充的DS3和DS4准确率更高。从类别来看,donut (T0)、loc (T5)、near-full (T6)、random (T8)、scratch (T9)类别DS5和DS6都有最优精度,尤其是scratch类别DS5要比DS4和DS3高0.14,由此可以说明这两个类别通过multi-attention模块的多个特征子空间抓取到了更加丰富的全局特征。值得注意的是random (T8)类别,由Multi-SAGAN扩充的DS5只是保持了DS0的原始精度,而DS1~DS4都出现了精度下降的问题,这主要是因为在做分类训练时出现了单个类别过拟合现象,其它类别精度在上升的同时某些类别的精度发生了下降。可以肯定的是,SAGAN和Multi-SAGAN生成的图像对分类的精度提升要高于DCGAN和普通的数据增强,而SAGAN和Multi-SAGAN生成的图像在分类结果上的最大差异在于scratch类别的差异,该类别的生成难度高,全局特征依赖度高,使得Multi-SAGAN生成的scratch图像效果尤为明显。loc(T5)类别不做数据增强时SAGAN准确率更高,做数据增强Multi-SAGAN准确率更高,near-full(T6)不做数据增强Multi-SAGAN准确率更高,做数据增强后准确率都达到了1,这说明对生成后的图像做数据增强也会因模型和类别的不同而出现差异,见表4

Table 3. The training results for DS0 to DS6

3. DS0~DS6训练结果

类别

DS0

DS1

DS2

DS3

DS4

DS5

DS6

T0

0.900

0.883

0.950

0.917

0.900

0.950

0.917

T4

0.320

0.760

0.740

0.840

0.880

0.800

0.840

T5

0.688

0.800

0.800

0.863

0.788

0.813

0.863

T6

0.860

0.920

0.860

0.920

1.00

0.980

1.00

T8

0.914

0.871

0.886

0.886

0.900

0.914

0.9

T9

0.600

0.740

0.800

0.820

0.820

0.960

0.900

平均

0.714

0.829

0.839

0.874

0.881

0.903

0.903

Table 4. Classification accuracy for datasets DS0 to DS6

4. DS0~DS6数据集分类准确率

数据集标号

训练集

测试集

准确率

DS0

5541

760

0.714

DS1 (DCGAN)

7701

760

0.829

DS2 (数据增强)

7701

760

0.839

DS3 (SAGAN)

7701

760

0.874

DS4 (SAGAN + 数据增强)

7701

760

0.881

DS5 (Multi-SAGAN)

7701

760

0.903

DS6 (Multi-SAGAN + 数据增强)

7701

760

0.903

表5是donut和scratch在不同生成方法下生成的图像对比,这两种类别更复杂需要attention机制来丰富细节,从图中也可以看出Multi-SAGAN生成的图像在细节上与原始图片最相似也是最清晰的。

Table 5. Comparison of wafer maps by different algorithms

5. 不同算法生成晶圆图比较

生成方法

原始图片

DCGAN

SAGAN

Multi-SAGAN

dount

scratch

5. 结论

本文提出了使用具有全局注意力的SAGAN模型去扩充少数晶圆图样本类别,并在研究过程中融合CNN和多头注意力机制得到了Multi-SAGAN生成模型。本文提出的Multi-SAGAN模型扩充数据集后,对CNN分类模型有着显著提升,相比于之前提出的数据增强、DCGAN和SAGAN都更加有优势,由Multi-SAGAN生成的图像组成的数据集准确率比原始数据集在少数样本类别的准确率提升了18.9%,比数据增强和DCGAN的准确率分别高7.4%和6.4%。比SAGAN的准确率高2.2%。从表4可以看出DS0,DS1,DS2的准确率明显要比SAGAN和Multi-SAGAN低,这说明attention机制的加入提升了生成算法的生成效果,提高了分类器的分类性能。

参考文献

[1] Hsu, C., Chen, W. and Chien, J. (2020) Similarity Matching of Wafer Bin Maps for Manufacturing Intelligence to Empower Industry 3.5 for Semiconductor Manufacturing. Computers & Industrial Engineering, 142, Article 106358.
https://doi.org/10.1016/j.cie.2020.106358
[2] Wang, C., Kuo, W. and Bensmail, H. (2006) Detection and Classification of Defect Patterns on Semiconductor Wafers. IIE Transactions, 38, 1059-1068.
https://doi.org/10.1080/07408170600733236
[3] 卢笑蕾, 余建波. 基于混合模型与流形调节的晶圆表面缺陷识别[J]. 计算机集成制造系统, 2018, 24(2): 302-308.
[4] Krizhevsky, A., Sutskever, I. and Hinton, G.E. (2012) ImageNet Classification with Deep Convolutional Neural Networks. Communications of the ACM, 60, 84-90.
[5] Yu, N., Xu, Q. and Wang, H. (2019) Wafer Defect Pattern Recognition and Analysis Based on Convolutional Neural Network. IEEE Transactions on Semiconductor Manufacturing, 32, 566-573.
https://doi.org/10.1109/tsm.2019.2937793
[6]
https://doi.org/10.1109/icce-tw52618.2021.9603145
[7] Batool, U., Shapiai, M.I., Fauzi, H. and Fong, J.X. (2020) Convolutional Neural Network for Imbalanced Data Classification of Silicon Wafer Defects. 2020 16th IEEE International Colloquium on Signal Processing & Its Applications (CSPA), Langkawi, 28-29 February 2020, 230-235.
https://doi.org/10.1109/cspa48992.2020.9068669
[8] 张玉彦, 张永奇, 孙春亚, 王昊琪, 文笑雨, 乔东平, 闫新宇, 李浩. 不平衡样本下基于生成式对抗网络的风机叶片开裂状态识别[J]. 计算机集成制造系统, 2023, 29(2): 532-543.
[9] Ian, J.G. and Jean, P.A. (2014) Generative Adversarial Networks. arXiv: 1406.2661.
https://doi.org/10.48550/arXiv.1406.2661
[10] Ji, Y. and Lee, J. (2020) Using GAN to Improve CNN Performance of Wafer Map Defect Type Classification: Yield Enhancement. 2020 31st Annual SEMI Advanced Semiconductor Manufacturing Conference (ASMC), Saratoga Springs, 24-26 August 2020, 1-6.
https://doi.org/10.1109/asmc49169.2020.9185193
[11] 丁满, 袁云磊, 张新新, 孙鸣宇. 基于深度学习的产品色彩情感化设计[J]. 计算机集成制造系统, 2023, 29(5): 1647-1656.
[12] Zhang, H., Goodfellow, I., Metaxas, D. and Odena, A. (2018) Self-Attention Generative Adversarial Networks. arXiv: 1805.08318.
https://doi.org/10.48550/arXiv.1805.08318
[13] Vaswani, A., Shazeer, N., Parmar, N., Uszkoreit, J., Jones, L., Gomez, A.N., et al. (2017) Attention Is All You Need. Proceedings of the 31st International Conference on Neural Information Processing Systems, Long Beach, 4-9 December 2017, 6000-6010.
[14] Cordonnier, J.-B., Loukas, A. and Jaggi, M. (2019) On the Relationship between Self-Attention and Convolutional Layers. arXiv: 1911.03584.
https://doi.org/10.48550/arXiv.1911.03584
[15] Wu, M.-J., Jang, J.R. and Chen, J.-L. (2015) Wafer Map Failure Pattern Recognition and Similarity Ranking for Large-Scale Data Sets. IEEE Transactions on Semiconductor Manufacturing, 28, 1-12.
https://doi.org/10.1109/tsm.2014.2364237
[16] Gulrajani, I., Ahmed, F., Arjovsky, M., Dumoulin, V. and Courville, A. (2017) Improved Training of Wasserstein GANs. arXiv: 1704.00028.
https://doi.org/10.48550/arXiv.1704.00028
[17] He, K., Zhang, X., Ren, S. and Sun, J. (2016) Deep Residual Learning for Image Recognition. 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), Las Vegas, 27-30 June 2016, 770-778.
https://doi.org/10.1109/cvpr.2016.90