【证据驱动+多策略搜索,让稀疏恢复更精准】基于负对数边缘似然最小化的自适应支持集搜索算法(MATLAB实现)

作品简介

获取完整代码,请直接加

kang20224

针对高斯线性模型下的稀疏信号恢复问题,提出一种基于证据最大化或等价地最小化负对数边缘似然的目标函数。该目标函数在给定支持集下由数据拟合项与模型复杂度惩罚项构成,其中数据拟合项来源于边缘似然函数的二次型与对数行列式,惩罚项则是对支持集大小的线性惩罚。算法实现了多种求解策略:快速贪心的边际增益搜索、有限宽度波束搜索以平衡效率与精度,以及分支定界精确搜索保证全局最优。通过与其他经典稀疏恢复方法如正交匹配追踪、压缩采样匹配追踪、迭代硬阈值、套索以及稀疏贝叶斯学习的对比实验,验证了所提方法在不同稀疏度与噪声条件下的有效性与灵活性。

算法步骤

第一条 输入测量矩阵、观测向量、最大支持集大小、噪声方差、先验方差以及正则化参数。

第二条 初始化当前支持集为空集,并计算空集下的目标函数值作为初始上界。

第三条 若采用贪心策略,则循环执行以下操作直至达到预设的最大支持集大小:遍历所有未入选的候选原子,计算将该原子加入当前支持集后目标函数的变化量,选择使目标函数下降最大的原子加入支持集。

第四条 若采用波束搜索策略,则维护一个固定大小的候选部分支持集列表,每一层扩展时生成所有可能的下一原子加入后的新支持集,计算各新支持集的目标函数值,保留最优的若干条路径继续扩展,最终取目标函数最小的完整支持集。

第五条 若采用分支定界精确搜索,则深度优先遍历所有可能的支持集组合,利用当前最优上界进行剪枝:对于部分支持集,计算一个乐观下界(即假设剩余未选原子能无限降低数据项,但惩罚项最多可减少的数量),若该下界不低于当前最优值则跳过该分支。

第六条 对于最终确定的最优支持集,使用最小二乘法估计非零系数(即仅在该支持集上求解线性回归),其他位置的系数设为零,得到完整的稀疏解向量。

第七条 输出恢复的信号向量及其支持集,并可根据真实值计算均方误差、支持集查准率、查全率与F1分数等性能指标。

创作时间: