天堂国产午夜亚洲专区-少妇人妻综合久久蜜臀-国产成人户外露出视频在线-国产91传媒一区二区三区

當(dāng)前位置:主頁 > 科技論文 > 搜索引擎論文 >

基于差異代碼克隆搜索的代碼塊補(bǔ)全推薦算法研究

發(fā)布時(shí)間:2020-05-18 12:34
【摘要】:代碼補(bǔ)全推薦是軟件工程領(lǐng)域的熱門研究,可以提升軟件開發(fā)效率,F(xiàn)有的代碼補(bǔ)全推薦算法大都是針對(duì)關(guān)鍵詞與語句粒度的,這種粒度的推薦所能提供的代碼信息量較小,因此存在效率不高的問題,而現(xiàn)代軟件開發(fā)更需要若干代碼行(稱之為代碼塊)這樣大粒度的代碼推薦以提升代碼推薦效率。為了實(shí)現(xiàn)大粒度代碼補(bǔ)全推薦,需要在代碼庫中搜索出與待補(bǔ)全代碼相似的代碼,但由于待補(bǔ)全代碼的不完整造成與完整代碼有較大的差異,從而導(dǎo)致難以搜索出相似代碼。近期一種新的能發(fā)現(xiàn)大差異(Large-gap)代碼克隆的算法CCAligner被提出,使代碼塊粒度的代碼補(bǔ)全推薦成為了可能。本文基于差異代碼克隆算法改造,以及對(duì)現(xiàn)有大量的、高質(zhì)量源碼庫的利用,提出了一種全新的代碼塊補(bǔ)全推薦算法。論文的主要工作和貢獻(xiàn)如下:(1)差異代碼克隆技術(shù)研究及改造本文通過使用大差異代碼克隆算法在代碼庫中搜索出與待補(bǔ)全代碼塊相似的候選代碼塊,但由于大差異代碼克隆算法是用于在一個(gè)代碼集合中去發(fā)現(xiàn)彼此是克隆的所有差異代碼對(duì),而本文是在代碼集合中搜索出與某個(gè)待補(bǔ)全代碼塊相似的差異代碼塊,兩者對(duì)算法搜索的要求不同,因此需要進(jìn)行改造以降低計(jì)算成本和提升針對(duì)性。針對(duì)上述問題,我們將大差異代碼克隆算法的查找模式從多對(duì)多改為一對(duì)多,增加預(yù)處理將與待補(bǔ)全代碼塊無關(guān)的代碼塊全部過濾,并通過計(jì)算實(shí)驗(yàn)選取優(yōu)化的算法參數(shù)。實(shí)驗(yàn)結(jié)果表明,改造后的算法在5M行的代碼庫中的相似代碼檢測(cè)時(shí)間只有原算法的10.7%;對(duì)于滑動(dòng)窗口數(shù)為5、誤配數(shù)為1、相似度閾值為0.5的算法參數(shù),可以將原算法參數(shù)的F值提升10%以上。(2)代碼塊補(bǔ)全推薦算法設(shè)計(jì)與實(shí)現(xiàn)在上面的工作基礎(chǔ)上,我們進(jìn)一步對(duì)搜索結(jié)果中候選代碼塊進(jìn)行補(bǔ)全推薦算法設(shè)計(jì)。由于代碼庫中存在大量重復(fù)代碼,為防止相同或相近的候選代碼被重復(fù)推薦,因此本文通過對(duì)搜索出的結(jié)果(候選代碼)進(jìn)行聚類使得相同或相近的代碼塊作為一類推薦。此外,為保證推薦代碼的有用性,需要對(duì)聚類后的候選代碼塊進(jìn)行打分排序,讓相關(guān)性高的候選代碼塊優(yōu)先被推薦。本文根據(jù)問題特點(diǎn)選取DBSCAN作為聚類算法對(duì)搜索結(jié)果進(jìn)行聚類,聚類后我們從每個(gè)類別中選取一個(gè)代碼塊作為代表,然后從代碼出現(xiàn)的頻率、代碼的語法與語義相似度三個(gè)方面對(duì)代碼塊進(jìn)行相關(guān)性打分,并按照得分順序?qū)Υa進(jìn)行補(bǔ)全推薦。實(shí)驗(yàn)結(jié)果表明,在收集的Android Social Network數(shù)據(jù)集上本文方法進(jìn)行了放回和不放回計(jì)算實(shí)驗(yàn),Top-3準(zhǔn)確率分別達(dá)到93.75%和68.75%;本文方法相對(duì)于僅能尾部代碼塊補(bǔ)全推薦方法進(jìn)行了比較,Top-1準(zhǔn)確率提升了20%至30%。
【圖文】:

代碼行,代碼


