本發明提供一種用于源代碼的函數智能重命名方法,涉及深度強化學習技術領域。該方法首先對源代碼進行詞化占位符機制的結構化預處理,再構建生成函數名的強化學習actor網絡,actor網絡包含混合注意和復制機制的編解碼結構,生成構成函數名的多個子詞;同時定義強化學習acto網絡生成函數名的獎勵函數;構建生成函數名的強化學習critic網絡;critic網絡采用獎勵函數對actor網絡生成的函數名進行打分評價,反饋給actor網絡一個時間差分值,來訓練actor網絡,直到時間差分值收斂到指定閾值;最后測試生成函數名的actor網絡。該方法采用神經網絡和強化學習方法自動生成函數名稱,不僅可以維護源代碼,而且可以用于使用自然語言查詢和代碼分類來提高代碼搜索的性能。
聲明:
“用于源代碼的函數智能重命名方法” 該技術專利(論文)所有權利歸屬于技術(論文)所有人。僅供學習研究,如用于商業用途,請聯系該技術所有人。
我是此專利(論文)的發明人(作者)