秒懂
匹配追踪算法(MP)
为了了解OMP我们先从MP开始说起。
匹配追踪最早是时频分析的分析工具,目的是要将一已知讯号拆解成由许多被称作为原子讯号的加权总和,而且企图找到与原来讯号最接近的解。
在机器学习领域,我们可以将它抽象为 X ω = Y X\omega=Y Xω=Y,其中 X X X是我们已知的向量, Y Y Y是我们要去拟合或者称为追踪的向量, MP算法的目的就是找到公式中的 ω \omega ω。MP算法采用逐步迭代的方式,每一步寻找到 X X X中与 Y Y Y内积最大的向量,将其从 Y Y Y中剔除(相减)得到 Y ′ Y' Y′(被称为残差),这样一步步迭代下去就能找到较优的近似解。
举个例子,我想要使用 x 1 = ( − 1 , 1 ) x_1=(-1,1) x1=(−1,1)和 x 2 = ( 1 , 0 ) x_2=(1,0) x2=(1,0)两个向量来拟合向量 y = ( 1 , 1 ) y=(1,1) y=(1,1),如果让我们口算,我们可以很容易地计算出 1 x 1 + 2 x 2 = y 1x_1+2x_2=y 1x1+2x2=y,那么使用MP算法呢?
-
第一步迭代:
计算 x 1 x_1 x1和 x 2 x_2 x2与 y y y的内积 m 1 = < x 1 , y > = 0 m_1=<x_1,y>=0 m1=<x1,y>=0, m 2 = < x 2 , y > = 1 m_2=<x_2,y>=1 m2=<x2,y>=1
比较绝对值发现 x 2 x_2 x2对 y y y的影响更大,因此 y ′ = y − m 2 x 2 = ( 0 , 1 ) y'=y-m_2x_2=(0,1) y′=y−m2x2=(0,1),记录 ω = ( _ , 1 ) \omega=(\_,1) ω=(_,1)。 -
第二步迭代:
计算 x 1 x_1 x1和 x 2 x_2 x2与 y ′ y' y

本文深入解析匹配追踪算法(MP)及其正交匹配追踪(OMP)升级版。OMP通过逐步迭代寻找最佳解,确保剔除向量与残差正交,提高效率。在压缩感知和回归问题中表现出色,适用于解决高维数据问题。
2万+

被折叠的 条评论
为什么被折叠?



