摘要:
神经网络默认所有输入数据均属于正常数据,当输入异常的数据,网络会在已知的标签中找到高度自信的错误结果,这种无法检测异常数据的现象出现在所有学习模型中.使网络具备检测异常数据的能力,对于系统安全、算法可靠性和算法的实际应用具有重要的意义.实验提出一种区分异常数据和正常数据的方法,该方法首先训练一个名为Wildnet的分类网络,而后去掉该网络的Softmax层作为特征提取器,提取正常数据的高层语义信息Embedding,并用该Embedding构建卷积网络的认知域,通过计算测试数据的Embedding是否属于该认知域,来判断该数据是否为异常数据,达到异常检测的目的.实验在海鲜市场拍摄的1284张包含13个种类的鱼类图像上进行,用前11种鱼类数据作为正常数据,后2种鱼类数据作为异常数据.并用正常数据的60%训练Wildnet网络,得到测试精度91.10%的分类网络,然后去掉网络的Softmax层作为特征提取器,提取训练数据的Embedding,建立认知域,最后用20%未经训练的正常数据和异常数据作为测试集,测试其是否属于网络认知域,来判断测试数据区分异常数据的能力,精度达到71.59%.证明通过建立卷积网路的有界认知域,可以区分异常的数据,达到异常检测的目的.该方法能让神经网络算法具备检测"异常数据"的意识,为传统神经网络算法增加了异常检测功能,进一步提高系统安全性和算法鲁棒性.