一种基于黎曼流形切空间和局部同胚的SPD数据的字典学习算法

文档序号:30184864发布日期:2022-05-26 18:09阅读:318来源:国知局
一种基于黎曼流形切空间和局部同胚的SPD数据的字典学习算法
一种基于黎曼流形切空间和局部同胚的spd数据的字典学习算法
技术领域
1.本发明属于机器学习领域,涉及spd数据字典学习的问题,最大限度的保持了spd原始数据的的几何结构与类别信息。


背景技术:

2.近年来,随着机器学习的不断发展和深入研究,非欧数据在机器学习中日见普遍,如对称正定矩阵(spd)数据就是一种非欧数据。spd矩阵数据一般是通过对原始数据进行区域协方差描述子提取得到,提供了原始数据的非线性表示形式,享有丰富的几何特性,在3-d对象识别、视觉监视、对象识别、动作识别、医学成像、人工检测和跟踪等领域拥有出色的表现。spd矩阵数据是一种典型的非欧特征数据,所有的spd矩阵构成一个spd流形。但是,spd流形是一个非线性空间,不是一个欧氏空间,这里的欧式空间指的是欧几里得空间。传统的机器学习算法都是在欧式空间上发展出来的,因此无法直接在spd流形上应用。
3.字典学习和稀疏编码是一种强大的数据表示工具,在信号处理和计算机视觉等领域应用日益普遍。对于一组原始数据x={x1,

,xn},字典学习和稀疏编码认为这组数据可以被一组线性字典组合e={e1,

,ed}有效表示。而该字典组合的组合系数被称为稀疏编码,即a={a1,

,an},稀疏也就意味着这一组合系数的非零向量越少越好。因此,通过给定的训练数据集,字典学习和稀疏编码算法旨在学习得到一组理想的字典,以便人们可以利用这组字典对每一个查询数据进行稀疏编码,同时最大程度减少重构误差。基于spd流形的字典学习和稀疏编码算法的研究虽然在近年来得到许多的关注,但进展依旧较为缓慢。字典学习和稀疏编码本质上是一种稀疏线性逼近,需要运用到大量的线性运算,但spd流形并不是一个线性空间,将传统的字典学习和稀疏编码算法直接应用在上面,会忽视原始spd数据的非线性几何结构,从而造成稀疏编码效果不佳。
4.spd流形的非线性问题是将字典学习和稀疏编码算法应用到spd矩阵数据的一大关键,针对这一问题,目前的主要主要解决方法是有两种。第一种方法针对字典学习和稀疏编码的具体问题,在原有的spd流形上进行建模,即原始数据是spd矩阵,学习得到的字典依旧是spd矩阵。但是一组spd矩阵的线性组合并不能够保证依旧是spd矩阵,需要对其添加许多限制,这就使字典学习过程中存在诸多困难。第二种方法则是将原始spd数据映射到hilbert空间,在hilbert空间上进行特定的机器学习任务,从而解决spd流形的非线性问题。目前主要的hilbert空间是rkhs和切空间。


技术实现要素:

5.我们研究spd数据字典学习的问题,主要工作和贡献有:
6.(1)提出一种基于黎曼流形切空间的非欧数据机器学习的框架。所谓非欧数据就是数据全体不构成欧式空间的数据,例如spd数据。目前,非欧数据在机器学习中日渐普遍,但是,大多数机器学习算法都是基于欧式空间研发,因此,这些机器学习算法不能直接应用
于非欧数据。目前,常用的方法是把非欧数据变换到rkhs。rkhs是无限维的hilbert空间,也不是欧式空间,变换的数据还需要进一步变换到rkhs的一个有限维子空间。这就是所谓基于rkhs子空间学习的非欧数据机器学习框架。虽然,非欧数据的全体不构成一个欧式空间,但却往往可以构成一个黎曼流形,而黎曼流形的切空间都是有限维的hilbert空间,本质上就是欧式空间。因此,本发明提出另一种非欧数据机器学习的框架。在这个框架中,首先对非欧数据集赋予一定的拓扑结构和黎曼度量,使其成为一个黎曼流形,然后把黎曼流形的数据变换到黎曼流形的切空间,最后根据具有的机器学习的任务,利用黎曼流形的测地距离和切空间的线性和内积运算在切空间中进行机器学习。
7.(2)提出一种基于黎曼流形切空间的spd数据字典学习算法(rmts-spddl)。spd数据是目前机器学习最常见的非欧数据,对线性运算不具有封闭性,而字典学习涉及的主要运算是稀疏线性逼近,因此,一般来说,是不可能直接在spd数据集上进行字典学习。如果采用rkhs子空间学习的框架,则spd矩阵需要变换为在spd数据集上定义的函数,数据的形态和性质都发生了重大改变。在这样变换的数据上进行机器学习,可能已经不能不是原来机器学习的初衷。本发明采用前面提出的基于黎曼流形切空间的非欧数据机器学习的框架,把spd数据变换到spd黎曼流形的切空间,在切空间里进行字典学习和应用。特别地,spd黎曼流形的切空间就是对称矩阵空间,而对称矩阵包括spd矩阵,因此,把spd矩阵变换成对称矩阵,在数据形态和性质上的变化都是最小的。
8.(3)提出一种基于黎曼流形切空间和局部同胚的spd数据的字典学习算法(rmtslh-spddl)。在本发明前面提出的rmts-spddl算法中,给定的spd字典学习样本,变换到spd黎曼流形的切空间,在切空间中进行稀疏线性逼近,其最优的逼近系数称为spd学习样本的字典编码。字典编码是m维欧式空间的向量,代表spd学习样本,这里m是字典的个数。我们希望字典的构造能够使得给定的学习样本与它们的字典编码之间保持局部同胚的关系,也就是近邻连续依赖的关系。为此,我们在rmts-spddl的基础上,添加了学习样本与它们的字典编码之间局部同胚的正则项,从而最终构成本发明提出的rmtslh-sdpdl算法。
附图说明
9.图1:基于黎曼流形切空间和局部同胚的spd数据的字典学习算法图。
具体实施方式
10.基于黎曼流形切空间和局部同胚的spd数据的字典学习算法具体内容如下:
11.spd数据是目前机器学习最为常见的非欧数据,由于spd数据全体并不构成一个线性空间,而字典学习本身就是用线性运算来表示,因此,字典学习的概念甚至在spd数据上都无法表示。目前常用的方法是把spd数据变换到rkhs,在rkhs中进行字典学习。但是,spd数据变换到rkhs后,一个spd矩阵变成了一个在spd数据集上定义的函数,数据的形式和性质都发生改变,在rkhs中进行字典学习,恐怕已经不是原来学习的初衷。
12.spd数据全体虽然不构成一个线性空间,但是却可以构成一个黎曼流形(下称spd流形),而黎曼流形的切空间是一个有限维的hilbert空间,特别地,spd流形的切空间是对称矩阵空间。由于对称矩阵包括对称正定矩阵,因此,spd流形可以看成是对称矩阵空间的一个子流形,而对称矩阵空间可以看成包含spd流形的最小线性空间。本发明提出的算法,
先把spd数据变换到对称矩阵空间,然后在对称矩阵空间上进行字典学习。随后字典的应用也在对称矩阵空间内进行。
13.设表示spd流形,symd表示对称矩阵空间,也就是的切空间,定义变换:,对于任意,因为x=udiag(λ1,

,λd)u
t
,这里λ1≥

