稀疏贝叶斯学习(SparseBayesianLearning)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
稀疏贝叶斯学习(Sparse Bayesian Learning)
张智林(Zhilin Zhang )
z4zhang@
Department of Electrical and Computer Engineering, University of California, San Diego,
La Jolla, CA 92093-0407, USA
1 引言
稀疏贝叶斯学习(Sparse Bayesian Learning, SBL )最初作为一种机器学习算法由Tipping 于2001年前后提出[Tipping2001],随后被引入到稀疏信号恢复/压缩感知领域[Wipf2004,Ji2008]。Wipf 和Rao 等人对SBL 进行了深入的理论研究。与广泛使用的基于L1惩罚项的算法(比如Lasso ,Basis Pursuit )相比(以下简称L1算法),SBL 具有一系列显著的优势:(1)在无噪情况下,除非满足一些严格的条件
[Donoho2003],L1算法的全局最小点(global minimum )并不是真正的最稀疏的解[Wipf2004]。因此,在一些应用中,当真实的解是最稀疏的解,采用SBL 是更好的选择。(2)当感知矩阵(sensing matrix )的列与列相关性很强时,L1算法的性能会变得非常差。事实上不光是L1算法,绝大多数已知的压缩感知算法(比如Approximate Message Passing 算法,Matching Pursuit 算法)在这种情况下性能都会变得很差。相比之下,SBL 算法仍旧具有良好的性能[Wipf_NIPS2011]。因此,在雷达追踪,波达方向估计,脑源定位,特征提取,功率谱估计等一些列领域,SBL 都具备显著的优势。(3)业已证明,SBL 算法等价于一种迭代加权L1最小化算法(iterative reweighted L1 minimization ),而L1算法仅仅只是其第一步[Wipf2010]。Candes 等人指出,迭代加权L1最小化算法更易获得真正的最稀疏解[Candes2008]。从这个角度也就不难理解SBL 的优越性。(4)在很多实际问题中,所期望的稀疏解常常有一些结构,而利用这些结构可以获得更好的性能[ModelCS ]。作为一种贝叶斯算法,SBL 算法对利用这些解的结构信息提供了更多的灵活性。这种灵活性最主要来自于SBL 采用参数化的高斯分布为解的先验分布。最近Zhang 和Rao 提出了块稀疏贝叶斯学习框架(Block Sparse Bayesian Learning, BSBL)[Zhang_IEEE2011, Zhang_TSP2012]。该框架提供了一种利用解的空间结构(spatial structure )和时序结构(temporal structure )的解决方案。由其框架得到的算法在多任务学习(multi-task learning )[Wan2012],生理信号的无线传输和远程监控[Zhang_TBME2012a, Zhang_TBME2012b ],脑源定位和脑-机接口[Zhang_PIEEE2012]等许多领域获得了极大的成功。
下面将首先介绍基本的SBL 框架,然后对BSBL 框架及其算法进行详细介绍,并在最后给出一些代表性的实验结果。
2稀疏贝叶斯学习
压缩感知的基本模型可描述为:
v Ax y += (1) 其中为N×M的感知矩阵,为N×1维压缩信号,为M维待求的解向量,为未知的噪声向量。为求解,SBL 假设中的每个元素都服从一个参数化的均值为0方差为A y x v x x i γ的高斯分布[Wipf2004]:
M i N x p i i i ,,1),,0();("==γγ (2)
其中表示中的第i 个元素,i x x i γ是未知的参数,将会由算法自动估计出来。这样一种先验分布常被称为automatic relevance 先验分布,最初出现于人工神经网络领域[ARD1996]。在算法运行中,绝大部分的i γ将会变成0(无噪情况下)或者趋于0(有噪情况下)。SBL 通常会采用一个阈值将趋近于0的i γ置为0(该阈值的大小通常和信噪比有关)。当0=i γ时,相应的则为0。因此,i x i γ与解的稀疏程度密切相关,也从而决定了i γ的学习规则是SBL 算法中最核心的部分。在SBL 框架中,噪声通常假设为高斯白噪声向量,即v ),,0();(I v λλN p =其中λ为噪声方差。根据以上的假设,利用贝叶斯规则很容易获得后验分布,其也为一高斯分布。当所有的未知参数(即{}λγ,1M
i i =)都被估计出来后,x 的最大后验估计(Maximum A Posterior)由这个高斯分布的均值给出。而这些未知参数可以由第二类最大似然估计(Type II Maximum Likelihood)获得[Tipping2001, MacKay1992]。
在以上的SBL 框架中,我们把i γ作为一未知的确定性参数,而没有把它视为一随机变量从而进一步假设它的先验分布。事实上,这等同于假设i γ的先验分布是一个non-informative prior 。Wipf 和Rao 已从理论上证明,这种SBL 框架可以获得真正的解(即最稀疏的解)[Wipf2004],而若对i γ赋予一个非non-informative prior ,有可能导致算法的不稳定或者解的不正确[Wipf_PhDThesis ]。另外也需注意到,Tipping 提出的SBL 算法[Tipping2001]是假定的precision (即方差的倒数)具有一参数化的Gamma prior ,而这些参数最终被固定为某些特殊的值使得具有一improper prior ,即i x i x i i x x p 1)(∝。这种prior 类似于Laplace prior ,起着促进稀疏解的作用。通过比较Wipf 和Rao 的SBL 算法和Tipping 的算法,我们不难发现,前者的SBL 算法恰好是后者的SBL 算法取该improper prior 的形式。从这个角度也不难理解为什么前者的SBL 算法可以获得稀疏解。
除了Tipping,Wipf 等人的SBL 算法外,还有其它一些SBL 算法赋予的precision 其它的分布,或者假设的先验分布为一Laplace prior[BCSlaplace ]。这些算法多数情况下无法证明其全局解是真正稀疏解(即最稀疏解),或者本身稳定性存在问题,不能保证良好的收敛性能。值得注意的是,赋予不同的先验分布并不能导致相应的SBL 算法在实际应用中具有明显的优势。这是因为大多数实际问题都和理想的感知压缩模型相去甚远,比如感知矩阵(sensing matrix)的列与列之间具有强相关性,噪声很强,并不是非常稀疏等等。在这些情况下,不少参数的估计将会有较大的误差,从而导致最终的解具有较大的误差。最明显的是,绝大多数SBL 算法对噪声方差i x i x i x x λ的估计都不有效,尤其是当感知矩阵的列与列之间具有强相关性且噪声很大的时候。而对该方差估计的准确性对x 的估计的准确性影响非常大。Zhang 和Rao 最近给出了噪声方差的另外一个学习规则[Zhang_IEEE2011]。试验表明该学习规则可以获得更加鲁棒的效果。
事实上要想在实际中获得更好的结果,充分利用解的自身结构信息是更加有效的策略。接下来我们将介绍利用解的空间结构信息和时序结构信息的SBL 算法。特别的,我们将介绍如何利用解的各个元素