广东工业大学学报  2024, Vol. 41Issue (1): 79-85.  DOI: 10.12052/gdutxb.220027.
0

引用本文 

刘锦能, 肖燕珊, 刘波. 基于最小二乘孪生支持向量机的不确定数据学习算法[J]. 广东工业大学学报, 2024, 41(1): 79-85. DOI: 10.12052/gdutxb.220027.
Liu Jin-neng, Xiao Yan-shan, Liu Bo. A Least Squares Twin Support Vector Machine Method with Uncertain Data[J]. JOURNAL OF GUANGDONG UNIVERSITY OF TECHNOLOGY, 2024, 41(1): 79-85. DOI: 10.12052/gdutxb.220027.

基金项目:

国家自然科学基金资助项目(62076074)

作者简介:

刘锦能(1996–) ,男,硕士研究生,主要研究方向为支持向量机。

通信作者

刘波(1978–) ,男,教授,博士,主要研究方向为机器学习、数据挖掘,E-mail:csboliu@163.com

文章历史

收稿日期:2022-02-21
基于最小二乘孪生支持向量机的不确定数据学习算法
刘锦能1, 肖燕珊1, 刘波2    
1. 广东工业大学 计算机学院, 广东 广州 510006;
2. 广东工业大学 自动化学院, 广东 广州 510006
摘要: 孪生支持向量机通过计算2个二次规划问题,得到2个不平行的超平面,用于解决二分类问题。然而在实际的应用中,数据通常包含不确定信息,这将会对构建模型带来困难。对此,提出了一种用于求解带有不确定数据的最小二乘孪生支持向量机模型。首先,对于每个实例,该方法都分配一个噪声向量来构建噪声信息。其次,将噪声向量结合到最小二乘孪生支持向量机,并在训练阶段得到优化。最后,采用一个2步循环迭代的启发式框架求解得到分类器和更新噪声向量。实验表明,跟其他对比方法比较,本方法采用噪声向量对不确定信息进行建模,并将孪生支持向量机的二次规划问题转化为线性方程,具有更好的分类精度和更高的训练效率。
关键词: 最小二乘    孪生支持向量机    不平行平面学习    数据不确定性    分类    
A Least Squares Twin Support Vector Machine Method with Uncertain Data
Liu Jin-neng1, Xiao Yan-shan1, Liu Bo2    
1. School of Computer Science and Technology, Guangdong University of Technology, Guangzhou 510006, China;
2. School of Automation, Guangdong University of Technology, Guangzhou 510006, China
Abstract: Twin support vector machine learns two nonparallel hyperplanes by calculating two quadratic programming problems to solve the binary classification problems. However, in practical applications, the data usually contain uncertain information, making it difficult to construct the classification model. This paper proposed a new and efficient uncertain-data-based least squares twin support vector machine (ULSTSVM) method to address the problem of data uncertainty. Firstly, since the data may contain uncertain information, a noise vector was introduced to model the uncertain information of each example. Secondly, the noise vectors were incorporated into the least squares TWSVM. Finally, to solve the derived learning problem, we employed a two-step heuristic framework to train the least squares TWSVM classifier and updated the noise vectors alternatively. The experiments showed that our proposed ULSTSVM outperforms the baselines in training time and meanwhile achieves comparable classification accuracy. In sum, ULSTSVM adopts a noise vector to model the uncertain information and transforms the quadratic programming problems of TWSVM into linear equations, such that better classification accuracy and higher training efficiency can be obtained.
Key words: least squares    twin support vector machine    nonparallel plane learning    data uncertainty    classification    

支持向量机[1]是由Vapnik提出的一种用于二分类学习的监督学习模型。支持向量机可以找到最大化间隔两类的分割超平面。除了最大化间隔,支持向量机还最小化分类误差。如今,支持向量机已广泛用于文本分类[2]、人脸识别[3]、目标检测[4]和生物医疗[5]等领域。然而,支持向量机有着$ { O}({n^2}) $的时间复杂度,导致它不能很好地应用在大规模数据的学习问题。

