问题标签 [momentum]
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.
tensorflow - Tensorflow MomentumOptimizer 问题
当我运行以下简单代码时,我收到此错误:
此代码适用于GradientDescentOptimizer
,但我有错误MomentumOptimizer
。请指导我解决它。
这是我的代码:
请指导我如何解决这个问题。提前致谢, 阿夫辛
python - 如何实现基于动量的随机梯度下降(SGD)
我正在使用 python 代码 network3.py ( http://neuralnetworksanddeeplearning.com/chap6.html ) 来开发卷积神经网络。现在我想通过添加动量学习规则来稍微修改代码,如下所示:
有谁知道该怎么做?特别是,如何设置或初始化速度?我在下面发布了 SGD 的代码:
python - 大熊猫的动量投资组合(趋势跟踪)量化模拟
我正在尝试根据 S&P500 指数(月度数据)构建跟随动量投资组合策略的趋势
我使用考夫曼的分形效率比过滤掉洗盘信号(http://etfhq.com/blog/2011/02/07/kaufmans-efficiency-ratio/)
我成功地编码了,但它非常笨拙,所以我需要建议以获得更好的代码。
战略
- 从雅虎财经获取标准普尔500指数数据
- 计算回溯期 X 的考夫曼效率比 (1 , if close > close(n), 0)
- 平均计算值 2,从 1 到 12 时间段 ---> 每月资产配置比率,1 资产配置比率 = 现金(每年 3%)
我很难平均 1 到 12 的效率比。当然,我知道它可以通过 for 循环简单地实现,而且是非常简单的任务,但我失败了。
我需要更简洁和精致的代码,有人可以帮助我吗?
a['meanfractal']
在下面的代码中困扰我..
c# - 角动量守恒
我正在使用 C# 开发 2D 物理引擎。除了在碰撞期间解决旋转之外,我已经完成了所有工作。我有一个我认为是解决方案的解决方案,但它会导致物体疯狂地反弹并高速旋转。
我计算两点的相对速度如下:
然后,我计算要对项目施加的冲动:
并像这样对物体施加旋转力:
并像这样添加扭矩:
我认为这会由于角动量守恒而导致问题,但我一直坚持如何解决它。
optimization - TensorFlow - 使用动量优化器时为多个目标目标组合梯度?
如果我正在使用使用动量的优化器(例如AdamOptimizer
),并且我有一个图表,它在最后分裂导致我试图同时最小化的两个值,我可以使用compute_gradients
两次尝试最小化每个值。这会产生两组独立的渐变。如果我只是将两个列表组合成一个长列表并使用apply_gradients
在整个列表中,就势头而言会发生什么?同一个变量可以用两个相反的值更新两次。TensorFlow 优化器是否考虑到这一点并将动量置于适当的中间位置?或者优化器是否将两个独立的梯度作为两个独立的梯度更新调用来影响动量(可能会导致问题,因为一个可能会受到青睐,因为它总是被最后调用)?如果是这种情况,我应该如何在应用渐变之前手动组合渐变?
python - 获取张量流中动量优化器的插槽名称
我想使用 get_slot_names 从 tensorflow 中的 Momentum 优化器获取插槽的名称,如tensorflow网页中所述。我在我的代码中使用以下行来获取它们:
我运行了我的图表,然后当我打印插槽时,它只返回一个空列表。任何帮助将不胜感激。
顺便说一句,我的网络在最大限度地减少损失或其他方面运行良好。另外,我用其他优化器尝试过,但它有同样的问题。
我在 ubuntu 14 中使用 tf 1.3。谢谢,
machine-learning - ANN - 速度初始化
在尝试实现神经网络训练算法时,我遇到了不同的概念,包括试图模拟滚下山坡的球的梯度下降,以及更好地模拟滚动球的速度和动量。
我初始化了我的weights
, weight_deltas
,weight_velocities
因此:
在计算增量(成本函数相对于权重的导数)之后,我更新了权重:
我曾经np.zeros
初始化我的速度,我能够获得高达80%的准确度(对于特定的数据集)。但是当我用 初始化时np.ones
,我无法达到20%的准确率。我一直在使用ones
,但我无法弄清楚为什么zeros
会起作用。还有random
来自 的方法numpy
。
初始化的推荐方法是weight_velocities
什么?请注意,我故意排除了偏差单位和学习率,而且我正在import
学习numpy as np
。
tensorflow - 为什么对动量常数的微小调整会对 SGD 结果产生如此大的影响?
所以我只是在玩 Keras,并决定制作一个简单的神经网络来进行单变量线性回归。(epochs=25,lrate=0.001,衰变=100)。我注意到当我在 [0.7, 0.9] 中设置动量时,我的回归的 r^2 总是 >0.95,但是如果我将动量降至 0.7 以下,那么我突然开始得到极差的结果——一些模拟将返回 r^2为 0.5,有些为 -2,或 0.1,等等。高方差。
为什么会发生这种情况有一些直觉吗?我知道动量对 SGD 有好处,但是当您稍微调整动量常数时,我很惊讶地看到模型质量出现如此明显的下降......
neural-network - 为什么具有动量的梯度下降是指数加权平均值?
我最近在 SGDM 上观看了 Andrew Ng 的视频。我知道动量项通过加权最后一个梯度并使用 V_dw 的一小部分来更新梯度。我不明白为什么动量也被称为指数加权平均。此外,在 Ng 在 6:37 的视频中,他说使用 Beta = 0.9 实际上意味着使用最后 10 个梯度的平均值。有人可以解释它是如何工作的吗?对我来说,这只是向量 dW 中所有梯度的 1-0.9 的标量权重。