2. 广东工业大学 自动化学院, 广东 广州 510006
2. School of Automation, Guangdong University of Technology, Guangzhou 510006, China
支持向量机[1]是由Vapnik提出的一种用于二分类学习的监督学习模型。支持向量机可以找到最大化间隔两类的分割超平面。除了最大化间隔,支持向量机还最小化分类误差。如今,支持向量机已广泛用于文本分类[2]、人脸识别[3]、目标检测[4]和生物医疗[5]等领域。然而,支持向量机有着
为了加快训练速度,Mangasarian和Wild通过求解生成的特征值问题提出了寻求2个不平行超平面的模型[6](Generalized Eigenvalue Problem Support Vector Machine, GEPSVM) 。对于每一类数据点,GEPSVM给它们分配一个超平面,通过求解2个广义特征值问题,2个不平行的超平面就能得到,它们是2个特征向量,对应广义特征值问题的2个最小特征值。Jayadeva等[7]采用相似于GEPSVM的方法,提出了孪生支持向量机模型。类似地,它使一类的数据点靠近一个超平面,同时远离另一个超平面,从而导致求解的是2个小型的二次规划问题。与传统支持向量机需要求解单个大的二次规划问题不同,孪生支持向量机只计算2个小的二次规划问题,这使得孪生支持向量机的训练时间是传统支持向量机的四分之一[7]。孪生支持向量机已被拓展为各种变体,包括投影孪生支持向量机[8]、偏二叉树孪生支持向量机[9]和最小二乘孪生支持向量机(Least Squares Twin Support Vector Machine, LSTSVM) [10-13]。最小二乘孪生支持向量机是由孪生支持向量机衍生而来,区别在于将孪生支持向量机中的不等式约束修改为最小二乘孪生支持向量机中的等式约束。因此,用一对线性方程组代替两个凸二次规划问题可以更高效地求解该问题。
现有的有关孪生支持向量机的工作,大多假设训练数据可以准确地收集,没有任何不确定的信息。然而,由于传输干扰或测量误差,数据不可避免地包含不确定信息。为了处理数据的不确定性,Qi等[14]通过求解二阶锥规划(Second-Order Cone Programming, SOCP) 问题提出了一种鲁棒孪生支持向量机方法(Robust Twin Support Vector Machine, R-TWSVM) 用于模式识别。然而,它必须解决导致高计算成本的SOCP问题。
为此,本文提出了一种新的基于不确定数据的最小二乘孪生支持向量机方法,该方法能够高效地处理数据的不确定性。首先,考虑到数据可能包含不确定信息,引入一个噪声向量来建模每个实例的不确定信息。其次,将噪声向量融入最小二乘孪生支持向量机。最后,采用2步启发式框架求解优化问题。
1 面向不确定性数据的最小二乘孪生支持向量机 1.1 线性模型构建假设有2类训练实例。正类包括
所收集的实例数据
$ \begin{split} &\mathrm{min}\text{ }\dfrac{1}{2}\left\|({\boldsymbol{A}}+\Delta {\boldsymbol{A}}) {{\boldsymbol{\omega}} }^{(1) }+{{\boldsymbol{e}}}_{1}{b}^{(1) }\right\| {^{2}\text+\dfrac{1}{2}} \big\|({\boldsymbol{B}}+\Delta {\boldsymbol{B}}) {{\boldsymbol{\omega }}}^{(2) }+\\ &\qquad{{\boldsymbol{e}}}_{2}{b}^{(2) }\big\|^{2}+\dfrac{{C}_{1}}{2}{\left({{\boldsymbol{\xi }}}^{\left(1\right) }\right) }^{\text{T}}{{\boldsymbol{e}}}^{\left(1\right) }+\dfrac{{C}_{2}}{2}{\left({{\boldsymbol{\xi}} }^{\left(2\right) }\right) }^{\text{T}}{{\boldsymbol{\xi }}}^{\left(2\right) },\\ &\text{s}\text{.t}\text{.}\left\{ \begin{array}{l}\left(({\boldsymbol{B}}+\Delta {\boldsymbol{B}}) {{\boldsymbol{\omega }}}^{(1) }+{{\boldsymbol{e}}}_{2}{b}^{(1) }\right) ={{\boldsymbol{e}}}_{2}-{{\boldsymbol{\xi }}}^{(1) },\\ ({\boldsymbol{A}}+\Delta {\boldsymbol{A}}) {{\boldsymbol{\omega }}}^{\left(2\right) }+{{\boldsymbol{e}}}_{1}{b}^{(2) }={{\boldsymbol{e}}}_{1}-{{\boldsymbol{\xi }}}^{(2) },\\ \left|\right|\Delta {{\boldsymbol{A}}}_{i}\left|\right|\leqslant{\delta }_{1i},\text{ }i=1,\cdots ,{m}_{1},\\ \left|\right|\Delta {{\boldsymbol{B}}}_{j}\left|\right|\leqslant{\delta }_{2j},\text{ }j=1,\cdots ,{m}_{2}\end{array} \right. \end{split} $ | (1) |
式中:
由于变量
为了求解问题(1) ,本文提出了由2个步骤组成的启发式框架。第1步,
首先初始化
$\begin{split} &\min \dfrac{1}{2}\left\|({\boldsymbol{A}} + \overline {\Delta {\boldsymbol{A}}} ){{\boldsymbol{\omega}} ^{(1)}} + {{\boldsymbol{e}}_1}{b^{(1)}}\right\| {{^2} + \dfrac{1}{2}} \big\|({\boldsymbol{B}} + \overline {\Delta {\boldsymbol{B}}} ){{\boldsymbol{\omega}} ^{(2)}}+\\ & \qquad{{\boldsymbol{e}}_2}{b^{(2)}}\big\|{^2} + \dfrac{{{C_1}}}{2}{\left( {{{\boldsymbol{\xi}} ^{\left( 1 \right)}}} \right)^{\rm{T}}}{{\boldsymbol{\xi}} ^{\left( 1 \right)}} + \dfrac{{{C_2}}}{2}{\left( {{{\boldsymbol{\xi }}^{\left( 2 \right)}}} \right)^{\rm{T}}}{{\boldsymbol{\xi }}^{\left( 2 \right)}},\\ &{\rm{s}}{\rm{.t}}{\rm{.}}\left\{ \begin{array}{l} - ( {({\boldsymbol{B}} + \overline {\Delta {\boldsymbol{B}}} ){{\boldsymbol{\omega}} ^{\left( 1 \right)}} + {{\boldsymbol{e}}_2}{b^{(1)}}} ) = {{\boldsymbol{e}}_2} - {{\boldsymbol{\xi}} ^{(1)}},\\ ({\boldsymbol{A}} + \overline {\Delta {\boldsymbol{A}}} ){{\boldsymbol{\omega}} ^{\left( 2 \right)}} + {{\boldsymbol{e}}_1}{b^{(2)}} = {{\boldsymbol{e}}_1} - {{\boldsymbol{\xi}} ^{(2)}} \end{array} \right.\\ \end{split} $ | (2) |
当
$ \begin{split} & \min \frac{1}{2}\left\|({{{\boldsymbol{A}} + \Delta {\boldsymbol{A}}}}) {{\boldsymbol{\omega}} ^{(1) }} + {{\boldsymbol{e}}_1}{b^{(1) }}\right\|{^2} + \frac{{{C_1}}}{2}{( {{{\boldsymbol{\xi}} ^{\left( 1 \right) }}} ) ^{\text{T}}}{{\boldsymbol{\xi}} ^{\left( 1 \right) }}, \\ & \qquad{\text{s}}{\text{.t}}{\text{.}} - ( {({\boldsymbol{B}} + \overline {\Delta {\boldsymbol{B}}} ) {{\boldsymbol{\omega}} ^{\left( 1 \right) }} + {{\boldsymbol{e}}_2}{b^{(1) }}} ) = {{\boldsymbol{e}}_2} - {{\boldsymbol{\xi}} ^{(1) }} \end{split} $ | (3) |
$ \begin{split} & \min \frac{1}{2}\left\|({\boldsymbol{B}} + \overline {\Delta {\boldsymbol{B}}} ) {{\boldsymbol{\omega}} ^{(2) }} + {{\boldsymbol{e}}_2}{b^{(2) }}\right\|{^2} + \frac{{{C_2}}}{2}{( {{{\boldsymbol{\xi}} ^{\left( 2 \right) }}} ) ^{\text{T}}}{{\boldsymbol{\xi}} ^{\left( 2 \right) }}, \\ & \qquad{\text{s}}{\text{.t}}.{\text{ }}({\boldsymbol{A}} + \overline {\Delta {\boldsymbol{A}}} ) {{\boldsymbol{\omega}} ^{\left( 2 \right) }} + {{\boldsymbol{e}}_1}{b^{(2) }} = {{\boldsymbol{e}}_1} - {{\boldsymbol{\xi}} ^{(2) }} \end{split} $ | (4) |
通过将等式约束代入到优化问题,问题(3) 变为
$ \begin{gathered} \min \frac{1}{2}\left\|({\boldsymbol{A}} + \Delta {\boldsymbol{A}}) {{\boldsymbol{\omega}} ^{(1) }} + {{\boldsymbol{e}}_1}{b^{(1) }}\right\|{^2} + \frac{{{C_1}}}{2}\big\|({\boldsymbol{B}} + \Delta {\boldsymbol{B}}) {{\boldsymbol{\omega}} ^{\left( 1 \right) }} + \\ \qquad{{\boldsymbol{e}}_2}{b^{(1) }} + {{\boldsymbol{e}}_2}\big\|{^2} \\ \end{gathered} $ | (5) |
因为问题(5) 是一个凸函数,对
$ \left( {\begin{array}{*{20}{c}} {{{\boldsymbol{\omega}} ^{\left( 1 \right) }}} \\ {{b^{\left( 1 \right) }}} \end{array}} \right) = - {\left( {{{\boldsymbol{F}}^{\text{T}}}{\boldsymbol{F}} + \frac{1}{{{C_1}}}{{\boldsymbol{E}}^{\text{T}}}{\boldsymbol{E}}} \right) ^{ - 1}}{{\boldsymbol{F}}^{\text{T}}}{{\boldsymbol{e}}_2} $ | (6) |
这里,
同理,问题(4) 的解为
$ \left( {\begin{array}{*{20}{c}} {{{\boldsymbol{\omega}} ^{\left( 2 \right) }}} \\ {{b^{\left( 2 \right) }}} \end{array}} \right) = {\left( {{{\boldsymbol{E}}^{\text{T}}}{\boldsymbol{E}} + \frac{1}{{{C_2}}}{{\boldsymbol{F}}^{\text{T}}}{\boldsymbol{F}}} \right) ^{ - 1}}{{\boldsymbol{E}}^{\text{T}}}{{\boldsymbol{e}}_1} $ | (7) |
在第1步学习中,可以得到2个不平行分类器
$ \begin{array}{l}\mathrm{min}\text{ }\dfrac{1}{2}\left\|({\boldsymbol{A}}+\Delta {\boldsymbol{A}}) \overline{{{\boldsymbol{\omega}} }^{(1) }}+{{\boldsymbol{e}}}_{1}\overline{{b}^{(1) }}\right\|^{2}\text+\dfrac{1}{2}\big\|({\boldsymbol{B}}+\Delta {\boldsymbol{B}}) \overline{{{\boldsymbol{\omega }}}^{(2) }}+ \\ \qquad{{\boldsymbol{e}}}_{2}\overline{{b}^{(2) }}\big\|^{2}+\dfrac{{C}_{1}}{2}{({{\boldsymbol{\xi }}}^{\left(1\right) }) }^{\text{T}}{{\boldsymbol{\xi }}}^{\left(1\right) }+\dfrac{{C}_{2}}{2}{({{\boldsymbol{\xi }}}^{\left(2\right) }) }^{\text{T}}{{\boldsymbol{\xi }}}^{\left(2\right) },\\ \text{s}\text{.t}.\left\{ \begin{array}{l}-(({\boldsymbol{B}}+\Delta {\boldsymbol{B}}) \overline{{{\boldsymbol{\omega }}}^{\left(1\right) }}+{{\boldsymbol{e}}}_{2}\overline{{b}^{(1) }}) ={{\boldsymbol{e}}}_{2}-{{\boldsymbol{\xi }}}^{(1) },\\ ({\boldsymbol{A}}+\Delta {\boldsymbol{A}}) \overline{{{\boldsymbol{\omega }}}^{\left(2\right) }}+{{\boldsymbol{e}}}_{1}\overline{{b}^{(2) }}={{\boldsymbol{e}}}_{1}-{{\boldsymbol{\xi }}}^{(2) },\\ \left|\right|\Delta {{\boldsymbol{A}}}_{i}\left|\right|\leqslant{\delta }_{1i},\text{ }i=1,\cdots ,{m}_{1},\\ \left|\right|\Delta {{\boldsymbol{B}}}_{j}\left|\right|\leqslant{\delta }_{2j},\text{ }j=1,\cdots ,{m}_{2}\end{array} \right.\end{array} $ | (8) |
在问题(8) ,第1个和第2个约束式都是等式约束,将它们代入到问题(8) ,可以得到
$ \begin{array}{l}\mathrm{min}\text{ }\dfrac{1}{2}\left\|({\boldsymbol{A}}+\Delta {\boldsymbol{A}}) \overline{{{\boldsymbol{\omega }}}^{(1) }}+{{\boldsymbol{e}}}_{1}\overline{{b}^{(1) }}\right\|^{2}+\dfrac{1}{2}\big\|({\boldsymbol{B}}+\Delta {\boldsymbol{B}}) \overline{{{\boldsymbol{\omega }}}^{(2) }}+\\ \qquad{{\boldsymbol{e}}}_{2}\overline{{b}^{(2) }}\big\|^{2}+\dfrac{{C}_{1}}{2}\left\|({\boldsymbol{B}}+\Delta {\boldsymbol{B}}) \overline{{{\boldsymbol{\omega }}}^{(1) }}+{{\boldsymbol{e}}}_{2}\overline{{b}^{(1) }}+{{\boldsymbol{e}}}_{2}\right\|^{2}+\\ \qquad\dfrac{{C}_{2}}{2}\left\|({\boldsymbol{A}}+\Delta {\boldsymbol{A}}) \overline{{{\boldsymbol{\omega }}}^{(2) }}+{{\boldsymbol{e}}}_{1}\overline{{b}^{(2) }}-{{\boldsymbol{e}}}_{1}\right\|^{2},\\ \text{s}\text{.t}\left\{ \begin{array}{l}\left\|\Delta {{\boldsymbol{A}}}_{i}\right\|\leqslant{\delta }_{1i},\text{ }i=1,\cdots ,{m}_{1},\\ \left\|\Delta {{\boldsymbol{B}}}_{j}\right\|\leqslant{\delta }_{2j},\text{ }j=1,\cdots ,{m}_{2}\\ \end{array} \right.\end{array} $ | (9) |
根据文献[15],采用块坐标下降法进行更新
$ \Delta {{\boldsymbol{A}}_i} = \frac{{{\delta _{1i}}}}{{\max (||{d_{{A_i}}}||,{\delta _{1i}}) }}{d_{{A_i}}} $ | (10) |
$ \Delta {{\boldsymbol{B}}_j} = \frac{{{\delta _{2j}}}}{{\max (||{d_{{B_j}}}||,{\delta _{2j}}) }}{d_{{B_j}}} $ | (11) |
式中:
$ \begin{split} {\nabla _{\Delta {\boldsymbol{A}}}} =& ({\left({\boldsymbol{A}}{\text{ + }}\Delta {\boldsymbol{A}}\right) ^{\text{T}}}\overline {{{\boldsymbol{\omega }}^{(1) }}} + {{\boldsymbol{e}}_1}\overline {{b^{(1) }}} ) {(\overline {{{\boldsymbol{\omega }}^{(1) }}} ) ^{\text{T}}} - {C_2}({{\boldsymbol{e}}_1} - \\ &\left({\boldsymbol{A}} + \Delta {\boldsymbol{A}}\right) \overline {{{\boldsymbol{\omega }}^{(2) }}} - {{\boldsymbol{e}}_2}\overline {{b^{(2) }}} ) {(\overline {{{\boldsymbol{\omega}} ^{(2) }}} ) ^{\text{T}}} \\ \end{split} $ | (12) |
$ \begin{split} {\nabla _{\Delta {\boldsymbol{B}}}} =& ({\left({\boldsymbol{B}}{\text{ + }}\Delta {\boldsymbol{B}}\right) ^{\text{T}}}\overline {{{\boldsymbol{\omega }}^{(2) }}} + {{\boldsymbol{e}}_2}\overline {{b^{(2) }}} ) {(\overline {{{\boldsymbol{\omega }}^{(2) }}} ) ^{\text{T}}} + {C_1}({{\boldsymbol{e}}_2} - \\ &({\boldsymbol{B}} + \Delta {\boldsymbol{B}}) \overline {{{\boldsymbol{\omega}} ^{(1) }}} + {{\boldsymbol{e}}_2}\overline {{b^{(1) }}} ) {(\overline {{{\boldsymbol{\omega }}^{(1) }}} ) ^{\text{T}}} \\ \end{split} $ | (13) |
本文采用一个启发式框架来求解目标方程(1) 。在第1步中,固定矩阵
此外,在问题(1) 中,需要给出参数
算法1 面向不确定数据的最小二乘孪生支持向量机
输入:
输出:
1 构建数据矩阵A和B;
2 初始化t=0,
3 重复:
4 t=t+1;
5 if (t= =1) :
6 初始化
7 else:
8 用式(10) 和(11) 更新
9 替换
10 计算优化问题(1) 的
11 使
12 直到
13 返回
受非线性孪生支持向量机的启发,这里将线性ULSTSVM扩展到非线性情况,旨在学习2个用核函数生成的超平面(14) 和(15) 。
$ K({{\boldsymbol{x}}^{{\text{T}}}} + \Delta {\boldsymbol{x}},{{\boldsymbol{C}}^{{\text{T}}}}) {{{\boldsymbol{u}}}^{(1) }} + {b^{(1) }} = 0 $ | (14) |
$ K({{\boldsymbol{x}}^{{\text{T}}}} + \Delta {\boldsymbol{x}},{{\boldsymbol{C}}^{{\text{T}}}}) {{{\boldsymbol{u}}}^{(2) }} + {b^{(2) }} = 0 $ | (15) |
式中:
在问题(1)中,将
$ \begin{array}{l}\mathrm{min} \dfrac{1}{2} \left\| K ( {\boldsymbol{A}} + \Delta {\boldsymbol{A}},{{\boldsymbol{C}}}^{\text{T}} ) {{\boldsymbol{u}}}^{(1) } + {{\boldsymbol{e}}}_{1}{b}^{(1) }\right\|^{2} \text+ \dfrac{1}{2}\big\| K ( {\boldsymbol{B}}+\Delta {\boldsymbol{B}},{{\boldsymbol{C}}}^{\text{T}} ) {{\boldsymbol{u}}}^{(2) } +\\ \qquad{{\boldsymbol{e}}}_{2}{b}^{(2) }\big\|^{2}+\dfrac{{C}_{1}}{2}{({{\boldsymbol{\xi}} }^{\left(1\right) }) }^{\text{T}}{{\boldsymbol{\xi }}}^{\left(1\right) }+\dfrac{{C}_{2}}{2}{({{\boldsymbol{\xi }}}^{\left(2\right) }) }^{\text{T}}{{\boldsymbol{\xi}} }^{\left(2\right) },\\ \text{s}\text{.t}\text{.}\left\{ \begin{array}{l}-(K({\boldsymbol{B}}+\Delta {\boldsymbol{B}},{{\boldsymbol{C}}}^{{\rm{T}}}) {{\boldsymbol{u}}}^{\left(1\right) }+{{\boldsymbol{e}}}_{2}{b}^{(1) }) ={{\boldsymbol{e}}}_{2}-{{\boldsymbol{\xi }}}^{(1) }\\ K({\boldsymbol{A}}+\Delta {\boldsymbol{A}},{{\boldsymbol{C}}}^{{\rm{T}}}) {{\boldsymbol{u}}}^{\left(2\right) }+{{\boldsymbol{e}}}_{1}{b}^{(2) }={{\boldsymbol{e}}}_{1}-{{\boldsymbol{\xi }}}^{(2) }\\ \left|\right|\Delta {{\boldsymbol{A}}}_{i}\left|\right|\leqslant{\delta }_{1i},\text{ }i=1,\cdots ,{m}_{1}\\ \left|\right|\Delta {{\boldsymbol{B}}}_{j}\left|\right|\leqslant{\delta }_{2j},\text{ }j=1,\cdots ,{m}_{2}\end{array} \right.\end{array} $ | (16) |
在第1步中,固定
$ \left( {\begin{array}{*{20}{c}} {{{\boldsymbol{u}}^{\left( 1 \right) }}} \\ {{b^{\left( 1 \right) }}} \end{array}} \right) = - {\left( {{{\boldsymbol{H}}^{\text{T}}}{\boldsymbol{H}} + \frac{1}{{{C_1}}}{{\boldsymbol{G}}^{\text{T}}}{\boldsymbol{G}}} \right) ^{ - 1}}{{\boldsymbol{H}}^{\text{T}}}{{\boldsymbol{e}}_2} $ | (17) |
$ \left( {\begin{array}{*{20}{c}} {{{\boldsymbol{u}}^{\left( 2 \right) }}} \\ {{b^{\left( 2 \right) }}} \end{array}} \right) = - {\left( {{{\boldsymbol{G}}^{\text{T}}}{\boldsymbol{G}} + \frac{1}{{{C_2}}}{{\boldsymbol{H}}^{\text{T}}}{\boldsymbol{H}}} \right) ^{ - 1}}{{\boldsymbol{G}}^{\text{T}}}{{\boldsymbol{e}}_1} $ | (18) |
式中:
然而,式(17) 和(18) 包含大小为
当
$ \left( {\begin{array}{*{20}{c}} {{{\boldsymbol{u}}^{(1) }}} \\ {{b^{(1) }}} \end{array}} \right) = - ({\boldsymbol{Y}} - {\boldsymbol{Y}}{{\boldsymbol{G}}^{\text{T}}}{({C_1}{\boldsymbol{I}} + {\boldsymbol{G}}{\boldsymbol{Y}}{{\boldsymbol{G}}^{\text{T}}}) ^{ - 1}}{\boldsymbol{G}}{\boldsymbol{Y}}) {{\boldsymbol{H}}^{\text{T}}}{\boldsymbol{e}} $ | (19) |
$ \left( {\begin{array}{*{20}{c}} {{{\boldsymbol{u}}^{(2) }}} \\ {{b^{(2) }}} \end{array}} \right) = {C_2}\left({\boldsymbol{Y}} - {\boldsymbol{Y}}{{\boldsymbol{G}}^{\text{T}}}{\left(\frac{{\boldsymbol{I}}}{{{C_2}}} + {\boldsymbol{G}}{\boldsymbol{Y}}{{\boldsymbol{G}}^{\text{T}}}\right) ^{ - 1}}{\boldsymbol{G}}{\boldsymbol{Y}}\right) {{\boldsymbol{G}}^{\text{T}}}{\boldsymbol{e}} $ | (20) |
式中:
当
$ \left( {\begin{array}{*{20}{c}} {{{\boldsymbol{u}}^{(1) }}} \\ {{b^{(1) }}} \end{array}} \right) = - {C_1}\left({\boldsymbol{Z}} - {\boldsymbol{Z}}{{\boldsymbol{H}}^{\text{T}}}{\left(\frac{{\boldsymbol{I}}}{{{C_2}}} + {\boldsymbol{H}}{\boldsymbol{Z}}{{\boldsymbol{H}}^{\text{T}}}\right) ^{ - 1}}{\boldsymbol{HZ}}\right) {{\boldsymbol{H}}^{\text{T}}}{\boldsymbol{e}} $ | (21) |
$ \left( {\begin{array}{*{20}{c}} {{{\boldsymbol{u}}^{(2) }}} \\ {{b^{(2) }}} \end{array}} \right) = ({\boldsymbol{Z}} - {\boldsymbol{Z}}{{\boldsymbol{H}}^{\text{T}}}{({{\boldsymbol{C}}_2}{\boldsymbol{I}} + {\boldsymbol{HZ}}{{\boldsymbol{H}}^{\text{T}}}) ^{ - 1}}{\boldsymbol{HZ}}) {{\boldsymbol{G}}^{\text{T}}}{\boldsymbol{e}} $ | (22) |
式中:
在第2步中,固定
$ \begin{split} {\nabla _{\Delta {\boldsymbol{A}}}} =& (K({\boldsymbol{A}} + \Delta {\boldsymbol{A}},{{\boldsymbol{C}}^{\rm{T}}}) \overline {{{{\boldsymbol{u}}}^{(1)}}} {\rm{ + }}{{\boldsymbol{e}}_1}\overline {{b^{(1)}}} \times {\overline {{{{{\boldsymbol{u}}}}^{(1)}}} ^{\rm{T}}} \times \\ & K{'}{({\boldsymbol{A}} + \Delta {\boldsymbol{A}},{{\boldsymbol{C}}^{\rm{T}}})^{\rm{T}}} + {C_2}(K({\boldsymbol{A}} + \Delta {\boldsymbol{A}},{{\boldsymbol{C}}^{\rm{T}}}) \overline {{{{{\boldsymbol{u}}}}^{(2)}}} - \\ &{{\boldsymbol{e}}_1}\overline {{b^{(2)}}} + {{\boldsymbol{e}}_1}) {\overline {{{{{\boldsymbol{u}}}}^{(2)}}} ^{\rm{T}}} {( - K{'}({\boldsymbol{A}} + \Delta {\boldsymbol{A}},{{\boldsymbol{C}}^{\rm{T}}}))^{\rm{T}}} \end{split} $ | (23) |
$ \begin{split} {\nabla _{\Delta {\boldsymbol{B}}}} =& (K({\boldsymbol{B}} + \Delta {\boldsymbol{B}},{{\boldsymbol{C}}^{\text{T}}}) \overline {{{{\boldsymbol{u}}}^{(2) }}} + {{\boldsymbol{e}}_2}\overline {{b^{(2) }}} ) {\overline {{{{{\boldsymbol{u}}}}^{(2) }}} ^{\text{T}}} \times \\ & K'{({\boldsymbol{B}} + \Delta {\boldsymbol{B}},{{\boldsymbol{C}}^{\text{T}}}) ^{\text{T}}} + {C_1}(K({\boldsymbol{B}} + \Delta {\boldsymbol{B}},{{\boldsymbol{C}}^{\text{T}}}) \overline {{{{{\boldsymbol{u}}}}^{(1) }}}+ \\ &{{\boldsymbol{e}}_2}\overline {{b^{(1) }}} + {{\boldsymbol{e}}_2}) {\overline {{{{{\boldsymbol{u}}}}^{(1) }}} ^{\text{T}}} K'{({\boldsymbol{B}} + \Delta {\boldsymbol{B}},{{\boldsymbol{C}}^{\text{T}}}) ^{\text{T}}} \end{split} $ | (24) |
本文将ULSTSVM与3个对比方法在不同数据集上进行比较,以验证其有效性。所有的实验都在MATLAB中运行,机器设备是一台Intel Core I5 CPU、4GB内存的笔记本电脑。在实验中,本文的目标是:(1) 在真实数据集上验证ULSTSVM的性能。(2) 当噪声数据呈百分比变化时,验证ULSTSVM的性能。(3) 验证ULSTSVM的训练时间。
2.1 对比方法与实验设置第1个对比方法是最小二乘孪生支持向量机LSTSVM[10],它生成2个不平行超平面来分离2类数据点。然而,LSTSVM假设数据可以精确收集,并且数据中没有不确定的信息。它没有考虑数据的不确定性问题。它用于展示ULSTSVM在处理不确定数据方面的性能。
第2个对比方法是鲁棒孪生支持向量机R-TWSVM[14],用于处理孪生支持向量机中的实例噪声问题。然而,它需要解决具有高时间复杂度的SOCP问题。它用于展示ULSTSVM的训练效率。
第3个对比方法是总支持向量机(Total Support Vector Classification, TSVC) [18],它是基于传统支持向量机并且考虑了数据的不确定性。
本文在UCI数据集和真实的不确定数据集上测试上述方法。本文使用准确率作为UCI数据集的评估指标,并使用F1度量作为真实不确定数据集的评估指标。在实验中,分别使用了线性核和RBF核。对于所有的方法,如果使用RBF核,核参数
UCI数据集包括“Hepatitis” “WPBC”“BUPA liver”“Heart-Stalog”“Sonar”“Votes” “Australian”“German”“Breast”和 “Pima”。本文采用十折交叉验证来记录结果。对于每个数据集,将其分成相等的10个部分。在每一轮中,训练集由9个部分组成,剩下的一部分作为测试集处理,并记录准确率的平均结果。按照文献[19-21]的方法生成UCI数据集中的不确定信息。对于每一个维度,计算数据集的标准偏差
![]() |
表 1 RBF核在UCI数据集上的分类准确率 Table 1 Classification accuracy of the RBF kernel on the UCI dataset |
从表1中可以看出,本文的方法ULSTSVM明显比LSTSVM获得更高的分类准确率,同时在大多数UCI数据集中,分类准确率与R-TWSVM和TSVC相当。本文的方法不同于LSTSVM,因为LSTSVM没有考虑到数据的不确定性。在每个实例中引入一个噪声变量来对不确定信息进行建模,并对该变量进行优化,以获得更鲁棒的分类超平面。与LSTSVM相比,ULSTSVM具有更好的性能,这表明本文的方法能够有效地处理不确定数据。
2.3 真实的不确定数据集本文在个人活动定位数据集(Localization Data Person Activity,LDPA) 上进行了实验。LDPA是基于传感器的异常活动预测的数据集。它包含5个人的11项活动。这些活动有“摔倒”“走路”“躺下”“洗衣服”“四肢着地”等。按照文献[22]中的处理方式,将11项活动分为两类。“四肢着地”“摔倒”“坐在地上站起来”和“坐在地上”被分为正类,其余活动被视为负类。在文献[22]中,F1值用作评估指标,它是平衡精确率p和召回率r的一个指标。计算F1值的方法是
ULSTSVM和3种对比方法在LDPA数据集上的F1值如图1所示。很明显地看到,ULSTSVM在LDPA数据集上获得了最高的F1值。具体来说,LSTSVM具有最低的F1值,因为它没有考虑数据的不确定性。此外,ULSTSVM与R-TWSVM和TSVC的分类性能相当。本文引入噪声向量
![]() |
图 1 不同方法在LDPA数据集上的F1值 Figure 1 F1-measure values of different methods on the LDPA dataset |
在本小节中,研究ULSTSVM、LSTSVM、R-TWSVM和TSVC对不同数据噪声水平的敏感性。这里让噪声百分比从0%上升到100%。在图2中,x轴为噪声百分比,y轴为平均准确率。首先可以看出,当噪声百分比增加时,4种方法的分类性能同步降低。这是由于随着噪声数据点的增加,正类和负类之间的分类边界存在偏差,分类器很难对正负数据进行分类。其次,当噪声数据的比例从20%增加到100%时,ULSTSVM比LSTSVM有更高的分类准确率。因为考虑了数据不确定的影响,ULSTSVM能够获得比LSTSVM更好的分类性能。最后,ULSTSVM与R-TWSVM和TSVC相比,ULSTSVM在大多数数据集上都具有更好的分类效果。
![]() |
图 2 不同方法在不同噪声水平数据集上的分类准确率 Figure 2 Accuracy of different methods on the datasets with different levels of noise |
在上述几个小节中,研究了ULSTSVM和3种对比方法在UCI数据集和LDPA数据集上的分类性能以及对不同数据噪声水平的敏感性,本节将比较它们的训练时间。图3给出了ULSTSVM、R-TWSVM和TSVC在UCI数据集上的训练时间。首先,可以看到ULSTSVM在所有数据集上都用了最少的训练时间,是最高效的方法。其次,ULSTSVM的训练速度比R-TWSVM快得多。R-TWSVM需要解决计算量较大的SOCP问题。而ULSTSVM没有像R-TWSVM那样求解SOCP问题,只是求解线性方程组,这使得本文的方法比R-TWSVM训练得更快。最后,ULSTSVM明显比TSVC快。TSVC是基于传统支持向量机的,因此它求解的是单个具有不等式约束的大规模的二次规划问题。相比之下,ULSTSVM是基于最小二乘孪生支持向量机的,因此它只需求解2个较小规模的二次规划问题,这使得ULSTSVM比TSVC更高效。
![]() |
图 3 不同方法在UCI数据集上的训练时间 Figure 3 The training time of different methods on the UCI dataset |
本文提出了一种用于求解带有不确定数据的最小二乘孪生支持向量机模型ULSTSVM。ULSTSVM是R-TWSVM在最小二乘意义上的扩展。与需要解决SOCP问题的R-TWSVM相比,ULSTSVM更加高效,因为它只需求解线性方程组。在ULSTSVM中,首先,引入噪声向量对每个实例的不确定信息进行建模,并在训练阶段对噪声向量进行优化,使模型对噪声的影响不太敏感。其次,本文将最小二乘孪生支持向量机的思想融入到ULSTSVM中,使得这个方法比R-TWSVM跑得更快。最后,采用2步启发式框架解决了ULSTSVM的学习问题。
本文的方法ULSTSVM在训练速度上超过了R-TWSVM,同时也获得了相当不错的分类效果。
[1] |
CORTES C, VAPNIK V. Support-vector networks[J].
Machine Learning, 1995, 20(3): 273-297.
|
[2] |
LI S, KWOK J T, ZHU H, et al. Texture classification using the support vector machines[J].
Pattern Recognition, 2003, 36(12): 2883-2893.
DOI: 10.1016/S0031-3203(03)00219-X. |
[3] |
KHAN N M, KSANTITI R, AHMAD I S, et al. A novel SVM+NDA model for classification with an application to face recognition[J].
Pattern Recognition, 2012, 45(1): 66-79.
DOI: 10.1016/j.patcog.2011.05.004. |
[4] |
BILAL M. Algorithmic optimisation of histogram intersection kernel support vector machine-based pedestrian detection using low complexity features[J].
IET Computer Vision, 2017, 11(5): 350-357.
DOI: 10.1049/iet-cvi.2016.0403. |
[5] |
YUAN L, YAO E, TAN G. Automated and precise event detection method for big data in biomedical imaging with support vector machine[J].
International Journal of Computer Systems Science & Engineering, 2018, 33(2): 105-113.
|
[6] |
MANGASARIAN O L, WILD E W. Multisurface proximal support vector machine classification via generalized eigenvalues[J].
IEEE Transactions on Pattern Analysis and Machine Intelligence, 2005, 28(1): 69-74.
|
[7] |
KHEMCHANDANI R, CHANDRA S. Twin support vector machines for pattern classification[J].
IEEE Transactions on Pattern Analysis and Machine Intelligence, 2007, 29(5): 905-910.
DOI: 10.1109/TPAMI.2007.1068. |
[8] |
CHEN X, YANG J, YE Q, et al. Recursive projection twin support vector machine via within-class variance minimization[J].
Pattern Recognition, 2011, 44(10-11): 2643-2655.
DOI: 10.1016/j.patcog.2011.03.001. |
[9] |
SHAO Y H, ZHANG C H, WANG X B, et al. Improvements on twin support vector machines[J].
IEEE Transactions on Neural Networks, 2011, 22(6): 962-968.
DOI: 10.1109/TNN.2011.2130540. |
[10] |
KUMAR M A, GOPAL M. Least squares twin support vector machines for pattern classification[J].
Expert Systems with Applications, 2009, 36(4): 7535-7543.
DOI: 10.1016/j.eswa.2008.09.066. |
[11] |
KUMAR M A, KHEMCHANDANI R, GOPAL M, et al. Knowledge based least squares twin support vector machines[J].
Information Sciences, 2010, 180(23): 4606-4618.
DOI: 10.1016/j.ins.2010.07.034. |
[12] |
TANVEER M, SHARMA S, MUHAMMAD K. Large-scale least squares twin svms[J].
ACM Transactions on Internet Technology (TOIT), 2021, 21(2): 1-19.
|
[13] |
CHEN S G, WU X J, XU J. Locality preserving projection least squares twin support vector machine for pattern classification[J].
Pattern Analysis and Applications, 2020, 23(1): 1-13.
DOI: 10.1007/s10044-018-0728-x. |
[14] |
QI Z, TIAN Y, SHI Y. Robust twin support vector machine for pattern classification[J].
Pattern Recognition, 2013, 46(1): 305-316.
DOI: 10.1016/j.patcog.2012.06.019. |
[15] |
MAIRAL J, BACH F, PONCE J, et al. Online dictionary learning for sparse coding[C]//Proceedings of the 26th Annual International Conference on Machine Learning. New York: ACM, 2009: 689-696.
|
[16] |
ZHAO B, WANG F, ZHANG C. Efficient multiclass maximum margin clustering[C]//Proceedings of the 25th International Conference on Machine Learning. New York: ACM, 2008: 1248-1255.
|
[17] |
LIU B, XIAO Y, CAO L, et al. One-class-based uncertain data stream learning[C]//Proceedings of the 2011 SIAM International Conference on Data Mining. Society for Industrial and Applied Mathematics. Philadelphia: SIAM, 2011: 992-1003.
|
[18] |
BI J, ZHANG T. Support vector classification with input data uncertainty[C]//Neural Information Processing Systems. Cambridge: MIT Press, 2004: 161-168.
|
[19] |
TSANG S, KAO B, YIP K Y, et al. Decision trees for uncertain data[J].
IEEE Transactions on Knowledge and Data Engineering, 2009, 23(1): 64-78.
|
[20] |
REN J, LEE S D, CHEN X, et al. Naive bayes classification of uncertain data[C]//2009 Ninth IEEE International Conference on Data Mining. Piscataway: IEEE, 2009: 944-949.
|
[21] |
GAO C, WANG J. Direct mining of discriminative patterns for classifying uncertain data[C]//Proceedings of the 16th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. New York: ACM, 2010: 861-870.
|
[22] |
YIN J, YANG Q, PAN J J. Sensor-based abnormal human-activity detection[J].
IEEE Transactions on Knowledge and Data Engineering, 2008, 20(8): 1082-1090.
DOI: 10.1109/TKDE.2007.1042. |