异常值检验发现和剔除异常观测值的统计检验方法。异常值或离群值,是观测或试验过程中由于过失误差破坏了原有统计规律性而产生的观测值。
异常值检验在许多生物工程、环境工程等相关领域有着极为广泛的应用,其可以有利于做环境监测和环境治理,生物重点疫苗研制等等。
异常值检验方法有很多,针对不同数据特点,时间序列数据和截面数据的检测方法不完全相同,其时常要考虑到数据特性,本次主要介绍相关的时序数据异常值检测算法。
今天介绍kNN算法(k--NearestNeighbor算法),又称k-近邻算法。简单来说就是近朱者赤近墨者黑。kNN的工作原理是对数据进行分类,整个过程分为三步:1. 假设有一个带有标签的样本数据集(训练样本集),其中包含每条数据与所属分类的对应关系。
2. 输入没有标签的新数据后,将新数据的每个特征与样本集中数据对应的特征进行比较。
A. 计算新数据与样本数据集中每条数据的距离。
通常距离的度量用欧式距离计算,即对于两个n维向量x和y,两者的欧式距离定义为:
其他距离度量方式,如曼哈顿距离:
再比如闵可夫斯基距离:
其实,欧式距离是闵可夫斯基距离距离在p=2时的特例,而曼哈顿距离是p=1时的特例。
B. 对求得的所有距离进行排序(从小到大,越小表示越相似)。
C. 取前 k(k 一般小于等于 20 )个样本数据对应的分类标签。3. 求 k 个数据中出现次数最多的分类标签作为新数据的分类。
简单来说,对于给定训练数据