D-KSVD(Discrimination K-SVD)

来源:互联网 发布:宝宝生长曲线软件 编辑:程序博客网 时间:2024/06/07 00:34

1.概述

D-KSVD算法基于SRC算法而提出。SRC算法最大的特点是:(1)选取训练样本作为字典来进行编码,由此可能产生的问题有:字典过大,导致实验进行时运算量大耗时过长,字典原子未经过预处理可能存在噪声;(2)SRC算法中所用的字典为分块字典具有更强的辨别性,更加适合于图像的分类任务。针对SRC的缺点,很自然的能想到分块字典是否能通过学习而得,包含样本更深度的信息,以减少字典尺寸和噪声影响,同时为了更进一步提升字典的辨别性能,于是在目标函数中添加了线性分类器项。

2.线性分类器介绍(linear classifiers)

分类器的作用是:根据特征提取器得到的特征向量结合分类函数给被测对象赋予一个类标。其中,线性分类器选用的线性判别函数,两类情况为:

g(x)=Wx+Wo(1)

多类情况为:
g(x)=Wix+Wio,i=1,,n(2)

其中,WiWo为权重。问题的关键在于获得比较好WiWio

本文提出的线性分类器(3)式如下:

W,b=argminW,bHW×αb+βW2(3)

其中W是分类器矩阵,b是常数,H是样本标签。

3. D-KSVD的介绍

目标函数如下:

D,W,X=argminD,W,XYD×X+γHW×Xb+βW2(4)s.tX0T

相对于SRC算法,此处加入一个线性分类器以达到所训练的字典具有识别能力。通俗一点来讲就是通过使得同一类样本的编码更相似,不同类样本的编码相似度大为降低,以达到提高所学习的字典的识别力的目的。
常用的求解步骤参考:http://ieeexplore.ieee.org/abstract/document/5539989/
最后对D-KSVD的求解会用到KSVD的方法。

3.KSVD的简单介绍

二、K-SVD介绍
网上有很多博客对K-SVD的介绍推荐本人认为比较好的博客:(http://blog.csdn.net/abcjennifer/article/details/8693342)这篇博客对K-SVD的思路给出了一个通俗易懂的解释。

想要进一步了解K-SVD的话可以看看Michael
Elad 与2006年IEEE上发表的论文:(K-SVD: An Algorithm for Designing Overcomplete)链接地址如下:(Dictionaries%20for%20Sparse%20Representationhttp://www.cs.technion.ac.il/~freddy/papers/120.pdf)