[發明專利]一種面向語法樹解碼器的代碼生成方法有效
| 申請號: | 202110305383.3 | 申請日: | 2021-03-22 |
| 公開(公告)號: | CN113157255B | 公開(公告)日: | 2022-07-05 |
| 發明(設計)人: | 王彪;李超;劉魁;曹亮 | 申請(專利權)人: | 成都淞幸科技有限責任公司;成都信息工程大學 |
| 主分類號: | G06F8/30 | 分類號: | G06F8/30;G06F8/41;G06N3/04;G06N3/08 |
| 代理公司: | 成都金英專利代理事務所(普通合伙) 51218 | 代理人: | 袁英 |
| 地址: | 610041 四*** | 國省代碼: | 四川;51 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 面向 語法 解碼器 代碼 生成 方法 | ||
本發明公開了一種面向語法樹解碼器的代碼生成方法,包括以下步驟:將數據通過編碼器解析生成AST,在AST結構上應用滑動窗口提取出AST結構特征,并對AST進行深層次節點進行遍歷,獲得AST中子父節點及兄弟節點的順序關系;在AST中加入多層連接,設計稠密網絡塊結構,利用稠密連接方法對深層卷積網絡進行訓練形成稠密的卷積神經網絡;設計過渡層結構,將設計的過渡層加入稠密的卷積神經網絡中并進行卷積和池化操作,對稠密的卷積神經網絡進行優化,輸出特征圖,生成代碼。本發明在語法樹解碼中縮短各個網絡層的連接,增加各個網絡層的連接,緩解了網絡加深帶來的梯度消失問題,增強特征傳播,促進特征共享,有效的減少了參數的數量。
技術領域
本發明涉及代碼生成技術領域,尤其涉及一種面向語法樹解碼器的代碼生成方法。
背景技術
隨著神經網絡技術的發展,利用自然語言與其他符號編寫的描述規范,自動生成可執行文件編程語言的源代碼成為了可能。其中語法樹解碼器的實現,現有方法主要依靠遞歸神經網絡(RNN)編碼器,再到Seq2Seq模型,再到CNN,模型既能學習到長序列的長短期記憶,又能捕獲到描述規范中更多的特征。而隨著描述規范語義的加深,邏輯的復雜,導致CNN的加深,基于語法的結構CNN解碼器在訓練中出現了梯度消失與退化等問題,導致難以擬合復雜邏輯的代碼生成場景。
目前語法樹解碼解決方案,主要依靠循環神經網絡(RNN)編碼器與卷積神經網絡(CNN)編碼器。RNN能解決長時依賴問題,而真實場景存在一個程序包含比自然語言句子更多的標記,于是運用多個CNN基于樹的卷積和預卷積,能有效地捕獲不同位置的特征。但還存在復雜邏輯程序的場景,因此特征需要加深CNN,隨身網絡變得越來越深,一個新的問題出現了:當梯度信息經過許多層時,便就會消失及發生退化的現象。
如申請號為CN202010468473.X的專利公開了一種代碼生成方法、裝置、設備及存儲介質,具體實現方案為,在第一語言環境下編寫第一業務邏輯的代碼,所述第一業務邏輯的代碼用于描述第一業務邏輯對應的功能,其中,所述第一業務邏輯的代碼是按照預設的聲明式應用程序接口API的描述方式進行編寫的,編寫完成后得到第一具體語法樹;基于預定的語法分析算法,將所述第一具體語法樹轉換為第一抽象語法樹;通過解釋器將所述第一抽象語法樹轉換為第二語言代碼,所述第二語言代碼用于執行所述第一業務邏輯對應的功能。利用該申請方案雖然能夠實現對目標代碼的動態描述,但是不能減少參數的數量且也不能緩解網絡加深帶來的梯度消失問題。
發明內容
本發明的目的在于克服現有技術的不足,提供一種面向語法樹解碼器的代碼生成方法,方法直接將所有層連接起來,保留前向傳播的特性,每個層從前面的所有層獲得附加輸入,并將其自身的特征映射傳遞到所有后續層。
本發明的目的是通過以下技術方案來實現的:
一種面向語法樹解碼器的代碼生成方法,包括以下步驟:
步驟一:將數據通過編碼器解析生成AST,在AST結構上應用滑動窗口提取出AST結構特征,并對AST進行深層次節點進行遍歷,獲得AST中子父節點及兄弟節點的順序關系;
步驟二:在AST中加入多層連接,設計稠密網絡塊結構,利用稠密連接方法對深層卷積網絡進行訓練形成稠密的卷積神經網絡;
步驟三:設計過渡層結構,將設計的過渡層加入稠密的卷積神經網絡中并進行卷積和池化操作,對稠密的卷積神經網絡進行優化,輸出特征圖,生成代碼。
具體的,所述步驟一具體包括以下子步驟:
S101,利用編碼器生成AST表示代碼語法結構,并根據語法邏輯生成相應的節點層級關系;
S102,構建一個具有固定深度的局部特征檢測器,在AST上應用滑動窗口提取結構特征;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于成都淞幸科技有限責任公司;成都信息工程大學,未經成都淞幸科技有限責任公司;成都信息工程大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110305383.3/2.html,轉載請聲明來源鉆瓜專利網。