为了加快训练速度,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类训练实例。正类包括$ {m_1} $个实例,即$x_{11},{x_{12}},\cdots,x_{{1m}_{1}}$,其中$ {x_{1i}} $表示正类中的第i个实例。类似地,负类包含$ {m_2} $个实例,即$x_{21},{x_{22}},\cdots,x_{{2m}_{2}}$。每个实例的维度为n。本文构造矩阵${\boldsymbol{A}} \in {{ {R}}^{{m_1} \times n}}$${\boldsymbol{B}} \in { {R}^{{m_2} \times n}}$ ,分别表示正类和负类的数据实例。此方法的主要目标是构造一个能够有效处理不确定数据问题的不平行平面学习模型,并可高效地训练分类模型。

所收集的实例数据$ x $可能被噪声破坏。本文引入一个噪声向量$ \Delta x $对不确定性信息进行建模,使得真正的实例表示为$ x + \Delta x $。噪声向量$ \Delta x $是未知的,将在学习训练过程中得到优化。将实例表示为$ x + \Delta x $,对应地,数据矩阵${\boldsymbol{A}}$${\boldsymbol{B}}$可以表示为${\boldsymbol{A}} + \Delta {\boldsymbol{A}}$${\boldsymbol{B}} + \Delta {\boldsymbol{B}}$。基于上述定义,面向不确定性数据的线性最小二乘孪生支持向量机(Uncertain-data-based Least Squares Twin Support Vector Machine, ULSTSVM) 的优化公式可表示为

$ \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)

式中:${\boldsymbol{e}} $为单位向量,$b $为偏置量,$ {C_1} $$ {C_2} $为正则化权衡参数,$ {{\boldsymbol{\xi}} ^{\left( 1 \right) }} $$ {{\boldsymbol{\xi}} ^{\left( 2 \right) }} $为训练误差。边界参数${\delta }_{1i}\geqslant0$${\delta }_{2j}\geqslant0$用于限制不确定信息的范围,其中$\left|\right|\Delta {x}_{1i}\left|\right|\leqslant{\delta }_{1i}$$\left|\right|\Delta {x}_{2j}\left|\right|\leqslant{\delta }_{2j}$。相应地,可以得到$\left|\right|\Delta {{\boldsymbol{A}}}_{i}\left|\right|\leqslant{\delta }_{1i}$$\left|\right|\Delta {{\boldsymbol{B}}}_{j}\left|\right|\leqslant {\delta }_{2j}$。输入数据AB可能包含不确定信息,引入$\Delta {\boldsymbol{A}}$$\Delta {\boldsymbol{B}}$以消除数据的不确定性。调整校正后的数据可以表示为${\boldsymbol{A}} + \Delta {\boldsymbol{A}}$${\boldsymbol{B}} + \Delta {\boldsymbol{B}}$$\Delta {\boldsymbol{A}}$$\Delta {\boldsymbol{B}}$将在学习过程中得到优化。

1.2 模型求解

由于变量$ {{\boldsymbol{\omega}} ^{(1) }} $$ {b^{(1) }} $$ {{\boldsymbol{\omega}} ^{(2) }} $$ {b^{(2) }} $$ {{\boldsymbol{\xi}} ^{\left( 1 \right) }} $$ {{\boldsymbol{\xi }}^{\left( 2 \right) }} $$\Delta {\boldsymbol{A}}$$\Delta {\boldsymbol{B}}$是未知的,很难求解优化函数(1) 。在本文采用启发式框架来处理该优化问题,并提出了一种新的方案来评估每个训练数据点的边界参数$ {\delta _{1i}} $$ {\delta _{2j}} $

为了求解问题(1) ,本文提出了由2个步骤组成的启发式框架。第1步,$\Delta {\boldsymbol{A}}$$\Delta {\boldsymbol{B}}$是固定的,通过求解2个二次规划问题(3) 和(4) ,可以得到$ {{\boldsymbol{\omega }}^{(1) }} $$ {b^{(1) }} $$ {{\boldsymbol{\omega}} ^{(2) }} $$ {b^{(2) }} $。在第2步中,$ {{\boldsymbol{\omega }}^{(1) }} $$ {b^{(1) }} $$ {{\boldsymbol{\omega }}^{(2) }} $$ {b^{(2) }} $是固定的,更新$\Delta {\boldsymbol{A}}$$\Delta {\boldsymbol{B}}$。2个步骤的细节如下所示。

1.2.1 固定噪声向量,求解超平面

首先初始化$\Delta {\boldsymbol{A}}$$\Delta {\boldsymbol{B}}$,并确保$\left|\right|\Delta {{\boldsymbol{A}}}_{i}\left|\right|\leqslant{\delta }_{1i}$$\left|\right|\Delta {{\boldsymbol{B}}}_{j}\left|\right|\leqslant{\delta }_{2j}$。然后,可以移除优化问题(1) 中的约束$\left|\right|\Delta {{\boldsymbol{A}}}_{i}\left|\right|\leqslant{\delta }_{1i}$$\left|\right|\Delta {{\boldsymbol{B}}}_{j}\left|\right|\leqslant{\delta }_{2j}$。目标函数表示为

$\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)

$\Delta {\boldsymbol{A}}$$\Delta {\boldsymbol{B}}$给定,问题(2) 分为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) 是一个凸函数,对$ {\omega ^{(1) }} $$ {b^{(1) }} $分别求导并令它们等于0,可以得到

$ \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)

这里,${\boldsymbol{E}} = ( {{\boldsymbol{A}} + \overline {\Delta {\boldsymbol{A}}} }\quad{{{\boldsymbol{e}}_1}} )$${\boldsymbol{F}} =( {{\boldsymbol{B}} + \overline {\Delta {\boldsymbol{B}}} }\quad{{{\boldsymbol{e}}_2}} )$

同理,问题(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.2 固定超平面,求解噪声向量

在第1步学习中,可以得到2个不平行分类器$ {f_1}\left( x \right) = {( {{{\boldsymbol{\omega}} ^{\left( 1 \right) }}} ) ^{\text{T}}}x + {b^{(1) }} $$ {f_2}\left( x \right) = {( {{{\boldsymbol{\omega}} ^{\left( 2 \right) }}} ) ^{\text{T}}}x + {b^{(2) }} $。在第2步中,固定分类器,优化$\Delta {\boldsymbol{A}}$$\Delta {\boldsymbol{B}}$。具体来说,令$ {{\boldsymbol{\omega}} ^{\left( 1 \right) }}{\text{ = }} \overline {{{\boldsymbol{\omega}} ^{\left( 1 \right) }}} $$ {{\boldsymbol{\omega}} ^{\left( 2 \right) }}{\text{ = }}\overline {{{\boldsymbol{\omega}} ^{\left( 2 \right) }}} $$ {b^{\left( 1 \right) }}{\text{ = }}\overline {{b^{\left( 1 \right) }}} $$ {b^{\left( 2 \right) }}{\text{ = }}\overline {{b^{\left( 2 \right) }}} $,问题(1) 转化为

$ \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}}$$\Delta {\boldsymbol{B}}$。因此,本文的方法是无参数的,并且不必调整学习率。$\Delta {\boldsymbol{A}}$$\Delta {\boldsymbol{B}}$的梯度分别为

$ \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)

式中:$\Delta {\boldsymbol{A}} = ( {\Delta {{\boldsymbol{A}}_1}, \cdots ,} \Delta {{\boldsymbol{A}}_{{m_1}}} ) ^{\text{T}}$$\Delta {{\boldsymbol{A}}_i}$$\Delta {\boldsymbol{A}}$的第i个元素。类似地,有$\Delta {\boldsymbol{B}} = {( {\Delta {{\boldsymbol{B}}_1}, \cdots ,} \Delta {{\boldsymbol{B}}_{{m_2}}} ) ^{\text{T}}}$$\Delta {{\boldsymbol{B}}_j}$$\Delta {\boldsymbol{B}}$的第j个元素。有${d_{{{\boldsymbol{A}}_i}}} = \Delta {{\boldsymbol{A}}_i} + \eta {\left[ {{\nabla _{\Delta {\boldsymbol{A}}}}} \right]_i}$以及${d_{{B_j}}} = \Delta {{\boldsymbol{B}}_j} + \eta {\left[ {{\nabla _{\Delta {\boldsymbol{B}}}}} \right]_j}$,其中${\nabla _{\Delta {\boldsymbol{A}}}}$${\nabla _{\Delta {\boldsymbol{B}}}}$分别为$\Delta {\boldsymbol{A}}$$\Delta {\boldsymbol{B}}$的梯度。${\nabla _{\Delta {\boldsymbol{A}}}}$${\nabla _{\Delta {\boldsymbol{B}}}}$如式(12)、(13)所示。