第I章緒邋論逡逑網(wǎng)絡(luò)和基于循環(huán)神經(jīng)網(wǎng)絡(luò)的GRU(Gate邋Recurrent邋Unit)模型應(yīng)用于token補(bǔ)全問逡逑題,同時(shí)根據(jù)Python語言的特性對(duì)源代碼進(jìn)行語法分析以提升token的質(zhì)量,,從逡逑而最終提升token補(bǔ)全的效果。逡逑1.2.3.代碼行粒度的代碼補(bǔ)全技術(shù)逡逑代碼行粒度的代碼補(bǔ)全技術(shù)是指正在編寫的代碼塊缺失了下一行代碼(如逡逑圖1.3-(a)所示),通過使用代碼行補(bǔ)全方法將下一行代碼補(bǔ)全完成(如圖l.3-(b)逡逑所示)。Little邋etal.l|6】根據(jù)代碼庫中己有代碼建立關(guān)鍵詞和函數(shù)調(diào)用的關(guān)系,然逡逑后在代碼段中輸入特定的關(guān)鍵詞,最后根據(jù)關(guān)鍵詞與函數(shù)調(diào)用的關(guān)系以及語法逡逑自動(dòng)補(bǔ)全這段代碼。Raychev邋et邋從代碼中提取對(duì)象的AP丨調(diào)用序列建立二逡逑元組模型,然后使用統(tǒng)計(jì)語言模型學(xué)習(xí)其中的規(guī)律,之后對(duì)待補(bǔ)全的代碼建立逡逑API調(diào)用序列,通過使用訓(xùn)練好的統(tǒng)計(jì)語言模型推薦可能的API,再結(jié)合己給的逡逑提示信息完成代碼行的補(bǔ)全。逡逑void邋exampleM^diaReccrder()邋throws邋10Exc?ption邋(逡逑

序列,代碼塊,實(shí)例,問題


第2章問題定義及相關(guān)知識(shí)逡逑本章概要:本章主要介紹了代碼塊補(bǔ)全推薦的問題定義與所涉及逡逑到的相關(guān)技術(shù)。主要分為四個(gè)部分,首先介紹了代碼塊補(bǔ)全推薦的問題逡逑定義,接著介紹了幾種常用的代碼表現(xiàn)形式,之后介紹了代碼克隆的相逡逑關(guān)知識(shí),然后介紹了聚類算法的相關(guān)技術(shù),最后對(duì)本章內(nèi)容進(jìn)行小結(jié)。逡逑2.1問題定義逡逑2.1.1.代碼塊概念逡逑本文所研宄的問題是代碼塊補(bǔ)全推薦問題,首先介紹代碼塊的概念,代碼塊逡逑是指一個(gè)方法或者是由一對(duì)大括號(hào)里的一段連續(xù)代碼語句序列[|9],圖2.l-(a)逡逑和圖2.l-(b)分別是連續(xù)代碼語句序列形式的代碼塊以及函數(shù)方法形式的代碼塊逡逑的實(shí)例。逡逑
【學(xué)位授予單位】:中國(guó)科學(xué)技術(shù)大學(xué)
【學(xué)位級(jí)別】:碩士
【學(xué)位授予年份】:2019
【分類號(hào)】:TP391.3

【相似文獻(xiàn)】

相關(guān)期刊論文 前10條

1 袁仲達(dá);馬昱春;邊計(jì)年;趙康;;基于運(yùn)行時(shí)基本代碼塊的可重構(gòu)軟硬件協(xié)同設(shè)計(jì)[J];清華大學(xué)學(xué)報(bào)(自然科學(xué)版);2013年09期

2 周彥芳;;對(duì)《解碼塊不良導(dǎo)致彩電無伴音》(08年6期)一文遺留問題的解讀[J];家電檢修技術(shù);2008年21期

3 鄒麗新 ,姚天忠;單片微機(jī)的LED數(shù)碼塊顯示接口介紹[J];物理教師;1996年02期

4 吳嶺;張金榮;劉勝利;;Turbo碼塊同步參數(shù)優(yōu)化設(shè)計(jì)[J];飛行器測(cè)控學(xué)報(bào);2011年S1期

5 夏建平;;解碼塊不良導(dǎo)致彩電無伴音[J];家電檢修技術(shù);2008年11期

6 曹型兵;楊高進(jìn);余利成;;TD-LTE中基于碼塊分割的CRC模塊研究與設(shè)計(jì)[J];山西電子技術(shù);2012年04期

7 吳嶺;馮振明;左增宏;谷源濤;;TPC碼塊同步參數(shù)設(shè)計(jì)[J];飛行器測(cè)控學(xué)報(bào);2009年06期

8 石偉萍;劉輝;李小文;;TD-LTE中碼塊分割的研究與DSP實(shí)現(xiàn)[J];廣東通信技術(shù);2013年06期

9 苗澎;王志功;喬廬峰;;12×2.5Gbit/s并行偽隨機(jī)序列發(fā)生技術(shù)及在線誤碼塊監(jiān)測(cè)[J];電路與系統(tǒng)學(xué)報(bào);2006年06期

10 兆剪;;解析媒體矩陣(MediaMatrix)(四十八) NWare軟件介紹(10)——Python編程基礎(chǔ)(續(xù)4)[J];音響技術(shù);2008年07期

相關(guān)重要報(bào)紙文章 前1條

1 四川 王嘉帆;新科SDP1500移動(dòng)DVD圖解與維修[N];電子報(bào);2012年

相關(guān)博士學(xué)位論文 前3條

1 侯俊;Motion JPEG2000視頻編碼技術(shù)研究[D];上海交通大學(xué);2007年

2 白旭;電視制導(dǎo)中圖像處理算法和信息安全問題研究[D];哈爾濱工業(yè)大學(xué);2008年

3 何亨;對(duì)等云存儲(chǔ)服務(wù)系統(tǒng)的安全控制機(jī)制研究[D];華中科技大學(xué);2013年

相關(guān)碩士學(xué)位論文 前10條

1 殷康麒;基于差異代碼克隆搜索的代碼塊補(bǔ)全推薦算法研究[D];中國(guó)科學(xué)技術(shù)大學(xué);2019年

2 王日霞;H.264的快速編碼塊自適應(yīng)模式選擇算法優(yōu)化[D];江蘇大學(xué);2009年

3 馬勇;H.264標(biāo)準(zhǔn)下的編碼塊模式選擇算法研究[D];江蘇大學(xué);2010年

4 王穎異;嵌入式圖像編碼中碼率控制技術(shù)的應(yīng)用研究[D];同濟(jì)大學(xué);2008年

5 俞怡煒;基于JPEG2000的視頻編解碼軟件實(shí)現(xiàn)與優(yōu)化[D];上海交通大學(xué);2007年

6 姜軍;基于SOPC的圖像處理模塊電路設(shè)計(jì)[D];東南大學(xué);2016年

7 曾亞嬙;基于計(jì)算參與的國(guó)外中小學(xué)程序設(shè)計(jì)案例研究[D];上海師范大學(xué);2014年

8 蔡亞運(yùn);僵尸網(wǎng)絡(luò)控制命令發(fā)掘與應(yīng)用研究[D];南開大學(xué);2015年

9 侯冬梅;基于代碼塊的Android惡意軟件查殺系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D];中山大學(xué);2014年

