5.2.1. FSVM原理
现实世界中, 每个训练样本的重要性不一, 通常一些训练样本比另外一些更重要, 我们希望有意义的样本正确分类, 而不关心噪声样本是否被错分 [1] . 假设有训练样本集 S={(xi,yi)}i=1N , 为每一个训练样本分配一个隶属度 μi, 则样本集重新表示为 S~={(xi,yi,μi)}i=1N, SVM 优化问题 式.5.16 变为
(5.17) minimize 21∥w∥2+C∑i=1Nμiξi subject to yi(w⋅zi+b)≥1−ξi,i=1,…,Nξi≥0,i=1,…,N,
其中, w 为模型参数, C 为平衡因子, ξi 为第 i 个样本对应误差, zi 为第 i 个样本 xi 在特征空间中的象 zi=f(xi) , f:Rn→Rm.
5.2.2. 隶属函数选择
基于时间特性
对于序列学习, 样本的重要性与样本到达时间紧密相关, 特别是在实时信号处理中, 最新到达的样本比以往的样本更重要, 因而可以根据时间来确定隶属度 [1] , 即
μi=f1(ti)=tN−t11−σti+tN−t1tNσ−t1,
其中, t1<⋯ti<⋯tN 是训练样本到达时间序列.
基于类别中心
使用样本到类别中心的距离作为隶属度可以减少异常值的影响, 假设有 K 个类别, 用 xkˉ 表示第 k 类的均值中心. 可定义如下隶属函数
μi=1−∣xˉk−xi∣/(rk+δ) if yi=k
其中, k=1,2,⋯,K , δ>0 以避免 μi=0 , rk 为类别 k 的半径:
rk={xi:yi=k}max∣xˉk−xi∣.
基于训练误差
还可以根据训练误差来设置隶属度 [9], 这种方法需要先使用SVM训练, 将得到的误差 e 进行如下公式转换为隶属度:
μi=f3(ei)=1−emax+δei
其中, emax=max{e1,⋯,ei,⋯,eN} , δ>0 .