Tensorflow 张量流中的二阶方法

Tensorflow 张量流中的二阶方法,tensorflow,neural-network,deep-learning,Tensorflow,Neural Network,Deep Learning,我想做一些实验,用深度神经网络的二阶方法进行研究。看来内置的张量流都不是二阶的。但是已经有一个书面版本允许TensorFlow与外部优化器接口,比如SciPy中的l-BFGS 人们通常会这样做实验吗?或者我缺少的是更好的方法吗?优化器类,可用优化器的父类,可以作为自己实现一个具有二阶导数的优化器的起点。基本上,这将依赖Tensorflow的自动差异化设施。一个更简单的选择是使用计算_梯度和应用_梯度两次,以便在开始时进行拨弄。顺便说一句,我记得一些讨论;没有具有二阶导数的标准优化器,因为它们需要

我想做一些实验,用深度神经网络的二阶方法进行研究。看来内置的张量流都不是二阶的。但是已经有一个书面版本允许TensorFlow与外部优化器接口,比如SciPy中的l-BFGS


人们通常会这样做实验吗?或者我缺少的是更好的方法吗?

优化器类,可用优化器的父类,可以作为自己实现一个具有二阶导数的优化器的起点。基本上,这将依赖Tensorflow的自动差异化设施。一个更简单的选择是使用
计算_梯度
应用_梯度
两次,以便在开始时进行拨弄。顺便说一句,我记得一些讨论;没有具有二阶导数的标准优化器,因为它们需要太多额外的计算才能获得预期的收益。但是它们是可实现的(不受框架的限制)<代码>tf。梯度是正确的名称,而不是“计算梯度”。另外,
tf.hessians
也可以从网站上获得。最后一条评论:有些人已经有了。@EricPlaton谢谢。我本想在我的问题中与之联系起来。说清楚一点,你说有两个选择是1。创建我自己的子类“Optimizer”和2。使用允许您与现有优化器接口的模块(例如,来自SciPy)?(#2是你联系到的,我相信)。是的,(1)或(2)。至于(1)另一种选择是直接使用
tf.hessians
和相关API进行简单试验。