这种基于 QR 分解的预处理叫什么?

计算科学 优化 参考请求 凸优化 预处理
2021-12-26 12:12:54

我最近开始钻研别人的代码,其中有一部分我不太明白。代码的作者使用某种形式的预处理来加速优化。我想询问您是否熟悉这种预处理,并且可以推荐一些文献来阅读该方法。不幸的是,没有提供名称,因此我将在下面描述作者的方法。

假设我们在某个维空间个点的集合。这个空间是在某个多项式基础上定义的,我们有一个矩阵个点的坐标。我们现在想要优化一些目标函数用于固定和变量(长度为的向量)。我们使用准牛顿优化器,特别是BFGS来做到这一点。NDRDN×DBNf(θ,B)BθD

对于预处理,作者现在首先

  1. 对矩阵元素进行平方,然后将其沿行(维)求和,并取结果向量的平方根。这会产生一个向量BNDψn
  2. 然后作者创建了一个对角方阵,其中作为对角线项。D11ψn
  3. 使用矩阵,作者得到一个矩阵我假设这标准化了的尺寸。D1Ψ=BD1B
  4. 然后,作者对进行 QR 分解,只保留上三角矩阵ΨN×DR
  5. 有了这个,我们作者计算了一个“预处理矩阵”这个矩阵必须是A=D1R1D×N

显然,这允许我们进行“正则化优化” =他们的评论表明,这以某种方式使优化问题变得更加“球形”,从而减少了某些维度上的陡峭梯度。(显然,这使得算法更不容易爬上山脊,然后接近最优值。)优化后,正则化目标的结果可以通过重新缩放来转换回来f(θ)f(Aθ)=g(θ)θrθ=Aθr

你知道作者在这里使用的是什么方法吗?

0个回答
没有发现任何回复~