$ \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.2.3 启发式框架

本文采用一个启发式框架来求解目标方程(1) 。在第1步中,固定矩阵$\Delta {\boldsymbol{A}}$$\Delta {\boldsymbol{B}}$,然后学习分类器$ {f_1}(x) $$ {f_2}(x) $。在第2步中,固定学习分类器$ {f_1}(x) $$ {f_2}(x) $,然后更新矩阵$\Delta {\boldsymbol{A}}$$\Delta {\boldsymbol{B}}$。在满足停止条件之前,这两个步骤将不断迭代。ULSTSVM的伪代码如算法1所示。这里使用文献[16]中的迭代停止标准来确定ULSTSVM的终止。设$ {F_{{\text{val}}}}\left( t \right) $表示目标函数(1) 在第t次迭代中的值。当$ |{F_{{\text{val}}}}\left( t \right) {{ - }}{F_{{\text{val}}}}\left( {t - 1} \right) | $$ {F_{\max }} $的比值小于参数$ \varepsilon $,算法就会终止。$\varepsilon \geqslant0$是一个非负参数。在实验中,将$ \varepsilon $设置为0.1。

此外,在问题(1) 中,需要给出参数$ {\delta _{1i}} $$ {\delta _{2j}} $的值。如文献[17]中所述,对于正类中的实例$ {x_{1i}} $,这里计算$ {x_{1i}} $与其k个近邻之间的距离,距离的平均值分配给$ {\delta _{1i}} $。上述方法也适用于负类中的实例$ {x_{2j}} $。这样,可以得到$ {\delta _{1i}} $$ {\delta _{2j}} $的值。

算法1 面向不确定数据的最小二乘孪生支持向量机

输入: $ {{x_{11}},{x_{12}},\cdots,{x_{1{m_1}}}}$//正类实例

    $ {{x_{21}},{x_{22}},\cdots,{x_{2{m_2}}}}$//负类实例

    $ {{C_1}}$$ {{C_2}}$ //正则化参数

    $ {{{\boldsymbol{\xi }}^{\left( 1 \right) }}}$$ {{{\boldsymbol{\xi }}^{\left( 2 \right) }} }$//实例的边界参数

输出: $ {{{\boldsymbol{\omega }}^{(1) }}}$$ {{b^{(1) }}}$$ {{{\boldsymbol{\omega }}^{(2) }}}$$ {{b^{(2) }}}$

1 构建数据矩阵AB

2 初始化t=0,$ {F_{{\rm{val}}}(t)=\infty}$

3 重复:

4   t=t+1;

5   if (t= =1) :

6    初始化$ {\Delta {\boldsymbol{A}}{\text{ = }}{\bf{0}} }$ and $ {\Delta {\boldsymbol{B}}{\text{ = }}{\bf{0}} }$

7   else:

8    用式(10) 和(11) 更新$ {\Delta {\boldsymbol{A}}}$$ {\Delta {\boldsymbol{B}}}$

9   替换$ {\Delta {\boldsymbol{A}}}$$ {\Delta {\boldsymbol{B}}}$,求解问题(3)和(4) , 得到$ {{{\boldsymbol{\omega }}^{(1) }}}$$ {{b^{(1) }}}$,    $ {{{\boldsymbol{\omega }}^{(2) }}}$$ {{b^{(2) }}}$

