一種基于字符的代碼補(bǔ)全方法及系統(tǒng)
基本信息
申請?zhí)?/td> | CN201811223489.3 | 申請日 | - |
公開(公告)號 | CN109614103A | 公開(公告)日 | 2019-04-12 |
申請公布號 | CN109614103A | 申請公布日 | 2019-04-12 |
分類號 | G06F8/41;G06N3/04;G06N3/08 | 分類 | 計算;推算;計數(shù); |
發(fā)明人 | 李戈;郝逸洋;劉洋 | 申請(專利權(quán))人 | 北京硅心科技有限公司 |
代理機(jī)構(gòu) | 北京辰權(quán)知識產(chǎn)權(quán)代理有限公司 | 代理人 | 劉廣達(dá) |
地址 | 100190 北京市海淀區(qū)中關(guān)村東路66號世紀(jì)科貿(mào)大廈B1109 | ||
法律狀態(tài) | - |
摘要
摘要 | 本發(fā)明提供了一種基于字符的代碼補(bǔ)全方法及系統(tǒng),包括:源代碼處理步驟,使用抽象語法樹和標(biāo)識符化工具解析源代碼;模型訓(xùn)練步驟,使用LSTM模型訓(xùn)練語言模型;預(yù)測補(bǔ)全步驟,根據(jù)訓(xùn)練過的語言模型補(bǔ)全代碼。本發(fā)明利用深度學(xué)習(xí)模型中的循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)來構(gòu)建大規(guī)模代碼語料庫上的語言模型以預(yù)測后續(xù)的代碼。本發(fā)明提出了一個受限制的字符級循環(huán)神經(jīng)網(wǎng)絡(luò)并將其用于在Java語言中補(bǔ)全方法調(diào)用。本發(fā)明實現(xiàn)了在編程過程中,不僅可以對程序句子進(jìn)行補(bǔ)全,也可以對單個關(guān)鍵詞進(jìn)行補(bǔ)全。本發(fā)明的技術(shù)方案具有簡單、快速的特點,能夠較好地提高代碼推薦的準(zhǔn)確率和推薦效率。 |
