1、基于奇异值分解双支持矩阵分类机 江容 杨志霞 新疆大学数学与系统科学学院 摘 要: 针对以矩阵为输入的分类问题, 在多秩多线性双支持矩阵分类机的基础上, 建立了一个基于奇异值分解双支持矩阵分类机.对于矩阵输入, 基于矩阵奇异值分解定义了一个矩阵映射函数, 用来处理矩阵输入, 降低数据维数并形成一个新的训练集.通过学习新的训练集, 分类正确率将会升高, 训练时间将会减少.对五组数据集进行训练, 通过与其他分类方法相比, 基于奇异值分解双支持矩阵分类机是一个有效的分类器.关键词: 分类问题; 奇异值分解; 双支持矩阵机; 作者简介:江容 (1989-) , 男, 湖北天门人, 新疆大学硕士研究生.
2、研究方向;最优化方法, 支持张量机作者简介:杨志霞 (1977-) , 女, 新疆乌鲁木齐人, 新疆大学教授, 博士.研究方向:最优化方法, 支持张量机收稿日期:2017-04-29基金:国家自然科学基金项目 (11561066) Twin Support Matrix Classification Machine Based on Singular Value DecompositionJIANG Rong YANG Zhixia College of Mathematics and System Science, Xinjiang University; Abstract: Current
3、ly, the tensor, a form commonly seen, finds increasingly wider application in various kinds of fields.Matrix, as a second-order tensor, can be employed to bridge between a vector and a tensor.High order tensor can also be unfolded into matrix formulation.So, it is of vital significance to research i
4、nto matrix-input-based classification problems.For matrix-input-based classification problems, based on multi-rank multi-linear twin support matrix classification machine, a twinsupport matrix classification machine is built on the basis of singular value decomposition.A matrix projecting function i
5、s defined to handle matrix input on basis of matrix singular value decomposition, reducing the dimensions of matrix input and reformulating a new training set.By learning the new training set, the classification accuracy improves and the training time decreases.Five matrix data sets are then subject
6、ed to training and compared with other classification methods, the twin support matrix classification machine based on singular value decomposition is found to be an efficient classification machine.Keyword: Classification; Singular value decomposition; Twin support matrix classification machine; Re
7、ceived: 2017-04-290 引言现在的各种实际应用中, 张量被越来越广泛地应用.例如, 视觉识别1-2, 手掌仿真图片3, 医学图像4-5等.事实上, 矩阵是一个二阶张量, 可以用来建立向量与张量之间的桥梁.对于矩阵输入的分类问题, 已知常见的方法主要有两类, 一类是基于向量化的, 例如支持向量机6-10, 双支持向量机11-13, 以及由支持向量机, 双支持向量机扩展的一些分类模型.另一类是基于张量结构的, 例如支持张量机14-18, 以及结合支持向量机与支持张量机的关系建立的模型, 例如多秩多线性支持向量机19, 多秩多线性双支持矩阵分类机20.针对向量输入的二分类问题, 支持
8、向量机通过最大化两个平行的边界超平面的间隔, 来寻找一个分离超平面, 而双支持向量机目的在于寻找两个非平行的超平面, 使得每一类在靠近一个超平面的同时, 而尽可能远离另一个超平面.当输入为矩阵时, 最常见的方法是通过连接矩阵的每一行或者每一列, 把矩阵转化成向量.例如, 对于维数为 R 的矩阵输入, 向量化后为 R 的向量输入.这样使得输入的维数急剧增加, 同时也会丢失矩阵数据的结构信息19.支持张量机, 直接对张量输入进行分类.明显地, 计算时间会大幅度减少, 然而也可能存在一些问题, 比如大量的训练错误和欠拟合.多秩多线性支持向量机19, 结合支持向量机和支持张量机, 介绍了一种很巧妙的矩
9、阵分类模型, 用左右多秩映射代替支持张量机的左右映射向量.多秩多线性双支持矩阵机已取得了较好的结果20, 在许多矩阵数据的分类中, 与支持向量机和支持张量机相比, 多秩多线性支持向量机取得了更高的分类正确率, 以及比支持向量机更少的计算时间;与多秩多线性支持向量机相比, 多秩多线性双支持矩阵分类机进一步提高了分类正确率.但是, 对于大规模的矩阵输入, 依旧会存在计算时间较长的问题.李劼等21提出了基于几何特征和支持向量机的人脸检测.Hong22提出了基于奇异值分解的人脸识别方法, 将奇异值作为识别特征.图像矩阵的奇异值特征向量有对图像噪音、图像光照条件引起的灰度变化有良好稳定性等特性.在人脸识
10、别中, 利用奇异值分解对数据进行降维压缩处理, 舍弃较小的奇异值, 组成奇异值向量, 再进行训练和分类, 从而减少计算量和提高计算速度23.然而面对维数较高的数据或者数量很多的数据集, 对于计算机的存储和计算都是一个挑战.例如对于处理器为英特尔酷睿双核, 主频为 3.6Hz, 内存为 8GB 的计算机, 在应用 MATLAB 软件输入矩阵维数达到 R, 训练集数目超过 40 个时, 在计算过程中将会出现超出运行存储而不能运行的问题.对矩阵数据进行降维和特征选择不仅可以解决运行内存存储不够的问题, 还可以缩短计算时间和提高分类效果.本文在多秩多线性双支持矩阵分类机的基础上, 建立了一个非线性的双
11、支持矩阵分类机.基于奇异值分解提出了一个矩阵映射函数, 对于每一个矩阵输入, 首先进行奇异值分解, 然后提取适当的奇异值构建对角矩阵, 从而降低矩阵维数, 构成新的矩阵输入, 达到减少计算时间和提高分类正确率的目的.1 背景1.1 与奇异值分解的几个相关定义定义 1.122奇异值分解.对于矩阵 AR, 如果 A 的秩是 r, 那么存在两个酉矩阵 U=u1, u2, , umR 和 V=v1, v2, , vmR 使得其中, =diag ( 1, 2, , r) 以及 1 2 r0 是奇异值, 也是 AA 或 AA 的特征值的平方根 ( 1, 2, , r) , 即 i= ( i) .定义 1.
12、222 (奇异值分解矩阵映射函数: d:RR) 对于矩阵 AR, dr, 其中, S AR 是对角矩阵, r 为矩阵 A 的秩, 对角线的元素为矩阵 A 的前 d 个奇异值, 1 2 d0.在定义 1.1-1.2 的基础上定义奇异值降维压缩 d.定义 1.3 (奇异值降维压缩 d) 对于矩阵 AR, dr, 其中, 酉矩阵 UR 和 VR 为矩阵奇异值分解后的左右酉矩阵, r 为矩阵的秩.SAR 是对角矩阵, 对角线的元素为矩阵 A 的前 d 个奇异值, 1 2 d0.图 1 奇异值分解后不同特征个数的重建效果 下载原图李劼等22将图像特征分为 4 类:视觉特征、统计特征、变换系数特征和代数特
13、征.其中, 代数特征反映了图像的内在属性, 是一种本质特征, 奇异值之所以能作为一种代数特征在图像识别中得到应用, 其理论依据是:图像的奇异值具有良好的稳定性;奇异值反映了图像的一种代数本质, 这种本质不是直观的, 而是一种内在属性, 它具备代数和几何上的不变性.奇异值降维压缩时要在计算复杂度和正确识别率之间权衡.选的特征数太少影响识别效果, 选的特征数太多会增加计算量.图 1 从左向右依次是对来自 UCI22的机器学习数据集 Pedestrian 中的一幅街道行人图像分别提取 5、10、15、20、25、30 个特征重建后的图像和原图像.从图中可以看出 25 个特征重建后的图像和原图很接近,
14、 从直观上说明奇异值降维压缩是可行的.奇异值特征向量从较大维数降维到较小的维数, 从而减小了计算量.1.2 多秩多线性支持向量机其中 XiR 是矩阵输入, y i-1, 1是对应的输出.多秩多线性支持向量机18为了寻找一个分类超平面 f (X) =Tr (UXV) +b=0 而构建下列优化问题:其中, U=u 1, u2, , uKR, 和 V=v1, v2, , vKR 是分别左右投影矩阵.K是一个参数, 是 U 和 V 的秩.与支持向量机相比, 多秩多线性支持向量机有更低的计算复杂度和更少的变量, 与支持张量机相比, 多秩多线性支持向量机通过改善过拟合问题提高分类正确率19.2 本文分类方
15、法及相关算法对于训练集其中 XiR 是矩阵输入, y i-1, 1是对应的输出.为方便起见, 调整训练集 (5) 为以下形式其中, X iR 是矩阵输入, y i-1, 1是相应的输出, 前 l 个样本点属于正类集合, 其余的的属于负类集合, 即 yi=1, i=1, , l, yi=-1, i=l+1, , t.2.1 对输入进行重建为了对矩阵输入降维, 本文引入奇异值分解矩阵映射函数, 对于训练集 (6) , 分别对每一个矩阵输入, 进行奇异值分解并选取前 d 个奇异值构建对角矩阵 (参数 d 的取值需要根据具体的情况确定, 实验部分将进行分析) , 形成新的训练集其中, d (Xi) R
16、 是输入, d (X) 由定义 2.2 给出, y i-1, 1是相应的输出, 前 l 个样本点属于正类集合, 其余的的属于负类集合, 即 yi=1, i=1, , l, yi=-1, i=l+1, , t.训练集 (7) 为训练集 (6) 的输入进行代数特征提取后, 进行对角化后形成的.这样不仅降低了输入的维数, 同时也保证输入数据结构和矩阵稀疏化.下面, 对训练集 (7) 进行“学习“.我们的任务是寻找以下两个函数其中, U 1, U2R 和 V1, V2R 分别是左右投影矩阵, 参数 K 是左右投影矩阵的秩.为了得到函数 (8) , 建立以下优化问题和其中且 u1, k, u2, k,
17、v1, k, v2, kR, k=1, 2, , K.参数 K 是矩阵 U1, U2, V1, U2的秩.C 1, C2是惩罚参数, C 3, C4是正则项参数.显然, 优化问题 (9) 和 (10) 属于完全相同的问题, 求解方法也是相同的.因此, 给出的算法 1 来求解优化问题 (9) .至于求解优化问题 (10) , 只需要将算法 1 中相应的正、负类点交换它们在目标函数和约束条件中的位置20.求解U1, V1, b1的过程可以归结为算法 1.算法 1 求解 U1, V1, b1输入:训练集 (6) , 参数 Kminm, n, C 1, C30 以及 d输出:U 1, V1, b1(1
18、) 对训练集 (6) 的每一个矩阵输入 Xi, 对 Xi进行奇异值分解得到奇异值 1 2 r0, 截取前 d 个奇异值构建对角矩阵 d (Xi) =diag ( 1, 2, , d) , Xi d (Xi) , 得到训练集 (7) ;(2) 初始化 V1V 1, 令 k=0;(3) 求解优化问题 (9) 得到 U1和 b1;(4) U1U 1, 求解优化问题 (9) 得到 V1和 b1;(6) 输出 U1, V1, b1;最后, 可构建决策函数总结上述的求解过程可以归结为算法 2.算法 2 基于奇异值分解双支持矩阵分类机输入:训练集 (6) , 参数 Kminm, n, C 1, C30 以及
19、 d.输出:决策函数(1) 对训练集 (6) 的每一个矩阵输入 Xi, 对 Xi进行奇异值分解得到奇异值 1 2 r0, 截取前 d 个奇异值构建对角矩阵 d (Xi) =diag ( 1, 2, , d) , Xi d (Xi) , 得到训练集 (7) ;(2) 利用算法 1 求解优化问题 (9) 得到 U1, V1, b1;(3) 利用算法 1 求解优化问题 (10) 得到 U2, V2, b2;(4) 输出决策函数3 数值实验与结果分析3.1 数据集和评价指标五组来自 UCI 的机器学习数据集24, 分别是Pedestrian、Pollen、FingerDB、Binucleatet 和
20、RGB.特别的, Binucleate 是高维矩阵数据集, FingerDB 是指纹图片, RGB 是矩阵结构图片集.对于数据集如表 1 所示.表 1 数据集的详细特征 下载原表 数值实验是在 Windows 10 系统上完成, 处理器为英特尔酷睿双核, 主频为 3.6 Hz, 内存为 8GB, 通过 MATLABR2013b 来运行的.“Accuracy”, 代指分类正确率, 是用来衡量理论好坏的重要指标并定义如下:, 其中 TP, TN, FP 和 FN 分别是真阳性, 真阴性, 假阳性和假阴性的个数.每一种理论的分类正确率都是通过 K-折交叉验证的方法得出的.CPU训练时间是用来衡量理论
21、的计算复杂度的.参数 C1, C2, C3, C4是从集合10, i=-7, -6, , 7中选择的 (令 C1=C2, C3=C4) .为了比较基于奇异值分解双支持矩阵分类机与线性支持向量机, 核支持向量机, 多秩多线性支持向量机, 多秩多线性双支持矩阵分类机的分类效果, 五组矩阵数据用以训练, 如表 2 所示.列举了关于五组向量数据集在不同方法下的分类正确率 (最好的分类正确率用黑体标出) , 其中线性支持向量机和核支持向量机记录训练一次的时间, 而多秩多线性支持向量机, 多秩多线性双支持矩阵分类机和基于奇异值分解双支持矩阵分类机记录在 K=2 时, U 1, U2, V1, V2迭代 5
22、 次之后的时间.其中核支持向量机使用的核函数为高斯核, 基于奇异值分解双支持矩阵分类机在五组数据集的训练中, 使用奇异值分解矩阵映射函数中参数 d 所取的值分别为50、25、10、60、50.由表 2 可以看出, 基于奇异值分解双支持矩阵分类机在数据集 RGB (11vs18) 和 Binucleate 的分类中都达到了 100%, 在其它三组数据集的实验中也仅次于多秩多线性双支持矩阵分类机.基于奇异值分解双支持矩阵分类机具有选择特征和改善过拟合的作用, 在实际应用中可以提高分类效果.表 2 不同数据集在不同方法下的分类正确率和 CPU 运行时间 下载原表 运行时间结果表明, 基于奇异值分解双
23、支持矩阵分类机的运行时间与参数 d 的取值密切相关.基于奇异值分解双支持矩阵分类机在 d=minm, n时, 即对于数据集 RGB (11vs18) 和 Pollen (2vs7) 实验中, 基于奇异值分解双支持矩阵分类机并不占优, 而当参数 d 取较小的值时, 即余下三组数据集的实验中, 运行时间会明显缩短.特别的, 由数据集 Binucleate 看出, 当 d=50 时, 矩阵输入的规模由 1 2041 280 降低到 5050.在关于参数 d 的实验中, 将详细讨论.3.2 参数选择3.2.1 参数 K参数 K 为左右投影矩阵的秩, 关系到基于奇异值分解双支持矩阵分类机的表现.在接下来
24、的部分, 我们将分析参数 K 的选择问题.数据集 RGB 被选择进行实验, 在参数 r 选择 10、20、30、40、50 下进行了五组实验.参数 K 从 1 到 10, 我们用 4-折交叉验证的方法来选择对于最佳分类正确率的参数 Ci, i=1, 2, 3, 4.最后, 15 次独立的循环取平均分类正确率, 实验结果见图 2.从图 2 可以看出, 对于不同的参数 K, 分类正确率将是不同的, 实验结果反映了理论部分的分析, 适当的参数 K 将减少变量的个数, 改善过拟合问题并提高分类正确率.图 2 关于数据集 RGB, 对于不同参数 K 和 d 的分类正确率实验 下载原图3.2.2 参数 d
25、表 3 不同的参数 d 和 K 对应的的分类正确率 (%) 和 CPU 运行时间 下载原表 从表 3 可以看出, 对于数据集 Binucleate, 当参数 d=50, 60, 70, 80, 90 时, 分类正确率在 K4 时都达到了 100%.当 d=10 或 d=20 时, 分类正确率都低于 90%.在运行时间实验中, 随着 d 的增加, 运行时间也随之明显增加.显然, 参数 d 取值大小会影响基于奇异值分解双支持矩阵分类机分类正确率和计算时间.4 总结本文主要研究了一种多秩多线性双支持矩阵分类机的扩展基于奇异值分解双支持矩阵分类机.基于奇异值分解构建的矩阵映射函数, 降低数据维数, 降
26、低计算复杂度.另外, 加入一个正则项来提高模型的表现.对于五组 UCI 数据集, 与一些其他方法相比, 基于奇异值分解双支持矩阵分类机取得了不错的分类正确率以及较低的计算时间.最后, 本文还通过实验对参数 K 和 d 选择进行了分析, 选择适当的参数 K 和 d 可以提高分类正确率并缩短计算时间.参考文献1Pirsiavash H, Ramanan D, Fowlkes C C.Bilinear classifiers for visual recognitionC/Advances in neural information processing systems.2009:1482-1490
27、. 2Russakovsky O, Deng J, Su H, et al.Imagenet large scale visual recognition challengeJ.International Journal of Computer Vision, 2015, 115 (3) :211-252. 3Kong A, Zhang D, Kamel M.A survey of palmprint recognitionJ.pattern recognition, 2009, 42 (7) :1408-1418. 4Koo J J, Evans A C, Gross W J.3-D bra
28、in MRI tissue classification on FPGAsJ.IEEE Transactions on Image Processing, 2009, 18 (12) :2735-2746. 5Madheswaran M, Dhas D A S.Classification of brain MRI images using support vector machine with various KernelsJ.Biomedical Research, 2015, 26 (3) :505-513. 6Cortes C, Vapnik V.Support-vector netw
29、orksJ.Machine learning, 1995, 20 (3) :273-297. 7Vapnik V N.The nature of statistical learning theoryM.2ndEdition.New York:Springer, 2000. 8Rafiee-Taghanaki S, Arabloo M, Chamkalani A, et al.Implementation of SVM framework to estimate PVT properties of reservoir oilJ.Fluid Phase Equilibria, 2013, 346
30、:25-32. 9Subasi A.Classification of EMG signals using PSO optimized SVM for diagnosis of neuromuscular disordersJ.Computers in biology and medicine, 2013, 43 (5) :576-586. 10尹福成, 马明磊, 王桂玲, 等.基于支持向量机预测面外均布荷载下砌体墙板的破坏荷载J.内江师范学院学报, 2012, 27 (10) :28-32. 11Jayadeva, Khemchandani R, Chandra S.Twin Support
31、 Vector Machines for pattern classification.J.IEEE Transactions on Pattern Analysis&Machine Intelligence, 2007, 29 (5) :905-910. 12Shao Y H, Zhang C H, Wang X B, et al.Improvements on twin support vector machinesJ.IEEE transactions on neural networks, 2011, 22 (6) :962-968. 13Chen W J, Shao Y H, Ye
32、Y F.Improving Lap-TSVM with successive overrelaxation and differential evolutionJ.Procedia Computer Science, 2013, 17:33-40. 14Tao D, Li X, Hu W, et al.Supervised tensor learningC/Data Mining, Fifth IEEE International Conference on.IEEE, 2005:8. 15Tao D, Li X, Wu X, et al.Tensor Rank One Discriminant Analysis-A convergent method for discriminative multilinear subspace selectionJ.Neurocomputing, 2008, 71 (10/12) :1866-1882. 16Hao Z, He L, Chen B, et al.A linear support higherorder tensor machine for classificationJ.IEEE Transactions on Image Processing, 2013, 22 (7) :2911-2920.