基于Spark MLlib的分布式自適應隨機梯度下降算法研究
發(fā)布時間:2022-07-03 15:24
隨機梯度下降(SGD,Stochastic Gradient Descent)是機器學習和深度學習中,用于求解非凸優(yōu)化問題的標準迭代學習算法。針對SGD的不足,研究者們已經(jīng)提出了多種改進算法。從優(yōu)化方式上可以將這些改進算法分為基于動量的方法、方差縮減方法和自適應學習方法這三類。但是目前這些基于SGD的改進算法,都沒有考慮算法訓練過程中在當前迭代步越過最優(yōu)解時,引起收斂震蕩(oscillaition)的根本原因。傳統(tǒng)SGD方法本質(zhì)上是串行的,這使其在大數(shù)據(jù)集下變得不再適用。為此,研究者們提出了多種分布式優(yōu)化算法;趦(nèi)存計算的Apache Spark是大數(shù)據(jù)處理的主流計算平臺,Spark MLlib是基于Spark的可擴展機器學習庫,是目前最流行的機器學習平臺。然而,在MLlib庫的SGD實現(xiàn)中,梯度數(shù)據(jù)在每次迭代中都需要同步一次,這導致收斂速度有時非常慢;當模型維度較高(>109)時,頻繁的參數(shù)聚合操作又涉及到耗時的shuffle操作,因此效率非常低。此外,Spark的同步迭代通信模式基于Driver和Worker節(jié)點間的MapReduce操作,這使Spark成為了使用SGD的機...
【文章頁數(shù)】:84 頁
【學位級別】:碩士
【文章目錄】:
摘要
Abstract
第一章 緒論
1.1 研究背景和意義
1.2 國內(nèi)外研究現(xiàn)狀
1.3 本文的研究內(nèi)容和主要貢獻點
1.4 本文的組織結(jié)構(gòu)
第二章 相關(guān)背景知識
2.1 優(yōu)化算法
2.1.1 梯度下降
2.1.2 隨機梯度下降
2.1.3 基于動量的梯度下降
2.1.4 自適應學習算法
2.2 分布式優(yōu)化算法
2.3 Spark大數(shù)據(jù)處理平臺
2.3.1 Spark概述
2.3.2 Spark程序執(zhí)行框架
2.3.3 Spark MLlib算法庫簡介
2.3.4 SGD的MLlib并行化實現(xiàn)
2.4 參數(shù)服務器
2.5 本章小結(jié)
第三章 單機自適應SGD算法
3.1 收斂震蕩原因分析
3.2 動量項的自適應調(diào)整
3.3 學習率的自適應調(diào)整
3.4 OAA-SGD算法收斂性質(zhì)分析
3.5 OAA-SGD算法性能分析
3.6 本章小結(jié)
第四章 基于Spark MLlib的分布式自適應SGD算法
4.1 Spark MLlib SGD算法缺點分析
4.2 基于局部搜索的更新迭代優(yōu)化算法LS-SGD
4.3 基于收斂震蕩分析的分布式自適應SGD優(yōu)化算法OL-SGD
4.4 基于參數(shù)服務器的參數(shù)存儲與通信優(yōu)化算法OLP-SGD
4.5 LS-SGD算法收斂性質(zhì)證明
4.6 本章小結(jié)
第五章 實驗驗證與分析
5.1 實驗環(huán)境
5.2 實驗數(shù)據(jù)集
5.3 LS-SGD和Spark MLlib SGD的性能對比
5.4 OLP-SGD和Spark MLlib SGD的性能對比
5.5 不同優(yōu)化算法間的比較
5.6 OLP-SGD算法的小批量縮放規(guī)則測試
5.7 OLP-SGD算法的可拓展性實驗
5.8 經(jīng)驗總結(jié)
5.9 本章小結(jié)
第六章 總結(jié)與展望
6.1 本文工作總結(jié)
6.2 進一步工作
參考文獻
致謝
附錄
本文編號:3655132
【文章頁數(shù)】:84 頁
【學位級別】:碩士
【文章目錄】:
摘要
Abstract
第一章 緒論
1.1 研究背景和意義
1.2 國內(nèi)外研究現(xiàn)狀
1.3 本文的研究內(nèi)容和主要貢獻點
1.4 本文的組織結(jié)構(gòu)
第二章 相關(guān)背景知識
2.1 優(yōu)化算法
2.1.1 梯度下降
2.1.2 隨機梯度下降
2.1.3 基于動量的梯度下降
2.1.4 自適應學習算法
2.2 分布式優(yōu)化算法
2.3 Spark大數(shù)據(jù)處理平臺
2.3.1 Spark概述
2.3.2 Spark程序執(zhí)行框架
2.3.3 Spark MLlib算法庫簡介
2.3.4 SGD的MLlib并行化實現(xiàn)
2.4 參數(shù)服務器
2.5 本章小結(jié)
第三章 單機自適應SGD算法
3.1 收斂震蕩原因分析
3.2 動量項的自適應調(diào)整
3.3 學習率的自適應調(diào)整
3.4 OAA-SGD算法收斂性質(zhì)分析
3.5 OAA-SGD算法性能分析
3.6 本章小結(jié)
第四章 基于Spark MLlib的分布式自適應SGD算法
4.1 Spark MLlib SGD算法缺點分析
4.2 基于局部搜索的更新迭代優(yōu)化算法LS-SGD
4.3 基于收斂震蕩分析的分布式自適應SGD優(yōu)化算法OL-SGD
4.4 基于參數(shù)服務器的參數(shù)存儲與通信優(yōu)化算法OLP-SGD
4.5 LS-SGD算法收斂性質(zhì)證明
4.6 本章小結(jié)
第五章 實驗驗證與分析
5.1 實驗環(huán)境
5.2 實驗數(shù)據(jù)集
5.3 LS-SGD和Spark MLlib SGD的性能對比
5.4 OLP-SGD和Spark MLlib SGD的性能對比
5.5 不同優(yōu)化算法間的比較
5.6 OLP-SGD算法的小批量縮放規(guī)則測試
5.7 OLP-SGD算法的可拓展性實驗
5.8 經(jīng)驗總結(jié)
5.9 本章小結(jié)
第六章 總結(jié)與展望
6.1 本文工作總結(jié)
6.2 進一步工作
參考文獻
致謝
附錄
本文編號:3655132
本文鏈接:http://www.sikaile.net/kejilunwen/zidonghuakongzhilunwen/3655132.html
最近更新
教材專著