论文部分内容阅读
随着时代和技术的不断发展,高维数据在日常生活和工作中普遍存在,并且给数据的运输与存储带来了极大的挑战,同时也不方便人们研究和应用,所以对高维数据进行降维十分有必要。主成分分析(PCA)是现存的一种经典的降维方式,但是PCA只能对向量型的数据进行降维,当对矩阵型数据进行降维时,就要将数据变换为向量型数据,这样会破坏数据的内部结构。而二维主成分分析(2DPCA)就是针对矩阵型数据降维的,2DPCA可以直接应用于矩阵型的数据,但是2DPCA只能对矩阵型数据的行方向或列方向进行降维,所以双向二维主成分分析(BPCA)被提出,BPCA可以对矩阵型数据的行方向和列方向同时进行降维,降维效果比2DPCA更好。由于在收集多元时间序列数据过程中,对每一个变量测量的时间可能不一样,因此就会造成每一个样本数据的时间维度不一致,即数据是长短不一的。目前比较常用的变通处理方法有两种,一种是把数据都截断为最小长度,但是这样处理会破坏部分数据结构,丢失一部分信息,因此会影响数据的降维效果。还有一种方法是随机复制同一个样本的数据,把长短不一的数据填充为最长长度。相比第一种方法,用第二种方法将数据填充后再降维的效果更好。为了更好的填充长短不一的数据,本文将2DPCA进行拓展,提出三种适用于长短不一数据的填充算法,分别是完整数据下的EM算法、完整数据下的CM算法和缺失数据下的EM算法,这三种算法可以利用数据的信息将数据填充为最长长度。因为数据是长短不一的,即部分X缺失,我们把缺失的部分记作X_m,完整数据下的EM算法需要输入缺失部分X_m,优化投影矩阵W和降维后的低维矩阵Z,因此记为2DPCA1-Xm Z算法。完整数据下的CM算法需要输入X_m,优化W,因此记为2DPCA2-Xm算法。缺失数据下的EM算法不需要输入X_m,可以直接优化W,Z,因此记为2DPCA3-Z算法。本文还拓展了有均值的2DPCA模型,并提出相应的填充算法:M2DPCA1-Xm Z算法、M2DPCA2-Xm算法和M2DPCA3-Z算法。为验证本文提出的填充算法的优势,在真实多元时间序列数据上做了两个实验,第一个实验使用ECG数据,计算填充数据与真实数据的均方误差,以此来对比各种填充方法,实验结果显示用本文提出的方法填充数据,其均方误差更小;第二个实验在Japanese Vowels、ECG、Wafer和AUSLAN四个真实多元时间序列数据上做分类实验,先用本文提出的算法将数据进行填充,然后利用BPCA将填充后的数据进行降维,选用欧氏距离,对降维后的低维矩阵进行最近邻分类。分类实验结果表明,相比把数据都截断为最小长度或者将数据随机填充为最长长度,本文提出的填充算法更有优势,利用BPCA分类的错误率更低。