基于異構(gòu)計算平臺的并行神經(jīng)網(wǎng)絡訓練算法設計
發(fā)布時間:2020-03-20 04:58
【摘要】:現(xiàn)如今人工智能已經(jīng)滲透到人們生活的各個角落,很多行業(yè)都通過人工智能實現(xiàn)了巨大的發(fā)展。人工智能的核心技術是人工神經(jīng)網(wǎng)絡,人工智能的廣泛應用離不開神經(jīng)網(wǎng)絡技術的巨大進步。但是,神經(jīng)網(wǎng)絡技術的進一步發(fā)展仍然面臨很多挑戰(zhàn)。目前,人工神經(jīng)網(wǎng)絡應用面臨的主要挑戰(zhàn)之一就是訓練,其實質(zhì)是一個基于大量數(shù)據(jù)反復迭代優(yōu)化的過程。該過程需要極高的計算能力和高效的最優(yōu)解搜尋方法。本文針對神經(jīng)網(wǎng)絡訓練過程中面對的問題,進行了詳細的探索與分析,并憑借異構(gòu)計算平臺的強大計算能力,設計并實現(xiàn)了三種并行優(yōu)化算法。首先,針對神經(jīng)網(wǎng)絡訓練時間較長的問題,實現(xiàn)了并行BFGS擬牛頓算法;其次,針對傳統(tǒng)的神經(jīng)網(wǎng)絡訓練方法易陷入局部收斂的問題,設計并實現(xiàn)了一種多群體PSO并行算法;最后,為了提升神經(jīng)網(wǎng)絡訓練過程中的收斂速度,將BFGS擬牛頓算法與PSO算法相結(jié)合,實現(xiàn)了BFGS-PSO混合算法。實驗結(jié)果顯示,與傳統(tǒng)的基于CPU的串行算法相比,本文設計的并行BFGS擬牛頓算法最高獲得了430倍的加速;本文設計的并行PSO算法與基于CPU的多線程PSO算法相比,獲得了35倍的加速;在超寬帶天線的實驗中,與BFGS擬牛頓算法相比,相同迭代次數(shù)下,訓練誤差縮小到了1.52%;并且,將二者結(jié)合而成的BFGS-PSO混合算法也展現(xiàn)了較強的收斂性,其收斂速度是BFGS擬牛頓算法的5.5倍,并且在相同訓練時間下,三種算法中BFGS-PSO混合算法的訓練誤差最小,僅為1.12%。
【圖文】:
圖 2-1 通用可編程 GPU 架構(gòu)簡圖GPU 與 CPU 的區(qū)別在通用計算領域,CPU 作為最傳統(tǒng)的計算設備,其性能提升主要依賴于理器主頻,而主頻的提升主要依賴于制作工藝的改進。然而,制作工藝是有限的,晶體管尺寸的降低逐漸趨緩,電路集成度的增長也逐漸趨于過提高處理器主頻來提升 CPU 性能遇到了前所未有的困境。因此,一 供應商嘗試改變 CPU 架構(gòu)來獲得性能的提升,在單塊芯片內(nèi)集成更多器核心,使 CPU 朝多核的方向發(fā)展成為了主要趨勢。自 2005 年第一款PU 的問世,時至今日,增加 CPU 核心數(shù)依然是提升 CPU 性能的主題。況下,單核 CPU 只能同時處理一個線程,而增加 CPU 的核心數(shù)可以使多個線程,因此,現(xiàn)在的 CPU 同樣可以做并行計算。雖然 CPU 架構(gòu)的優(yōu)化使其可以支持多線程并行處理,但它與 GPU 在并
13圖 2-2 OpenCL 內(nèi)存模型示意圖2.5.3 OpenCL 編程過程為了將上述框架有效整合在一起以實現(xiàn)我們想要的功能,需要一系列繁雜的操作,這個過程稱為 OpenCL 的編程過程。使用 OpenCL 編程過程如下:(1) 發(fā)現(xiàn)并初始化平臺;(2) 發(fā)現(xiàn)并初始化計算設備;(3) 創(chuàng)建上下文;(4) 創(chuàng)建命令隊列;(5) 創(chuàng)建內(nèi)存對象;(6) 將數(shù)據(jù)由主機端傳入設備端;(7) 創(chuàng)建并編譯程序?qū)ο螅?
【學位授予單位】:天津大學
【學位級別】:碩士
【學位授予年份】:2018
【分類號】:TP183
本文編號:2591287
【圖文】:
圖 2-1 通用可編程 GPU 架構(gòu)簡圖GPU 與 CPU 的區(qū)別在通用計算領域,CPU 作為最傳統(tǒng)的計算設備,其性能提升主要依賴于理器主頻,而主頻的提升主要依賴于制作工藝的改進。然而,制作工藝是有限的,晶體管尺寸的降低逐漸趨緩,電路集成度的增長也逐漸趨于過提高處理器主頻來提升 CPU 性能遇到了前所未有的困境。因此,一 供應商嘗試改變 CPU 架構(gòu)來獲得性能的提升,在單塊芯片內(nèi)集成更多器核心,使 CPU 朝多核的方向發(fā)展成為了主要趨勢。自 2005 年第一款PU 的問世,時至今日,增加 CPU 核心數(shù)依然是提升 CPU 性能的主題。況下,單核 CPU 只能同時處理一個線程,而增加 CPU 的核心數(shù)可以使多個線程,因此,現(xiàn)在的 CPU 同樣可以做并行計算。雖然 CPU 架構(gòu)的優(yōu)化使其可以支持多線程并行處理,但它與 GPU 在并
13圖 2-2 OpenCL 內(nèi)存模型示意圖2.5.3 OpenCL 編程過程為了將上述框架有效整合在一起以實現(xiàn)我們想要的功能,需要一系列繁雜的操作,這個過程稱為 OpenCL 的編程過程。使用 OpenCL 編程過程如下:(1) 發(fā)現(xiàn)并初始化平臺;(2) 發(fā)現(xiàn)并初始化計算設備;(3) 創(chuàng)建上下文;(4) 創(chuàng)建命令隊列;(5) 創(chuàng)建內(nèi)存對象;(6) 將數(shù)據(jù)由主機端傳入設備端;(7) 創(chuàng)建并編譯程序?qū)ο螅?
【學位授予單位】:天津大學
【學位級別】:碩士
【學位授予年份】:2018
【分類號】:TP183
【參考文獻】
相關期刊論文 前10條
1 陳貴云;張江;;基于擬牛頓算法神經(jīng)網(wǎng)絡的入侵檢測系統(tǒng)的研究[J];計算機安全;2014年01期
2 劉道華;張禮濤;曾召霞;孫文蕭;;基于正交最小二乘法的徑向基神經(jīng)網(wǎng)絡模型[J];信陽師范學院學報(自然科學版);2013年03期
3 王海峰;陳慶奎;;圖形處理器通用計算關鍵技術研究綜述[J];計算機學報;2013年04期
4 魏明生;童敏明;訾斌;唐守鋒;;基于粒子群-擬牛頓混合算法的管道機器人定位[J];儀器儀表學報;2012年11期
5 林琳;黃南天;高興泉;;基于DFP校正擬牛頓法的傅里葉神經(jīng)網(wǎng)絡[J];計算機工程;2012年10期
6 陳瑩瑩;;Quasi-Newton Method相關綜述[J];黑龍江科技信息;2012年10期
7 李熙銘;歐陽丹彤;白洪濤;;基于GPU的混合精度平方根共軛梯度算法[J];儀器儀表學報;2012年01期
8 耿紅梅;;BFGS算法綜述[J];大眾科技;2011年11期
9 盧風順;宋君強;銀?;張理論;;CPU/GPU協(xié)同并行計算研究綜述[J];計算機科學;2011年03期
10 夏俊峰;楊帆;李靜;鄭秀玉;;基于GPU的電力系統(tǒng)并行潮流計算的實現(xiàn)[J];電力系統(tǒng)保護與控制;2010年18期
,本文編號:2591287
本文鏈接:http://sikaile.net/kejilunwen/sousuoyinqinglunwen/2591287.html
最近更新
教材專著