10 王健;基于JPEG2000的率失真優(yōu)化截取VLSI設(shè)計(jì)[D];西安電子科技大學(xué);2012年



本文編號(hào):2669723

資料下載
論文發(fā)表

本文鏈接:http://sikaile.net/kejilunwen/sousuoyinqinglunwen/2669723.html


Copyright(c)文論論文網(wǎng)All Rights Reserved | 網(wǎng)站地圖 |

版權(quán)申明:資料由用戶d1e33***提供,本站僅收錄摘要或目錄,作者需要?jiǎng)h除請(qǐng)E-mail郵箱bigeng88@qq.com
亚洲一区二区三区一区| 久久老熟女一区二区三区福利| 欧美日韩一区二区综合| 亚洲av一区二区三区精品| 久热人妻中文字幕一区二区| 亚洲乱妇熟女爽的高潮片| 99久只有精品免费视频播放| 欧美日韩国产另类一区二区| 伊人国产精选免费观看在线视频| 风韵人妻丰满熟妇老熟女av| 亚洲视频一区二区久久久| 日本欧美视频在线观看免费 | 日韩人妻一区中文字幕| 激情五月综五月综合网| 少妇一区二区三区精品| 日韩一区二区三区高清在| 91免费精品国自产拍偷拍| 黄色日韩欧美在线观看| 国产精品伦一区二区三区在线| 亚洲熟妇中文字幕五十路| 亚洲高清欧美中文字幕| 亚洲精品国产第一区二区多人| 亚洲深夜精品福利一区| 亚洲精品福利入口在线| 欧美一区二区三区播放| 五月婷婷欧美中文字幕| 国产成人精品一区在线观看| 日本高清视频在线播放| 九九热视频网在线观看| 午夜成年人黄片免费观看| 少妇毛片一区二区三区| 午夜精品国产一区在线观看| 国产精品亚洲综合天堂夜夜| 激情偷拍一区二区三区视频| 97人妻人人揉人人躁人人| 99国产精品国产精品九九| 国产av天堂一区二区三区粉嫩| 人妻乱近亲奸中文字幕| 手机在线不卡国产视频| 偷自拍亚洲欧美一区二页| 国产精品欧美激情在线播放|