提交 82708c21 编写于 作者: A Aston Zhang

opt qr all

上级 c72d41ae
......@@ -47,7 +47,7 @@ utils.optimize(batch_size=10, trainer=trainer, num_epochs=3, decay_epoch=None,
log_interval=10, X=X, y=y, net=net, print_lr=False)
```
## 结论
## 小结
* 使用`Gluon``Trainer`可以轻松使用Adadelta。
......@@ -55,4 +55,9 @@ utils.optimize(batch_size=10, trainer=trainer, num_epochs=3, decay_epoch=None,
* 如果把试验中的参数rho改小会怎样,例如0.9?观察实验结果。
**吐槽和讨论欢迎点**[这里](https://discuss.gluon.ai/t/topic/2278)
## 讨论
欢迎扫码直达[本节内容讨论区](https://discuss.gluon.ai/t/topic/2278)
![](../img/qr_adadelta-gluon.svg)
......@@ -124,7 +124,7 @@ def optimize(batch_size, rho, num_epochs, log_interval):
optimize(batch_size=10, rho=0.9999, num_epochs=3, log_interval=10)
```
## 结论
## 小结
* Adadelta没有学习率参数。
......@@ -133,4 +133,9 @@ optimize(batch_size=10, rho=0.9999, num_epochs=3, log_interval=10)
* Adadelta为什么不需要设置学习率参数?它被什么代替了?
**吐槽和讨论欢迎点**[这里](https://discuss.gluon.ai/t/topic/2277)
## 讨论
欢迎扫码直达[本节内容讨论区](https://discuss.gluon.ai/t/topic/2277)
![](../img/qr_adadelta-scratch.svg)
......@@ -45,7 +45,7 @@ utils.optimize(batch_size=10, trainer=trainer, num_epochs=3, decay_epoch=None,
log_interval=10, X=X, y=y, net=net)
```
## 结论
## 小结
* 使用`Gluon``Trainer`可以轻松使用Adagrad。
......@@ -53,4 +53,8 @@ utils.optimize(batch_size=10, trainer=trainer, num_epochs=3, decay_epoch=None,
* 尝试使用其他的初始学习率,结果有什么变化?
**吐槽和讨论欢迎点**[这里](https://discuss.gluon.ai/t/topic/2274)
## 讨论
欢迎扫码直达[本节内容讨论区](https://discuss.gluon.ai/t/topic/2274)
![](../img/qr_adagrad-gluon.svg)
......@@ -141,7 +141,7 @@ def optimize(batch_size, lr, num_epochs, log_interval):
optimize(batch_size=10, lr=0.9, num_epochs=3, log_interval=10)
```
## 结论
## 小结
* Adagrad是一个在迭代过程中不断自我调整学习率,并让模型参数中每个元素都使用不同学习率的优化算法。
......@@ -150,4 +150,8 @@ optimize(batch_size=10, lr=0.9, num_epochs=3, log_interval=10)
* 我们提到了Adagrad可能的问题在于按元素平方的梯度累加变量。你能想到什么办法来应对这个问题吗?
**吐槽和讨论欢迎点**[这里](https://discuss.gluon.ai/t/topic/2273)
## 讨论
欢迎扫码直达[本节内容讨论区](https://discuss.gluon.ai/t/topic/2273)
![](../img/qr_adagrad-scratch.svg)
......@@ -77,4 +77,8 @@ utils.optimize(batch_size=10, trainer=trainer, num_epochs=3, decay_epoch=None,
* 换:这个参数被换成别的了
* 权:指数加权移动平均
**吐槽和讨论欢迎点**[这里](https://discuss.gluon.ai/t/topic/2280)
## 讨论
欢迎扫码直达[本节内容讨论区](https://discuss.gluon.ai/t/topic/2280)
![](../img/qr_adam-gluon.svg)
......@@ -161,7 +161,7 @@ def optimize(batch_size, lr, num_epochs, log_interval):
optimize(batch_size=10, lr=0.1, num_epochs=3, log_interval=10)
```
## 结论
## 小结
* Adam组合了动量法和RMSProp。
......@@ -170,4 +170,8 @@ optimize(batch_size=10, lr=0.1, num_epochs=3, log_interval=10)
* 你是怎样理解Adam算法中的偏差修正项的?
**吐槽和讨论欢迎点**[这里](https://discuss.gluon.ai/t/topic/2279)
## 讨论
欢迎扫码直达[本节内容讨论区](https://discuss.gluon.ai/t/topic/2279)
![](../img/qr_adam-scratch.svg)
......@@ -46,7 +46,7 @@ utils.optimize(batch_size=10, trainer=trainer, num_epochs=3, decay_epoch=2,
log_interval=10, X=X, y=y, net=net)
```
## 结论
## 小结
* 使用`Gluon``Trainer`可以轻松使用动量法。
......@@ -54,4 +54,8 @@ utils.optimize(batch_size=10, trainer=trainer, num_epochs=3, decay_epoch=2,
* 如果想用以上代码重现随机梯度下降,应该把动量参数改为多少?
**吐槽和讨论欢迎点**[这里](https://discuss.gluon.ai/t/topic/1880)
## 讨论
欢迎扫码直达[本节内容讨论区](https://discuss.gluon.ai/t/topic/1880)
![](../img/qr_momentum-gluon.svg)
......@@ -137,7 +137,7 @@ def optimize(batch_size, lr, mom, num_epochs, log_interval):
optimize(batch_size=10, lr=0.2, mom=0.9, num_epochs=3, log_interval=10)
```
## 结论
## 小结
* 动量法可以提升随机梯度下降,例如对于某些问题可以选用较大学习率从而加快收敛。
......@@ -146,4 +146,8 @@ optimize(batch_size=10, lr=0.2, mom=0.9, num_epochs=3, log_interval=10)
* 试着使用较小的动量参数,观察实验结果。
**吐槽和讨论欢迎点**[这里](https://discuss.gluon.ai/t/topic/1879)
## 讨论
欢迎扫码直达[本节内容讨论区](https://discuss.gluon.ai/t/topic/1879)
![](../img/qr_momentum-scratch.svg)
......@@ -55,7 +55,7 @@ utils.optimize(batch_size=10, trainer=trainer, num_epochs=3, decay_epoch=None,
log_interval=10, X=X, y=y, net=net)
```
## 结论
## 小结
* 使用`Gluon``Trainer`可以轻松使用RMSProp。
......@@ -63,4 +63,8 @@ utils.optimize(batch_size=10, trainer=trainer, num_epochs=3, decay_epoch=None,
* 试着使用其他的初始学习率和gamma参数的组合,观察实验结果。
**吐槽和讨论欢迎点**[这里](https://discuss.gluon.ai/t/topic/2276)
## 讨论
欢迎扫码直达[本节内容讨论区](https://discuss.gluon.ai/t/topic/2276)
![](../img/qr_rmsprop-gluon.svg)
......@@ -129,7 +129,7 @@ optimize(batch_size=10, lr=0.03, gamma=0.9, num_epochs=3, log_interval=10)
optimize(batch_size=10, lr=0.03, gamma=0.999, num_epochs=3, log_interval=10)
```
## 结论
## 小结
* RMSProp和Adagrad的不同在于,RMSProp使用了梯度按元素平方的指数加权移动平均变量来调整学习率。
* 通过调整指数加权移动平均中gamma参数的值可以控制学习率的变化。
......@@ -140,4 +140,8 @@ optimize(batch_size=10, lr=0.03, gamma=0.999, num_epochs=3, log_interval=10)
* 通过查阅网上资料,你对指数加权移动平均是怎样理解的?
* 为什么gamma调大后,损失函数在迭代后期较平滑?
**吐槽和讨论欢迎点**[这里](https://discuss.gluon.ai/t/topic/2275)
## 讨论
欢迎扫码直达[本节内容讨论区](https://discuss.gluon.ai/t/topic/2275)
![](../img/qr_rmsprop-scratch.svg)
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册