10   计算优化问题(1) 的$ {|{F_{{\text{val}}}}(t) - {F_{{\text{val}}}}(t - 1) | < \varepsilon {F_{\max }} }$ 值;

11   使$ {|{F_{{\text{val}}}}(t) - {F_{{\text{val}}}}(t - 1) | \lt \varepsilon {F_{\max }}}$

12 直到$ { |{F_{{\text{val}}}}(t) - {F_{{\text{val}}}}(t - 1) | \lt \varepsilon {F_{\max }} }$

13 返回$ {{{\boldsymbol{\omega }}^{(1) }}}$$ {{b^{(1) }}}$$ {{{\boldsymbol{\omega }}^{(2) }} }$$ {{b^{(2) }}}$

1.3 非线性核函数

受非线性孪生支持向量机的启发,这里将线性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)

式中:${\boldsymbol{C}} = \left( {\begin{array}{*{20}{c}} {{\boldsymbol{A}} + \Delta {\boldsymbol{A}}} \\ {{\boldsymbol{B}} + \Delta {\boldsymbol{B}}} \end{array}} \right)$K为任意一个核函数。

在问题(1)中,将$({\boldsymbol{A}} + \Delta {\boldsymbol{A}}) {{\boldsymbol{\omega}} ^{\left( 1 \right) }}$$\left( {{\boldsymbol{B}} + \Delta {\boldsymbol{B}}} \right) {{\boldsymbol{\omega}} ^{\left( 2 \right) }}$$( {{\boldsymbol{B}} +} { \Delta {\boldsymbol{B}}} ) {{\boldsymbol{\omega }}^{\left( 1 \right) }}$$({\boldsymbol{A}} + \Delta {\boldsymbol{A}}) {{\boldsymbol{\omega }}^{\left( 2 \right) }}$分别替换为$K({\boldsymbol{A}} + \Delta {\boldsymbol{A}},{{\boldsymbol{C}}^{\text{T}}}) {{{\boldsymbol{u}}}^{\left( 1 \right) }}$$K({\boldsymbol{B}} + \Delta {\boldsymbol{B}},{{\boldsymbol{C}}^{\text{T}}}) {{{\boldsymbol{u}}}^{\left( 2 \right) }}$$K({\boldsymbol{B}} + \Delta {\boldsymbol{B}},{{\boldsymbol{C}}^{\text{T}}}) {{{\boldsymbol{u}}}^{\left( 1 \right) }}$$K({\boldsymbol{A}} + \Delta {\boldsymbol{A}},{{\boldsymbol{C}}^{\text{T}}}) {{{\boldsymbol{u}}}^{\left( 2 \right) }}$。面向不确定数据的非线性最小二乘孪生支持向量机的优化公式为

$ \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步中,固定$ \Delta {\boldsymbol{A}} $$ \Delta {\boldsymbol{B}} $,问题(16) 的解为

$ \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)

式中:${\boldsymbol{G}} = ( {K({\boldsymbol{A}} + \overline {\Delta {\boldsymbol{A}}} ,{{\boldsymbol{C}}^{\text{T}}}) }\;{{{\boldsymbol{e}}_1}} )$${\boldsymbol{H}} = ( {K({\boldsymbol{B}} + \overline {\Delta {\boldsymbol{B}}} ,{{\boldsymbol{C}}^{\text{T}}}) }\;{{{\boldsymbol{e}}_2}} )$

然而,式(17) 和(18) 包含大小为$({m_1} + {m_2} + 1) \times ({m_1} + {m_2} + 1)$ 的矩阵的求逆。因此,这里应用Sherman Morrison Woodbury(SMW) 公式来减少矩阵求逆的计算量。利用SMW公式,可以通过求解3个规模较小的矩阵求逆来优化求解速度,而不像先前的求解2个较大规模的矩阵求逆。详情如下。

$ {m_1} \lt {m_2} $

$ \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)

式中:${\boldsymbol{Y}} = \dfrac{1}{\varepsilon }({\boldsymbol{I}} - {{\boldsymbol{H}}^{\text{T}}}{(\varepsilon {\boldsymbol{I}} + {\boldsymbol{H}}{{\boldsymbol{H}}^{\text{T}}}) ^{ - 1}}{\boldsymbol{H}})$

