模型的内容05 def main()

接着我们说明optimizer设定 。

首先,我们先得知道 training and validation 大概在做些甚麽事情。简单的说,就是影像读进来後,经过 model 的运算,得到一个猜测值。猜测值和目标值(label or target),经由某loss函数计算出loss值。然後回到原来的神经网路,进行weight(parameters)的优化调整,让loss变得最小(猜测值和目标值变得最接近)。此时,便需要optimizer来解决这件事情。我们先initialize一个optimizer ,如下所述:

 optimizer = optim.SGD(model.parameters(), lr=args['lr'], momentum=args['momentum'])

optim.SGD:表示我们用SGD作为optimize的方法,请自行查阅细节。由於optimize乃针对weights。所以,第一个参数就是神经网路的那堆weights-- model.parameters()。

lr:learn rate。简单说,就是逼近谷值(loss 最小值)的步伐。越大,速度越快到达山谷。但是,太大又怕超车,冲过山谷,形成经过山谷来回跑,而停不下来。此时需要momentum来调节。

momentum:

 w = - ( d Loss / d w ) * lr + m * w  

( d Loss / d w )为Loss 函数对w做偏微分。m为momentum,是上次和本次w的和,若方向相同则加速。(不懂可跳过,不会影响太大)

下一章节,我们说明 for loop的部分。


<<:  Day 15 Models介绍

>>:  14. 为何归咎於human error不是个好作法?

就做自己吧,其他角色都有人了。

就做自己吧,其他角色都有人了。 Be yourself; everyone else is alre...

NETGEAR WIFI EXTENDER SETUP

When we talk of Netgear WiFi Extender Setup , our ...

Day6 Project1 - 履历

补充一点HTML的资讯,HTML从1995年至今已经发展了多个版本,目前主流使用为HTML5,每个版...

Video播放器 PyQt5 QMediaPlayer

Python PyQt5 QMediaPlayer Video播放器 前言: 写个Python GU...

【Day 15】CodePipeline x 老实的人别去大阪 x 老菜卜玩东京

完整的标题:老实人暂时先别去玩大阪的 CodeBuild;老菜卜带你玩东京的 CodePipelin...