《Python大规模机器学习》— 2.3.2 随机梯度下降
【摘要】 本节书摘来自华章计算机《Python大规模机器学习》一书中的第2章,第2.3.2节,作者是[荷]巴斯蒂安·贾丁(Bastiaan Sjardin)[意]卢卡·马萨罗(Luca Massaron)[意]阿尔贝托·博斯凯蒂(Alberto Boschetti)王贵财刘春明译。
2.3.2 随机梯度下降
到目前为止看到的梯度下降版本称为全批梯度下降,它通过优化整个数据集误差来工作,因此需要占用内存。非核心版是随机梯度下降(SGD)和最小批梯度下降(SGD)。
在这里,公式完全相同,但更新时每次只对一个实例更新,这样允许我们将核心数据保留在其存储区中,在内存中只进行单个处理:
其核心思想是,如果实例是随机选择,没有特定偏差,则优化将朝着目标成本最小化的方向移动。这就解释了为什么我们要讨论如何从数据流中删除任何顺序,让其尽可能随机。例如,共享单车示例中,如果随机梯度下降首先学习早期赛季的模式,然后关注夏天,接着关注秋天等等,受制于优化停止的季节,那么,模型将被调整以便能更好预测某个赛季,因为最近实例都来自那个季节。在随机梯度下降算法中,数据独立同分布(IID)会保证收敛于全局最优点。实际上,独立意味着实例无顺序分布。
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)