$ {m_2} \lt {m_1} $

$ \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)

式中:${\boldsymbol{Z}} = \dfrac{1}{\varepsilon }({\boldsymbol{I}} - {{\boldsymbol{G}}^{\text{T}}}{(\varepsilon {\boldsymbol{I}} + {\boldsymbol{G}}{{\boldsymbol{G}}^{\text{T}}}) ^{ - 1}}{\boldsymbol{G}})$

在第2步中,固定 $ {{\boldsymbol{u}}^{\left( 1 \right) }} $$ {b^{\left( 1 \right) }} $$ {{\boldsymbol{u}}^{\left( 2 \right) }} $$ {b^{\left( 2 \right) }} $,并更新$\Delta {\boldsymbol{A}}$$\Delta {\boldsymbol{B}}$。在非线性情况下,$\Delta {\boldsymbol{A}}$$\Delta {\boldsymbol{B}}$的更新与线性情况下的相同,即公式(10) 和(11) 。唯一的区别是$ {d_{{{\boldsymbol{A}}_i}}} $中的${\nabla _{\Delta {\boldsymbol{A}}}}$$ {d_{{B_j}}} $中的${\nabla _{\Delta {\boldsymbol{B}}}}$被替换,如下所示。

$ \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)
2 实验与结果分析

本文将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核,核参数$ \sigma $都是从集合$ {\text{\{ 1}}{{\text{0}}^i}|i = - 7, \cdots ,7\} $中获取。正则化参数 $ C $从集合$ {\text{\{ }}{{\text{2}}^i}|i = - 7, \cdots ,7\} $中获取。此外,在R-TWSVM中,参数R从集合$ \left\{0,0.01,0.02,\cdots,0.1\right\}$中获取。在本文的方法中,计算实例的K个近邻的距离取平均值来设置实例的边界参数$ \delta $。参数K设置为0.1n,其中n是数据集中的实例数。此外,本文将阈值参数$ \varepsilon $设置为0.1。

2.2 UCI数据集

UCI数据集包括“Hepatitis” “WPBC”“BUPA liver”“Heart-Stalog”“Sonar”“Votes” “Australian”“German”“Breast”和 “Pima”。本文采用十折交叉验证来记录结果。对于每个数据集,将其分成相等的10个部分。在每一轮中,训练集由9个部分组成,剩下的一部分作为测试集处理,并记录准确率的平均结果。按照文献[19-21]的方法生成UCI数据集中的不确定信息。对于每一个维度,计算数据集的标准偏差$ {\sigma _i} $。在[0, 2$ {\sigma _i} $]范围内生成一个偏差值。然后,用生成的第i维偏差值来产生噪声数据,这使得噪声在不同维度上有所不同。将噪声随机添加到40% 的训练集实例中。训练数据加上噪声后,在UCI数据集上对ULSTSVM,LSTSVM,R-TWSVM和TSVC这4种方法进行比较。非线性核RBF下的分类准确率如表1所示。

表 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值的方法是$ {F_1} = 2pr/(p + r) $

ULSTSVM和3种对比方法在LDPA数据集上的F1值如图1所示。很明显地看到,ULSTSVM在LDPA数据集上获得了最高的F1值。具体来说,LSTSVM具有最低的F1值,因为它没有考虑数据的不确定性。此外,ULSTSVM与R-TWSVM和TSVC的分类性能相当。本文引入噪声向量$ \Delta {\boldsymbol{x}} $对不确定信息进行建模,并采用两步启发式框架求解优化问题,并且在LDPA数据集上证明了该方法的有效性。

图 1 不同方法在LDPA数据集上的F1 Figure 1 F1-measure values of different methods on the LDPA dataset
2.4 不同噪声水平

在本小节中,研究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
2.5 训练时间

在上述几个小节中,研究了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
3 结论

本文提出了一种用于求解带有不确定数据的最小二乘孪生支持向量机模型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.