1. introduction
无监督学习的异常声音检测可以分为三个类别:重构,分布,特征学习。基于重构的方法使用参考输入和重构输出,并且认为正常声音的重构准确度应该高于异常声音。ae和vae都属于这类方法的典型模型。gan表现的不好,因为它能同时重构好异常声音和正常声音。基于分布的方法通过测量输入声音和正常声音的预训练好的分布的统计相似度来探测异常声音。GMM就是这种方法的典型模型。在基于分类的方法中,代表的特征嵌入通过将输入数据变换到特征域来获得,然后,分类任务使用这些学习到的特征。因为embeddings包括输入数据的核心特征,使用正常数据就更容易来探测异常了。这种方法的一个简单模型是OC-SVMs。
最近,自监督表示学习的方法由于不需要手工的标签而被用于声音异常检测。在这些方法中,输入的一些部分被视作是一个目标,模型训练来预测这个目标使用数据中剩下的部分。举个例子,在论文x中,两种分类器被使用,一个用来识别及其类型和id,另一个用来预测数据分割的类型。一个使用了线性组合增强的用于密度估计的掩蔽自编码器 (GMADE) [18] 在[16]中提出。
最多的传统异常声音检测使用了幅度谱作为输入特征;然而相位连续性信息对于很多声音类型都是有效的。然而,由于相位项仅选择性地用于特定机器类型(例如风扇),很难将方法概括为适用于所有机器类型。
为了解决在通用性上的限制,我们提出了一种基于自监督的深度复网络来进行异常探测,这种网络使用了注意力机制来对于不同的机器类型来控制振幅和相位的权重。由于提出的网络只使用正常的机器声音信息,一旦输出的logits和one-hot编码的机器类型相差很远就可以判断出异常了。
2.baseline model and limitations
A.使用增强网络来进行自监督分类
作为我们提出方法的baseline,我们改进了带有线性组合增强的自监督分类网络,以及在DCASE2020挑战中获得了很高的表现。baseline网络包括一个密度探测的整体,群掩码的自动编码及以及一个自监督分类的模型。异常探测的决策由分类模型来作出,它通过定义每种机器类型的id来进行训练。分类模型通过一个自监督的数据增强技术来进行训练。具体来说,输入log-mel频谱图是通过线性组合人工生成的每个机器 id 的 log-mel 频谱图,权重随机。举个例子,给出一个具有机器id维i的机器的log-mel频谱图
x
i
x_i
xi?每一个增强的输入数据
x
n
x_n
xn?通过
x
i
x_i
xi?加权想家获得,
∑
i
=
1
I
α
i
x
i
\sum_{i=1}^I \alpha_i x_i
∑i=1I?αi?xi?,其中I代表机器id的总数目,权重
α
i
\alpha_i
αi?随机取值,但是总和为1。网络的参数通过最小化目标参考
α
1
,
α
2
,
.
.
.
α
I
\alpha_1,\alpha_2,...\alpha_I
α1?,α2?,...αI?和输出logits之间的KL散度获得。在测试期间,训练模型的输出logits以及实际label的one-hot向量被计算来决定反常的程度。
B.在异常检测中的相位连续性
尽管上述的baseline模型呈现出很好的表现,但是对于一些机器类型来说异常检测的准确度还是不够高。这种表现下降的原因是来自于输入特征的类型:log-mel频谱图。log-mel频谱图代表了表示频带的mel缩放幅度来模拟人类听觉系统的特性。然而,自从异常检测被视为一种不与感知关联的模式匹配的过程之后,我们kennel会在mel缩放表示中损失核心信息。为了更好的提升时间序列信号的异常检测准确度,书体办法相位相关的信息如:相位连续性是很重要的。
图 1 显示了彩虹图 [26],它同时显示了具有恒定 q 变换(CQT)的幅度和相位。幅度谱用线强度表示和相位谱的导数用颜色表示。举个例子来说,对于正常风扇声的彩虹图,清楚地展示出了每条频率谱的连续线。而对于反常声,颜色和强度都不如正常情况下的。然而对于泵的声音,正常和反常声之间的差距并不明显(只是使用相位不连续信息的话)。因此,我们希望使用相位连续信息的有效性来对于不同的机器类型进行异常机器声音检测。
3.提出的复神经网络模型
对以上baseline模型的结构以及相位连续性的重要性所启发,我们提出了一个基于复频谱图的声音异常检测模型。图二展示出了我们的模型的整体框架。 上图是我们提出的模型的整体框架,我们首先计算波形输入信号的复频谱,然后将它们传递给下面的瓶颈块,瓶颈块包括复卷积网络。我们使用了一个注意力模块来控制对于每种机器类型的相位的效果。当在瓶颈输出上使用了一个平均池化层之后,我们对于每个部分使用了3个机器识别任务。这个模型使用了三个任务的三个交叉熵损失的和来进行训练。
A.自监督复神经网络
提出的自监督复神经网络使用了一个分类任务来探测异常机器声音,我们使用了deep complex u-net中的编码器部分来挖掘识别的核心信息。为了捕捉相位相关的信息来保证复操作,开始的5层网络由一个复卷积块组成,在每一个复卷机块后都跟着批归一化和参数化的Relu激活函数(PReLU)应用到每一个复模块上去。之后,复输出被分为一个复成分和一个振幅成分(使用绝对值)。振幅和复成分被通过一个独立的2D卷积层,输出的特征为
F
m
,
F
c
F_m,F_c
Fm?,Fc?。之后
F
m
,
F
c
F_m,F_c
Fm?,Fc?被重组为
F
t
∈
R
2
C
×
F
×
T
F_t \in \mathbb{R}^{2C\times F \times T}
Ft?∈R2C×F×T(通过在通道维度上堆叠)。
一个attention机制被用于
F
t
F_t
Ft?来控制对于给定机器类型的相位连续性的重要性,输出特征
F
o
u
t
F_{out}
Fout?通过一个attention bolck来生成,通过了另外一个2D卷积层(名为total conv2d),特征T就是生成的输出。在这之后,一个平均池化层用于所有这些三种特征,
F
m
,
F
c
,
T
F_m,F_c,T
Fm?,Fc?,T。最终,模型就是三种具有softmax输出的多分类任务,输出维度被类别的数目决定。
B.attention 模块
就像之前解释的那样,我们使用一个attention模块来控制振幅和复成分对于不同机器类型的相关重要性。图三展示了一个具体的结构来获得attention weight, A. 获得的特征
F
t
F_t
Ft?通过了一个2D的卷积层,平均池化层应用到了输出上。紧跟着两个全连接层。第一个全连接层是输入维度的4倍,然后在第二个全连接层上恢复到输入的相同维度,最终,通道注意力向量
A
∈
R
2
C
×
1
×
1
A \in \mathbb{R}^{2C \times 1 \times 1}
A∈R2C×1×1通过应用一个softmax函数来生成。最终attention向量
A
(
F
t
)
A(F_t)
A(Ft?)和
F
t
F_t
Ft?进行元素乘,最终再应用上了残差连接。注意力模块可以大致描述如下:
F
o
u
t
=
A
(
F
t
)
?
F
t
+
F
t
F_{out} = A(F_t)\otimes F_t + F_t
Fout?=A(Ft?)?Ft?+Ft? 卷积block的结构如下表所示:
4.实验
|