基于Spark MLlib的分布式自适应随机梯度下降算法研究
发布时间:2022-07-03 15:24
随机梯度下降(SGD,Stochastic Gradient Descent)是机器学习和深度学习中,用于求解非凸优化问题的标准迭代学习算法。针对SGD的不足,研究者们已经提出了多种改进算法。从优化方式上可以将这些改进算法分为基于动量的方法、方差缩减方法和自适应学习方法这三类。但是目前这些基于SGD的改进算法,都没有考虑算法训练过程中在当前迭代步越过最优解时,引起收敛震荡(oscillaition)的根本原因。传统SGD方法本质上是串行的,这使其在大数据集下变得不再适用。为此,研究者们提出了多种分布式优化算法。基于内存计算的Apache Spark是大数据处理的主流计算平台,Spark MLlib是基于Spark的可扩展机器学习库,是目前最流行的机器学习平台。然而,在MLlib库的SGD实现中,梯度数据在每次迭代中都需要同步一次,这导致收敛速度有时非常慢;当模型维度较高(>109)时,频繁的参数聚合操作又涉及到耗时的shuffle操作,因此效率非常低。此外,Spark的同步迭代通信模式基于Driver和Worker节点间的MapReduce操作,这使Spark成为了使用SGD的机...
【文章页数】:84 页
【学位级别】:硕士
【文章目录】:
摘要
Abstract
第一章 绪论
1.1 研究背景和意义
1.2 国内外研究现状
1.3 本文的研究内容和主要贡献点
1.4 本文的组织结构
第二章 相关背景知识
2.1 优化算法
2.1.1 梯度下降
2.1.2 随机梯度下降
2.1.3 基于动量的梯度下降
2.1.4 自适应学习算法
2.2 分布式优化算法
2.3 Spark大数据处理平台
2.3.1 Spark概述
2.3.2 Spark程序执行框架
2.3.3 Spark MLlib算法库简介
2.3.4 SGD的MLlib并行化实现
2.4 参数服务器
2.5 本章小结
第三章 单机自适应SGD算法
3.1 收敛震荡原因分析
3.2 动量项的自适应调整
3.3 学习率的自适应调整
3.4 OAA-SGD算法收敛性质分析
3.5 OAA-SGD算法性能分析
3.6 本章小结
第四章 基于Spark MLlib的分布式自适应SGD算法
4.1 Spark MLlib SGD算法缺点分析
4.2 基于局部搜索的更新迭代优化算法LS-SGD
4.3 基于收敛震荡分析的分布式自适应SGD优化算法OL-SGD
4.4 基于参数服务器的参数存储与通信优化算法OLP-SGD
4.5 LS-SGD算法收敛性质证明
4.6 本章小结
第五章 实验验证与分析
5.1 实验环境
5.2 实验数据集
5.3 LS-SGD和Spark MLlib SGD的性能对比
5.4 OLP-SGD和Spark MLlib SGD的性能对比
5.5 不同优化算法间的比较
5.6 OLP-SGD算法的小批量缩放规则测试
5.7 OLP-SGD算法的可拓展性实验
5.8 经验总结
5.9 本章小结
第六章 总结与展望
6.1 本文工作总结
6.2 进一步工作
参考文献
致谢
附录
本文编号:3655132
【文章页数】:84 页
【学位级别】:硕士
【文章目录】:
摘要
Abstract
第一章 绪论
1.1 研究背景和意义
1.2 国内外研究现状
1.3 本文的研究内容和主要贡献点
1.4 本文的组织结构
第二章 相关背景知识
2.1 优化算法
2.1.1 梯度下降
2.1.2 随机梯度下降
2.1.3 基于动量的梯度下降
2.1.4 自适应学习算法
2.2 分布式优化算法
2.3 Spark大数据处理平台
2.3.1 Spark概述
2.3.2 Spark程序执行框架
2.3.3 Spark MLlib算法库简介
2.3.4 SGD的MLlib并行化实现
2.4 参数服务器
2.5 本章小结
第三章 单机自适应SGD算法
3.1 收敛震荡原因分析
3.2 动量项的自适应调整
3.3 学习率的自适应调整
3.4 OAA-SGD算法收敛性质分析
3.5 OAA-SGD算法性能分析
3.6 本章小结
第四章 基于Spark MLlib的分布式自适应SGD算法
4.1 Spark MLlib SGD算法缺点分析
4.2 基于局部搜索的更新迭代优化算法LS-SGD
4.3 基于收敛震荡分析的分布式自适应SGD优化算法OL-SGD
4.4 基于参数服务器的参数存储与通信优化算法OLP-SGD
4.5 LS-SGD算法收敛性质证明
4.6 本章小结
第五章 实验验证与分析
5.1 实验环境
5.2 实验数据集
5.3 LS-SGD和Spark MLlib SGD的性能对比
5.4 OLP-SGD和Spark MLlib SGD的性能对比
5.5 不同优化算法间的比较
5.6 OLP-SGD算法的小批量缩放规则测试
5.7 OLP-SGD算法的可拓展性实验
5.8 经验总结
5.9 本章小结
第六章 总结与展望
6.1 本文工作总结
6.2 进一步工作
参考文献
致谢
附录
本文编号:3655132
本文链接:https://www.wllwen.com/kejilunwen/zidonghuakongzhilunwen/3655132.html