问题标签 [hessian-matrix]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1710 浏览

opencv - 如何计算神经网络输出层的二阶导数?

我正在尝试为卷积神经网络实现随机对角线 Levenberg-Marquardt 方法,以便反向传播学习权重。我是新手,很困惑,所以我有几个问题,希望你能帮助我。

1)如何从两个输出计算输出层的二阶导数。由于我在一阶导数中,我必须从所需的输出中减去输出并将其与输出的导数相乘。但是在二阶导数中我该怎么做?

2)在卷积神经网络的 MaxPooling 层中,我在 2x2 窗口中选择最大值,并将其乘以权重,现在我是否必须通过激活函数?

有人可以给我解释如何在opencv中做到这一点,或者如何用数学解释或任何显示数学的参考资料。提前致谢。

0 投票
1 回答
823 浏览

r - 我应该相信命令“Hessian”和“numericHessian”之间的哪个结果?

我试图从我自己的数据中获取 Hessian 矩阵,我有两个结果 -

  • 使用库中的代码 Hessian(numDeriv)
  • 使用库中的代码 numericHessian (maxLik)

相对于 numericHessian 的结果,Hessian 的结果非常小。

在这种情况下,我应该相信哪些结果?

具体来说,我使用的数据范围从 350000 到 1100000,它们是 9X2 矩阵,共有 18 个数据值。

我使用了一种标准偏差公式,“numericHessian”的结果范围从 230 到 466,使用 2X2 矩阵,而“Hessian”的结果范围从 -3.42e-18 到 1.34e-17,远远小于上一个。

您认为哪种标准差的计算正确?

代码如下:

file.txt 如下:

“numericHessian”的结果是:

那么,“Hessian”的结果是:

非常感谢您提前。

0 投票
2 回答
516 浏览

numpy - 创建 AT * diag(b) * A + C 形式的稀疏矩阵的最快方法?

我正在尝试优化一段使用内点法解决大型稀疏非线性系统的代码。在更新步骤中,这涉及计算 Hessian 矩阵H、梯度g,然后求解dinH * d = -g以获得新的搜索方向。

Hessian 矩阵具有以下形式的对称三对角结构:

AT * diag(b) * A + C

我已经运行line_profiler了有问题的特定功能:

从输出来看,很明显构建H是迄今为止最昂贵的一步——它比实际解决新方向花费的时间要长得多。

Hsig并且M都是 CSC 稀疏矩阵,n是密集向量并且z是标量。我使用的求解器需要H是 CSC 或 CSR 稀疏矩阵。

这是一个函数,它产生一些与我的真实矩阵具有相同格式、维度和稀疏性的玩具数据:

这是我最初的构造方法H

定时:

有没有更快的方法来构建这个矩阵?

0 投票
1 回答
5819 浏览

neural-network - 计算粗麻布如何用于神经网络学习

在优化神经网络的学习过程时,任何人都可以用一种简单且不那么数学的方式向我解释什么是 aHessian以及它在实践中是如何工作的?

0 投票
1 回答
1444 浏览

matlab - 牛顿算法 - 无法计算 Hessian

我正在尝试在 Matlab 中编写牛顿算法的实现。

当我使用公式调用我的函数时:

我收到一条错误消息:

我不知道出了什么问题。也许更熟悉Matlab的人可以帮助我。

下面是我的代码:

这是我第一次接触 Matlab。

更新:

现在我有一个错误:

我输入:

0 投票
1 回答
825 浏览

matlab - Matlab fminsearch 黑森州?

警告我对此非常陌生,超出了我的深度,如果这是新手或不清楚,请道歉。

我使用 fminsearch 估计多个数据集的参数,有人建议我们应该尝试绘制粗麻布来拟合每个数据集。是否可以使用 fminsearch 获得这些?

有人告诉我它应该是标准输出选项,但据我所知,这不是 fminsearch 的选项之一(尽管看起来它是 fminunc 的选项)

这是我希望修改的相关代码:

任何帮助都将不胜感激。

0 投票
1 回答
2693 浏览

matlab - 使用 MATLAB 对灰度图像进行偏导

当我在搜索Hessian matrix时,我读到了图像的偏导数。我很困惑,我无法想象图像派生的任何含义。

如何计算图像的偏导数?

在此处输入图像描述

0 投票
1 回答
371 浏览

performance - 计算 Hessian 的性能

[编辑] 关于“f”的部分已解决。这是我所做的:而不是使用:

我现在正在使用:

这将大大加快速度。不过,f 的 Hessian 矩阵的问题仍然存在。[/编辑]

因此,我在尝试在 Matlab 中解决的二次优化问题时遇到了一些严重的性能“问题”。问题不是优化本身,而是目标函数和 Hessian 的计算。现在看起来像这样(F 和 Y 根本不是随机的,并且会有真实数据,也不一定是不受约束的,因为那样的话解决方案当然是 (F'F)^-1*F'*Y ):

问题是:计算 f 和 H 需要很长时间。

我不期望有办法显着加快速度,因为 Matlab 已针对此类内容进行了优化。但也许有人知道一些开放许可软件,它几乎和 Matlab 一样快,这样我就可以在更快的机器上用那个软件计算 f 和 H(不幸的是没有 Matlab 许可......),然后让 Matlab 进行优化。

现在我有点迷失了:/

非常感谢您提前。甚至一些关键字也可以在这里帮助我,例如“寻找软件 xy”

0 投票
1 回答
233 浏览

c++ - 在 Ptr 上设置 Hessian 阈值

使用这个特殊FeatureDetector的,我无法弄清楚如何设置 Hessian 阈值。

有谁知道怎么做?

0 投票
0 回答
593 浏览

python - Python:如何在复杂函数上使用函数 nd.Hessiandiag

我想使用Hessiandiag包(Numdifftools)中的函数来使用最小化函数的最佳参数来获取 Hessian 矩阵的对角元素。

下面是一个Hessiandiag从 Numdifftools 开发者网站获取的简单用法示例:

假设我想要获取 Hessian 矩阵的函数太复杂而无法使用lambda. 我的函数存储在名称下的另一个文件中Latent(使用def Latent(x1, x2, x3)命令)。我不能执行以下操作:

……这行不通……

如何在不使用复杂功能的情况下使用 nd.Hessdiag lambda

更新 我也试过这个:

我收到此错误: