首页 > 解决方案 > 使用自动编码器提取异常

问题描述

除了均方误差之外,还有其他量可以用来在 keras 中使用自动编码器来检测异常吗?

标签: kerasautoencoderanomaly-detection

解决方案


一般来说,这个想法是测量重建并将异常分类为那些导致与输入有显着偏差的数据点。因此,可以使用其他其他规范,例如mae. 但是,结果可能非常相似。

我建议使用不同风格的自动编码器。首先,如果您还没有使用它,那么变分自动编码器在各个方面都比标准自动编码器好。

其次,变分自编码器的性能可以通过使用重构概率显着提高。这个想法是不仅为潜在空间而且为特征空间输出概率分布的参数。这意味着当与连续数据一起使用时,解码器将输出均值和方差来参数化正态分布。那么重建概率基本上是正态分布的负对数似然N(x; decoder_mu, decoder_var)。使用 2-sigma 规则,可以将方差解释为置信区间,因此即使很小的误差也可能导致高误差。

除此之外,还有其他风格,例如vae-gan,它结合了 vae 和 gan 使用组合异常分数与重建误差和鉴别器预测。此外,根据您的问题类型,您还可以进入vae-sl在瓶颈中添加额外分类器的路径。然后在可以完全或稀疏标记的混合数据上训练模型。然后分类器可用于异常检测。


推荐阅读