张春成

V2

2022/12/03阅读:35主题:默认主题

Gabor 函数的参数空间-2

Gabor 函数的参数空间-2

本文是接续前文的拓展,探讨在估计最优参数时,梯度下降方法是否能够得到最优解。

梯度下降可能有三种结果

  1. 能够得到几乎正确的结果,但过程曲折;
  2. 能够得到几乎正确的结果,过程也与理想轨迹大致吻合;
  3. 梯度下降轨迹与理想轨迹南辕北辙。

本文代码可见我的前端笔记本

Parameter Space of Gabor (Gradient)[1]


梯度下降

梯度下降是常用的参数寻优方法,我们假设 Gabor 函数的参数方程为

其中, 代表特定的参数组合。一般情况下,我们只能观测到某个 Gabor 函数在定义域内的取值

当目标函数的波形给定时,我们的寻优目标寻找是在二范数误差最小时的参数组合

而梯度下降法则是在参数空间的某个局部进行计算,该计算是求解一个更新微元,使得更新后的新参数取得更小的损失函数,而梯度则用于保证这个微元在领域内是最优的

由于梯度只能保证每个梯度方向是局部的,而不是全局的,再加上前文所表明的“Gabor 函数不满足凸函数条件”,因此我们有理由相信,梯度方法可能无法找到全局最优参数。

实验结果

下面就进行一个实验,实验过程与前文基本相同,只是在求参数序列时不再采用线性插值法,而是采用梯度下降法,从而绘制梯度下降的优化轨迹。

由于梯度下降的步长是超验参数,因此本实验宽容地将线性插值的插值步长作为梯度下降的步长,从而减少梯度下降的难度。

接下来进行两个方面的对比

  • 将梯度下降的终点与目标曲线进行比较,就可以直观看到该方法是否能够找到最优参数;
  • 将梯度下降的参数轨迹与线性插值的参数轨迹进行对比,就可以直观地看到梯度下降方法是否能够找到最优轨迹。

实验结果如下图所示,其中紫色曲线代表迭代起点,亮绿色曲线代表目标曲线;上方的子图代表梯度下降的轨迹;下方的子图代表线性插值的轨迹。

以下三个例子表明,梯度下降可能有三种结果

  1. 能够得到几乎正确的结果,但过程曲折;
  2. 能够得到几乎正确的结果,过程也与理想轨迹大致吻合;
  3. 梯度下降轨迹与理想轨迹南辕北辙。

下图所示,梯度下降方法在一开始往错误的方向延伸,之后才回到正确的道路,最终几乎到达终点。而没有到达终点的原因是迭代次数限制。

Result-1
Result-1

Result-1

下图是梯度下降较好地完成了任务的案例,只是在靠近终点时走了一些弯路

Result-2
Result-2

Result-2

下图展示了一种南辕北辙的情况,由于 Gabor 函数在参数空间中非凸,因此梯度下降可能永远无法得到正确结果。

Result-3
Result-3

Result-3

参考资料

[1]

Parameter Space of Gabor (Gradient): https://observablehq.com/d/e5f15050d1568991

分类:

后端

标签:

后端

作者介绍

张春成
V2