≥λd>0是x的特征值,而u则是由x的标准正交的特征向量组成的正交矩阵,定义:
14.log(x)=udiag(log(λ1),

,log(λd))u
t
∈symd(1)
15.在spd流形上给定一组字典学习的样本:我们先把这些样本变换到spd流形的切空间:然后利用这些切向量的线性组合构造spd流形切空间中的字典:
[0016][0017]
这里m是字典个数。记
[0018][0019]
b称为字典生成矩阵。显然,切空间symd中的字典{e1,

,em}完全由字典生成矩阵b决定。
[0020]
于是,基于spd流形切空间的字典学习的模型如下:
[0021][0022]
这里
[0023][0024]
a称为字典编码矩阵,a
irow
是a的行向量,代表log(xi)的字典编码,i=1,

,n。
[0025]
按照流形的数学定义,所谓流形就是与欧式空间局部同胚的拓扑空间。在本发明的实际应用中,流形就是spd流形,与spd流形局部同胚的欧式空间就是各个spd矩阵的切空间。因此,如果二个spd矩阵xi和xj充分接近,则它们的切向量log(xi)和log(xj)也会充分接近。但是,log(xi)和log(xj)的字典编码是全局编码,虽然有稀疏编码的限制,但并不能保证它们经过字典编码后的和仍然与xi和xj保持局部同胚的性质。为此,本发明提出添加局部同胚正则项的方式弥补这一缺陷。
[0026]
由于切向量log(xi)和log(xj)的字典编码完全由字典编码矩阵的行向量a
irow
和a
jrow
决定,因此,局部同胚模型如下:
[0027][0028]
这里β>0,geod(xi,xj)是二个spd矩阵xi和xj之间的测地距离,经过推导可得
[0029][0030]
这里
[0031][0032]
把上述模型结合起来,构成我们提出基于黎曼流形切空间和局部同胚的spd数据字典学习的模型(rmtslh-spddl):
[0033][0034]
这里λ
sp
>0,λ
mr
>0。在spdtslh-dl的模型中,有二个优化变量:字典编码矩阵a和字典生成矩阵b,其中字典生成矩阵b是我们需要的,而字典编码矩阵a是副产品,从字典学习的角度来说,是不需要的,但是为了计算字典生成矩阵b,字典编码矩阵a是不可或缺的。
[0035]
因为有
[0036][0037]
这里
[0038][0039]
于是有
[0040][0041]
进一步,我们有如下的推导
[0042][0043][0044]
于是有
[0045][0046]
最后,rmtslh-spddl的目标函数为
[0047][0048]
在rmtslh-spddl的目标函数中,有二个优化变量字典编码矩阵a和字典生成矩阵b,我们采用交替迭代的方法依次求解a和b。
[0049]
先固定字典生成矩阵b,计算字典编码矩阵a,这时目标函数可以简化如下:
[0050][0051]
我们采用feature-sign search method【】方法进行求解。
[0052]
然后,我们固定字典编码矩阵a,计算字典生成矩阵b,这时目标函数可以简化如下:
[0053][0054]
对上式偏导,有
[0055][0056]
上述过程重复,直到目标函数小于预先设定的门槛。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1