[發(fā)明專利]一種協(xié)同過濾并權(quán)衡數(shù)據(jù)信息的API推薦方法與裝置在審
| 申請?zhí)枺?/td> | 202011228952.0 | 申請日: | 2020-11-06 |
| 公開(公告)號: | CN112269946A | 公開(公告)日: | 2021-01-26 |
| 發(fā)明(設(shè)計)人: | 李偉湋;鄭黃河;黃志球;邵宜超 | 申請(專利權(quán))人: | 南京航空航天大學(xué) |
| 主分類號: | G06F16/9536 | 分類號: | G06F16/9536;G06F16/9535 |
| 代理公司: | 南京蘇高專利商標事務(wù)所(普通合伙) 32204 | 代理人: | 孟紅梅 |
| 地址: | 210016 江*** | 國省代碼: | 江蘇;32 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 協(xié)同 過濾 權(quán)衡 數(shù)據(jù) 信息 api 推薦 方法 裝置 | ||
1.一種協(xié)同過濾并權(quán)衡數(shù)據(jù)信息的API推薦方法,其特征在于,包括如下步驟:
(1)獲取當(dāng)前開發(fā)項目的所有調(diào)用關(guān)系信息,包括項目中已開發(fā)部分的聲明和聲明中調(diào)用的API接口;
(2)將代碼數(shù)據(jù)庫中已有的項目的所有API接口編號,計算代碼數(shù)據(jù)庫中已有的項目與當(dāng)前開發(fā)項目的相似度,數(shù)據(jù)庫中相似度前三的項目作為候選集,再獲取相似項目中的所有聲明,計算這些聲明與當(dāng)前開發(fā)的聲明的相似度,進行重排序,最后獲取相似度超過閾值μ的聲明,再由相似聲明集合中的所有API接口作為候選列表;
(3)根據(jù)候選列表中的所有API接口,計算近鄰因子權(quán)重和API推薦評分并進行排序,為用戶推薦所需接口。
2.根據(jù)權(quán)利要求1所述的協(xié)同過濾并權(quán)衡數(shù)據(jù)信息的API推薦方法,其特征在于,所述方法根據(jù)如下數(shù)據(jù)處理步驟生成代碼數(shù)據(jù)庫:
從Java應(yīng)用程序項目中抽取Java文件,解析每個Java文件,提取其中的函數(shù)名與Java文件間的調(diào)用關(guān)系,并且提取函數(shù)中調(diào)用其他函數(shù)的函數(shù)名,并且保留層次的API調(diào)用關(guān)系,并進行格式化存儲在數(shù)據(jù)庫中;
收集格式化API的結(jié)構(gòu)信息,包括:項目名稱,項目調(diào)用的聲明名稱,聲明調(diào)用的API接口名稱。
3.根據(jù)權(quán)利要求1所述的協(xié)同過濾并權(quán)衡數(shù)據(jù)信息的API推薦方法,其特征在于,所述方法根據(jù)如下公式計算項目間的相似度:
其中,p表示當(dāng)前正在開發(fā)的項目,q表示計算與當(dāng)前項目相似度的代碼數(shù)據(jù)庫中的項目,n表示代碼數(shù)據(jù)庫中所有API接口的種類數(shù),其中φt表示編號為t的接口在當(dāng)前項目p中的權(quán)重,ωt表示編號為t的接口在項目q中的權(quán)重;tf為當(dāng)前項目調(diào)用編號為t的接口的次數(shù),k、b為BM25中的給定參數(shù),L為當(dāng)前項目調(diào)用接口數(shù)量與平均項目調(diào)用接口數(shù)量的比值,為逆文本頻度算法,at為數(shù)據(jù)庫中調(diào)用過t接口的項目數(shù),|P|為數(shù)據(jù)庫中的項目總數(shù)。
4.根據(jù)權(quán)利要求1所述的協(xié)同過濾并權(quán)衡數(shù)據(jù)信息的API推薦方法,其特征在于,所述方法根據(jù)如下公式計算聲明間的相似度:
其中,d為當(dāng)前正在開發(fā)的聲明,e為相似項目中待計算相似度的聲明,F(xiàn)()表示聲明中所有調(diào)用接口的集合。
5.根據(jù)權(quán)利要求4所述的協(xié)同過濾并權(quán)衡數(shù)據(jù)信息的API推薦方法,其特征在于,所述方法根據(jù)如下數(shù)據(jù)處理步驟計算API的評分:
topsim(d)={e|sim(d,e)>μ}
根據(jù)如下公式計算候選集中的API評分:
其中,Rp,d,i為當(dāng)前開發(fā)者正在開發(fā)的項目p中的聲明d對API接口i推薦的評分,Re,i為聲明e對API接口i調(diào)用的次數(shù),為聲明e對其調(diào)用的所有API接口的平均調(diào)用次數(shù),Rd,j為聲明d對API接口j調(diào)用的次數(shù),為篩選出的相似聲明對接口j的平均調(diào)用次數(shù),λ為近鄰因子,m為相似聲明數(shù)量,n為候選列表的API接口數(shù)量;List(i)為候選列表中與API接口i相似的接口集合,API接口i,j的相似度為i,j對應(yīng)的API文檔的語義相似度。
6.一種協(xié)同過濾并權(quán)衡數(shù)據(jù)信息的API推薦裝置,包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,其特征在于,所述計算機程序被加載至處理器時實現(xiàn)根據(jù)權(quán)利要求1-5任一項所述的一種協(xié)同過濾并權(quán)衡數(shù)據(jù)信息的API推薦方法。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于南京航空航天大學(xué),未經(jīng)南京航空航天大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011228952.0/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 移動通信終端的協(xié)同方法及其界面系統(tǒng)
- 業(yè)務(wù)協(xié)同流程配置、業(yè)務(wù)協(xié)同方法及裝置
- 一種基于健康檔案共享平臺的跨醫(yī)院協(xié)同檢查信息系統(tǒng)
- 一種協(xié)同控制方法、協(xié)同控制系統(tǒng)及變頻器
- 基于協(xié)同網(wǎng)關(guān)的跨域協(xié)同交互方法
- 一種生產(chǎn)協(xié)同管理方法及系統(tǒng)
- 云邊協(xié)同方法、裝置、系統(tǒng)、設(shè)備和介質(zhì)
- 一種智能辦公協(xié)同操作方法及系統(tǒng)
- 一種用于無人裝備的時間協(xié)同航跡規(guī)劃方法
- 基于大數(shù)據(jù)的智慧辦公協(xié)同方法及系統(tǒng)
- 基于IPTV的電子節(jié)目菜單調(diào)整方法及系統(tǒng)
- 處置規(guī)劃系統(tǒng)及非瞬態(tài)計算機可讀介質(zhì)
- 一種生態(tài)系統(tǒng)服務(wù)間權(quán)衡強度的確定方法
- 用于輔助穿刺規(guī)劃的裝置和方法
- 基于語音智能的商業(yè)流量方法及系統(tǒng)
- 基于效能評估模型的艦船裝備質(zhì)量特性指標權(quán)衡分析方法
- 一種遙感衛(wèi)星效費權(quán)衡優(yōu)化方法
- 總能效與最小能效權(quán)衡的多波束衛(wèi)星通信魯棒預(yù)編碼方法
- 基于人工智能的社會化需求處理方法、裝置、計算機設(shè)備
- 基于PWL的浮點數(shù)對數(shù)計算架構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設(shè)備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設(shè)備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置





