[發(fā)明專利]COStream中用于實現(xiàn)前饋神經(jīng)網(wǎng)絡(luò)的sequential結(jié)構(gòu)及其編譯方法有效
| 申請?zhí)枺?/td> | 202011169585.1 | 申請日: | 2020-10-27 |
| 公開(公告)號: | CN112214222B | 公開(公告)日: | 2021-11-19 |
| 發(fā)明(設(shè)計)人: | 于俊清;余冰清 | 申請(專利權(quán))人: | 華中科技大學 |
| 主分類號: | G06F8/41 | 分類號: | G06F8/41;G06N3/04;G06N3/08 |
| 代理公司: | 華中科技大學專利中心 42201 | 代理人: | 胡秋萍;李智 |
| 地址: | 430074 湖北*** | 國省代碼: | 湖北;42 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | costream 用于 實現(xiàn) 神經(jīng)網(wǎng)絡(luò) sequential 結(jié)構(gòu) 及其 編譯 方法 | ||
本發(fā)明公開了一種COStream中用于實現(xiàn)前饋神經(jīng)網(wǎng)絡(luò)的sequential結(jié)構(gòu)及其編譯方法,屬于計算機編譯技術(shù)領(lǐng)域。本發(fā)明結(jié)合COStream中已經(jīng)存在的pipeline結(jié)構(gòu)文法與主流深度學習框架的API設(shè)計,設(shè)計了基于順序模型描述深度學習架構(gòu)、配置學習過程、設(shè)置訓練數(shù)據(jù)集以及訓練標簽集的sequential結(jié)構(gòu)的文法。sequential結(jié)構(gòu)的文法設(shè)計,使得用戶不再需要基于COStream中基本的數(shù)據(jù)流圖構(gòu)建語言,逐步構(gòu)造前饋神經(jīng)網(wǎng)絡(luò)的正向傳播、反向傳播過程中計算節(jié)點,有效地避免大量的代碼。本發(fā)明在sequential結(jié)構(gòu)文法的基礎(chǔ)上,實現(xiàn)了由sequentialNode轉(zhuǎn)換成實際compositeNode。
技術(shù)領(lǐng)域
本發(fā)明屬于計算機編譯技術(shù)領(lǐng)域,更具體地,涉及COStream中用于實現(xiàn)前饋神經(jīng)網(wǎng)絡(luò)的sequential結(jié)構(gòu)及其編譯方法。
背景技術(shù)
COStream是一種數(shù)據(jù)流編程語言和編譯器,在C++語法基礎(chǔ)上擴展了數(shù)據(jù)流相關(guān)語法Operator、Composite、Stream等。其中,Operator是用于定義初始化、執(zhí)行代碼和數(shù)據(jù)流流速的基本計算節(jié)點,Composite是能夠聲明并調(diào)用Operator或直接調(diào)用其他Composite的compositeNode,Stream是用于計算節(jié)點通信的數(shù)據(jù)流。COStream還提供Pipeline、Splitjoin結(jié)構(gòu)簡化構(gòu)造過程,其中Pipeline順序連接結(jié)構(gòu)內(nèi)的計算節(jié)點,利用階段差實現(xiàn)流水線并行;Splitjoin將數(shù)據(jù)復(fù)制或切片分發(fā)給結(jié)構(gòu)內(nèi)的計算節(jié)點,并將數(shù)據(jù)合并,能實現(xiàn)數(shù)據(jù)并行。這種基于數(shù)據(jù)流編程模型的語言,由編譯器根據(jù)底層的多核架構(gòu)為計算分配資源,并生成高效的可執(zhí)行代碼,將提升編程人員開發(fā)并行程序的效率。
前饋神經(jīng)網(wǎng)絡(luò)是深度學習領(lǐng)域內(nèi)一種常見的模型。目前深度學習框架中有一些框架本身是通用的數(shù)學表達式庫,雖然能減少模型的執(zhí)行時間和開發(fā)時間,但編寫和調(diào)試代碼的學習曲線相對陡峭。迭代訓練模型的過程,實際上是大規(guī)模數(shù)據(jù)流經(jīng)程序中的一系列數(shù)學變換的過程,把這些數(shù)學變換抽象成獨立的計算,形成恒定的數(shù)據(jù)流圖,符合數(shù)據(jù)流模型特點。因此基于數(shù)據(jù)流編程模型開發(fā)前饋神經(jīng)網(wǎng)絡(luò)這類計算密集型應(yīng)用,能將充分利用多核架構(gòu)中的計算資源,提升訓練速度。但現(xiàn)有COStream文法難以快速構(gòu)建深度學習模型。
發(fā)明內(nèi)容
針對現(xiàn)有技術(shù)的缺陷和改進需求,本發(fā)明提供了COStream中用于實現(xiàn)前饋神經(jīng)網(wǎng)絡(luò)的sequential結(jié)構(gòu)及其編譯方法,其目的在于實現(xiàn)支持COStream快速構(gòu)建前饋神經(jīng)網(wǎng)絡(luò)的文法,使其在與現(xiàn)有文法風格一致的基礎(chǔ)上,符合數(shù)據(jù)流編程語法的語義;在新增文法基礎(chǔ)上,對其編譯方法進行研究,實現(xiàn)將描述深度學習架構(gòu)的語句映射到其在訓練階段的數(shù)據(jù)流圖、實現(xiàn)生成前饋神經(jīng)網(wǎng)絡(luò)層在正向、反向傳播對應(yīng)的計算節(jié)點。以此增加COStream對深度學習的支持、減少代碼量、提高用戶友好性。
為實現(xiàn)上述目的,按照本發(fā)明的第一方面,提供了一種COStream中用于實現(xiàn)前饋神經(jīng)網(wǎng)絡(luò)的sequential結(jié)構(gòu),所述sequential結(jié)構(gòu)由sequential的頭部和sequential的主體組成;
所述sequential的頭部包括兩個部分:第一部分是訓練前饋神經(jīng)網(wǎng)絡(luò)模型時的輸入流列表,列表中依次是由用于訓練整個前饋神經(jīng)網(wǎng)絡(luò)模型的訓練數(shù)據(jù)集和訓練標簽集構(gòu)成的數(shù)據(jù)流;第二部分是配置前饋神經(jīng)網(wǎng)絡(luò)模型訓練過程的參數(shù)列表,依次對應(yīng)輸入數(shù)據(jù)的大小、學習率、批量數(shù)、損失函數(shù)、參數(shù)初始化方式;
所述sequential的主體內(nèi)是操作語句,采用add關(guān)鍵字按前饋神經(jīng)網(wǎng)絡(luò)內(nèi)神經(jīng)網(wǎng)絡(luò)層的順序添加不同類型的神經(jīng)網(wǎng)絡(luò)層到sequential結(jié)構(gòu),從而確定順序模型內(nèi)神經(jīng)網(wǎng)絡(luò)層的類型、配置參數(shù)以及它們線性堆疊的順序。
為實現(xiàn)上述目的,按照本發(fā)明的第二方面,提供了一種COStream中用于實現(xiàn)前饋神經(jīng)網(wǎng)絡(luò)的sequential結(jié)構(gòu)的編譯方法,該方法包括:
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于華中科技大學,未經(jīng)華中科技大學許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011169585.1/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 互動業(yè)務(wù)終端、實現(xiàn)系統(tǒng)及實現(xiàn)方法
- 街景地圖的實現(xiàn)方法和實現(xiàn)系統(tǒng)
- 游戲?qū)崿F(xiàn)系統(tǒng)和游戲?qū)崿F(xiàn)方法
- 圖像實現(xiàn)裝置及其圖像實現(xiàn)方法
- 增強現(xiàn)實的實現(xiàn)方法以及實現(xiàn)裝置
- 軟件架構(gòu)的實現(xiàn)方法和實現(xiàn)平臺
- 數(shù)值預(yù)報的實現(xiàn)方法及實現(xiàn)系統(tǒng)
- 空調(diào)及其冬眠控制模式實現(xiàn)方法和實現(xiàn)裝置以及實現(xiàn)系統(tǒng)
- 空調(diào)及其睡眠控制模式實現(xiàn)方法和實現(xiàn)裝置以及實現(xiàn)系統(tǒng)
- 輸入設(shè)備實現(xiàn)方法及其實現(xiàn)裝置
- 硬件神經(jīng)網(wǎng)絡(luò)轉(zhuǎn)換方法、計算裝置、軟硬件協(xié)作系統(tǒng)
- 生成較大神經(jīng)網(wǎng)絡(luò)
- 神經(jīng)網(wǎng)絡(luò)的生成方法、生成裝置和電子設(shè)備
- 一種舌診方法、裝置、計算設(shè)備及計算機存儲介質(zhì)
- 學習神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
- 脈沖神經(jīng)網(wǎng)絡(luò)轉(zhuǎn)換方法及相關(guān)轉(zhuǎn)換芯片
- 圖像處理方法、裝置、可讀存儲介質(zhì)和計算機設(shè)備
- 一種適應(yīng)目標數(shù)據(jù)集的網(wǎng)絡(luò)模型微調(diào)方法、系統(tǒng)、終端和存儲介質(zhì)
- 用于重構(gòu)人工神經(jīng)網(wǎng)絡(luò)的處理器及其操作方法、電氣設(shè)備
- 一種圖像神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的優(yōu)化方法及裝置





