[發(fā)明專利]代碼推薦方法和裝置在審
| 申請?zhí)枺?/td> | 202010562667.6 | 申請日: | 2020-06-19 |
| 公開(公告)號: | CN111723192A | 公開(公告)日: | 2020-09-29 |
| 發(fā)明(設(shè)計)人: | 許靜;過辰楷;楊卉;張青峰 | 申請(專利權(quán))人: | 南開大學;天津給智信息技術(shù)股份有限公司 |
| 主分類號: | G06F16/335 | 分類號: | G06F16/335;G06F16/35;G06F8/41;G06K9/62 |
| 代理公司: | 北京布瑞知識產(chǎn)權(quán)代理有限公司 11505 | 代理人: | 李浩 |
| 地址: | 300350 天津*** | 國省代碼: | 天津;12 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 代碼 推薦 方法 裝置 | ||
本申請實施例提供了一種代碼推薦方法、裝置、電子設(shè)備和計算機可讀存儲介質(zhì),解決了現(xiàn)有代碼自動推薦功能無法給用戶提供類級別的參考,且代碼推薦效率不高的問題。該代碼推薦方法包括:將多個待選數(shù)據(jù)輸入訓練好的分類模型,得到與多個所述待選數(shù)據(jù)一一對應(yīng)的多個分類,其中,多個所述待選數(shù)據(jù)用于表征多個候選代碼的內(nèi)容;根據(jù)與多個所述待選數(shù)據(jù)一一對應(yīng)的多個所述分類,獲取與多個所述分類一一對應(yīng)的多個分類相似度值;以及根據(jù)所述多個分類相似度值,從所述多個候選代碼中獲取推薦代碼。
技術(shù)領(lǐng)域
本發(fā)明涉及代碼推薦技術(shù)領(lǐng)域,具體涉及一種代碼推薦方法、裝置、電子設(shè)備和計算機可讀存儲介質(zhì)。
背景技術(shù)
現(xiàn)代軟件開發(fā)工作流程的主體是集成開發(fā)環(huán)境(IDE),許多高級開發(fā)工具的IDE的核心功能中包括了代碼自動推薦功能。然而IDE中包含的代碼推薦系統(tǒng)只能實現(xiàn)應(yīng)用程序接口(API)級別的推薦,即只能實現(xiàn)代碼補全,因此,只是免去了輸入冗長單詞的操作,無法給用戶提供類級別的參考,且代碼推薦效率不高。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明實施例提供了一種代碼推薦方法、裝置、電子設(shè)備和計算機可讀存儲介質(zhì),解決了現(xiàn)有代碼自動推薦功能無法給用戶提供類級別的參考,且代碼推薦效率不高的問題。
根據(jù)本申請的一個方面,本申請一實施例提供一種代碼推薦方法,包括:將多個待選數(shù)據(jù)輸入訓練好的分類模型,得到與多個所述待選數(shù)據(jù)一一對應(yīng)的多個分類,其中,多個所述待選數(shù)據(jù)用于表征多個候選代碼和用戶代碼的內(nèi)容;根據(jù)與多個所述待選數(shù)據(jù)一一對應(yīng)的多個所述分類,獲取與多個所述分類一一對應(yīng)的多個分類相似度值;以及根據(jù)所述多個分類相似度值,從所述多個候選代碼中獲取推薦代碼。
在本申請一實施例中,所述根據(jù)所述多個分類相似度值,從所述多個候選代碼中獲取推薦代碼包括:根據(jù)所述多個分類相似度值和初步相似度值的和,從所述多個候選代碼中獲取推薦代碼;其中,所述根據(jù)所述多個分類相似度值和初步相似度值的和,從所述多個候選代碼中獲取推薦代碼之前還包括:根據(jù)多個所述候選代碼和所述用戶代碼,得到與多個所述候選代碼一一對應(yīng)的多個初步相似度值;以及將與多個所述候選代碼一一對應(yīng)的多個所述初步相似度值和多個所述分類相似度值分別相加,得到與多個所述候選代碼一一對應(yīng)的所述多個分類相似度值和初步相似度值的和。
在本申請一實施例中,所述將多個待選數(shù)據(jù)輸入訓練好的分類模型之前還包括:對多個原始候選代碼進行特征提取,得到與所述多個原始候選代碼對應(yīng)的所述多個原始候選代碼的特征矩陣;對所述用戶代碼進行特征提取,得到與所述用戶代碼對應(yīng)的所述用戶代碼的特征向量;將所述多個原始候選代碼的所述特征矩陣與所述用戶代碼的所述特征向量相乘,得到所述多個原始候選代碼與所述用戶代碼的初步相似度向量,其中,所述相似度向量包含與所述多個原始候選代碼一一對應(yīng)的多個相似度向量元素值;以及提取與所述多個原始候選代碼一一對應(yīng)的多個所述相似度向量元素值大于預(yù)設(shè)閾值的代碼,得到多個候選代碼。
在本申請一實施例中,所述根據(jù)多個所述候選代碼和所述用戶代碼,得到與多個所述候選代碼一一對應(yīng)的多個初步相似度值包括:提取與多個所述候選代碼一一對應(yīng)的多個相似度向量元素值;以及;以及將與多個所述候選代碼一一對應(yīng)的多個所述相似度向量元素值進行歸一化處理,得到與多個所述候選代碼一一對應(yīng)的多個所述初步相似度值。
在本申請一實施例中,所述根據(jù)所述多個候選代碼和所述用戶代碼,得到與多個所述候選代碼一一對應(yīng)的多個初步相似度值之前還包括:在項目集平臺收集多個項目;以及提取多個所述項目中每個所述項目的多個類文件,得到所述多個原始候選代碼。
在本申請一實施例中,所述在項目集平臺收集多個項目包括:在項目集平臺收集多個關(guān)注度大于預(yù)設(shè)數(shù)值的項目。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于南開大學;天津給智信息技術(shù)股份有限公司,未經(jīng)南開大學;天津給智信息技術(shù)股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010562667.6/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





