赞
踩
优化器就是向模型打包传递参数,什么参数呢,就是我们训练时使用到的诸如,学习率,衰减,momentum,梯度下降得到若干种方式,用不用动量等等。你可以在一开始传入这个值,然后就一直使用这个值训练,也可以在训练时根据epoch调整参数。
optimizers的两种使用方式
一,在使用compile调用之前就生成自定义的optimizer实例,这种给用户的自由最大,但是同样的你也需要定义很多个参数:
- sgd = optimizers.SGD(lr=0.001, decay=1e-6, momentum=0.9, nesterov=True)
- model_mine.compile(loss = 'mean_squared_error', optimizers=sgd)
二,在complie的时候使用预定义的快捷optimizers参数:
mine_model.compile(loss='mean_squared_error', oprimizers='sgd')
对于方法一,你有若干可以填写的参数。
通用参数:梯度裁剪参数。抑制梯度爆炸,两种方式抑制:
1.所有参数的向量模长
2.每个参数的绝对值
同时,keras还提供了各种各样的梯度下降方式,比如:
- #随机梯度下降
- sgd = optimizers.SGD(lr
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。