国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

語義擴展連續(xù)查詢的重復(fù)錯誤報告預(yù)測①

2022-05-10 02:28張騫月趙瑞蓮王微微
計算機系統(tǒng)應(yīng)用 2022年2期
關(guān)鍵詞:詞庫主題詞檢索

張騫月,趙瑞蓮,王微微

(北京化工大學 信息科學與技術(shù)學院,北京 100029)

1 引言

為保證軟件系統(tǒng)的質(zhì)量與性能,軟件系統(tǒng)在發(fā)布或上線之前,需要進行大量的測試[1].測試人員一旦檢測出軟件系統(tǒng)存在問題,則將提交錯誤報告(bug report),以供開發(fā)人員對錯誤進行修復(fù).錯誤報告一般含有對錯誤的概要說明(title)、詳細描述(description)、提交時間、提交人、錯誤表現(xiàn)截圖、代碼片段等相關(guān)信息.

由于軟件項目規(guī)模的增大和復(fù)雜性的增加,導致參與測試工作的人員較多,不同測試人員可能會檢測到同一個錯誤,這樣就會造成針對同一錯誤,重復(fù)提交錯誤報告(duplicate bug report)的可能[2].而重復(fù)錯誤報告的存在,將降低開發(fā)人員修復(fù)錯誤的效率.因此,如何避免重復(fù)錯誤報告的提交已成為近年來軟件工程領(lǐng)域新的研究熱點.目前,與重復(fù)錯誤報告相關(guān)的研究主要集中在重復(fù)錯誤報告檢索與重復(fù)錯誤報告預(yù)測兩方面.

重復(fù)錯誤報告檢索是指:針對錯誤報告庫,采用自然語言處理和信息檢索技術(shù),檢索出重復(fù)的錯誤報告.如Wang 等[3]將錯誤報告中的自然語言描述與執(zhí)行信息作為查詢依據(jù),通過信息檢索技術(shù),檢測錯誤報告庫中是否存在重復(fù)的錯誤報告.該方法雖能通過對比錯誤報告中自然語言描述以及執(zhí)行信息的相似度,檢索得出重復(fù)錯誤報告,但該方法將錯誤報告的自然語言描述作為一個整體要素進行檢索,未對錯誤報告的自然語言描述進行深入的語義挖掘,使得檢索的準確率不高.范道遠等[4]借鑒集成測試的思想,提出了一種將錯誤報告文本信息與分類信息結(jié)合的重復(fù)錯誤報告檢索方法,該方法雖將分類信息與文本信息結(jié)合作為判定重復(fù)錯誤報告的依據(jù),但也未對錯誤報告文本信息進行語義挖掘,其對重復(fù)錯誤報告檢索準確率的提升仍然有限.Chaparro 等[5,6]基于文本檢索的錯誤定位方法,通過對錯誤報告中的文本信息進行語義分析,以錯誤報告中的可觀測行為OB (observed behavior)、錯誤復(fù)現(xiàn)步驟S2R (steps to reproduce)等作為查詢要素,通過各種組合方式,進行重復(fù)錯誤報告檢索,提高了檢索準確度.但該方法中對于OB、S2R 等語句的識別主要依靠人為判定與標注,在引入人為偏差的同時,也降低了重復(fù)錯誤報告檢索的自動化程度.為了更進一步地提高重復(fù)錯誤報告的檢索效率,Sun 等[7]提出一種基于判別模型的重復(fù)錯誤報告檢索方法,通過對錯誤報告的信息進行特征提取與對比,在錯誤報告庫中檢索相似的錯誤報告.該方法雖然較大程度提高了重復(fù)錯誤報告的檢索準確率,但動態(tài)建模開銷較大.

由于重復(fù)錯誤報告檢索是基于完整的錯誤報告,無法避免重復(fù)錯誤報告的產(chǎn)生.因此,Hindle 等[8]借鑒搜索引擎的思想,給出了一種重復(fù)錯誤報告預(yù)測方法.重復(fù)錯誤報告預(yù)測是指:在錯誤報告提交前對錯誤報告進行預(yù)測,以避免重復(fù)錯誤報告的產(chǎn)生.Hindle 等提出的重復(fù)錯誤報告預(yù)測方法,可在錯誤報告編寫過程中,對當前已輸入的文本內(nèi)容進行實時檢索,依據(jù)檢索結(jié)果判定當前撰寫的報告是否已在錯誤報告庫中,避免重復(fù)錯誤報告的提交.但由于其檢索過程采用倒排表索引技術(shù)[9],僅通過查詢詞序列與錯誤報告的詞法相關(guān)性進行檢索,并未對錯誤報告進行深入的語義挖掘.因此,該方法在重復(fù)錯誤報告預(yù)測的準確度仍有很大的改進空間.此外,隨著錯誤報告庫的不斷增大,索引文件所占的內(nèi)存也在不斷增大[10],導致索引空間過大,檢索效率較低.

因此,本文提出一種基于語義擴展連續(xù)查詢的重復(fù)錯誤報告預(yù)測方法,通過對錯誤報告進行主題語義挖掘,確定錯誤報告的主題詞,構(gòu)建基于主題模型的錯誤報告索引詞庫,以減小錯誤報告索引空間,建立主題詞-錯誤報告之間的語義關(guān)系;在此基礎(chǔ)上,對查詢詞序列進行同義詞補充及基于語義的后續(xù)詞組擴展,以提升查詢準確度;同時,在檢索過程中,利用語義擴展后的查詢詞序列對主題索引進行檢索,以提升檢索效果及效率.通過實驗驗證,相較于傳統(tǒng)方法,本文方法減小了50% 以上的索引空間,在檢索速度上提升了41%–73%,預(yù)測效果最高提升33.6%.

2 基于主題模型的錯誤報告索引詞庫構(gòu)建

傳統(tǒng)的倒排表索引技術(shù)依據(jù)詞與錯誤報告的包含關(guān)系建立詞與錯誤報告的索引聯(lián)系[11,12],并且根據(jù)錯誤報告中包含的詞全集建立錯誤報告的索引詞庫.一方面,僅靠包含關(guān)系建立起來的詞與錯誤報告之間的語義關(guān)聯(lián)可能導致檢索的準確率低下;另一方面,以詞全集作為錯誤報告索引詞庫也造成索引空間的不斷增大,降低了檢索效率.

基于此,本文提出一種基于主題模型的錯誤報告索引詞庫構(gòu)建方法,通過對錯誤報告進行主題語義挖掘,深化詞與錯誤報告之間的語義關(guān)聯(lián),確定錯誤報告主題詞,建立錯誤報告主題詞與錯誤報告之間的語義關(guān)系,構(gòu)建錯誤報告主題索引詞庫;同時,為減小錯誤報告索引空間,在構(gòu)建錯誤報告主題索引詞庫時,依據(jù)挖掘得到的錯誤報告主題,進行錯誤報告主題詞確定,以縮小錯誤報告索引詞庫,從而減小索引空間.

2.1 錯誤報告主題挖掘

針對錯誤報告主題挖掘,本文借鑒自然語言處理中文檔主題分類思想,利用常用的LDA (latent Dirichlet allocation)主題模型[13,14],對庫中的錯誤報告進行主題挖掘,獲取錯誤報告的主題分布與針對每個主題的詞項分布,由此可計算每份錯誤報告的中心主題,以及與中心主題高度相關(guān)的若干關(guān)鍵詞,這些關(guān)鍵詞即為錯誤報告的主題詞.

在LDA 主題模型中,假設(shè)錯誤報告主題與主題中詞項的先驗分布均為Dirichlet 分布,則對于任一錯誤報告,其主題分布為:

其中,α為分布的超參數(shù),是一個k維向量;k代表主題個數(shù).

對于任一主題,其詞項分布為:

其中,η為分布的超參數(shù),是一個v維向量.v代表詞庫中詞的個數(shù).

在利用LDA 主題模型對錯誤報告進行主題挖掘時,設(shè)定的主題數(shù)目越多,對錯誤報告的語義劃分越細,后續(xù)建立的詞-錯誤報告關(guān)系就越多;設(shè)定的主題數(shù)目越少,對錯誤報告的劃分越粗,后續(xù)建立的詞-錯誤報告關(guān)系就越少.因此,為了平衡檢索的準確率與減小索引空間的需求,需要合理設(shè)定主題數(shù)目.

2.2 錯誤報告主題詞確定

由于LDA 主題模型得到的詞概率分布中所含的詞全集作為錯誤報告的主題詞,則錯誤報告主題索引空間太大.為了減小錯誤報告主題索引空間,本文依據(jù)挖掘得到的錯誤報告主題,確定錯誤報告的主題詞,剔除與主題關(guān)聯(lián)度不大的詞,將與主題較為相關(guān)的詞選入主題索引詞庫.但由于設(shè)置的主題個數(shù)的局限性,可能會遺漏一些在主題的詞項分布中概率數(shù)值較低但對錯誤報告區(qū)分度很高的詞,為避免遺漏此類主題詞,本文在確定錯誤報告主題詞的過程中,利用TF-IDF 進行詞項權(quán)重判定,以保留詞頻較低但較為重要的詞項,也可有效避免常用詞對主題詞的影響.

TF-IDF 公式計算如下:

其中,tf(t,d) 表示詞t在錯誤報告d中出現(xiàn)的頻率;N代表語料庫中錯誤報告的總數(shù);df(t)代表包含詞t的錯誤報告數(shù).ln(N/(df(t)+1))又可寫作idf,即逆文檔頻率.

TF-IDF 代表的含義為:一個詞的重要程度跟它在錯誤報告中出現(xiàn)的次數(shù)成正比[15],跟它在語料庫出現(xiàn)的次數(shù)成反比,通過詞頻(tf)與逆文檔頻率(idf)的乘積計算,其值越大,則表明該詞與錯誤報告的關(guān)聯(lián)越大.因此,結(jié)合TF-IDF 權(quán)衡詞項權(quán)重,可有效避免常用詞對主題詞的影響,也能避免漏選低頻主題詞的情況.

結(jié)合LDA的錯誤報告主題語義挖掘與TF-IDF 詞項權(quán)重判定,可得出與主題相關(guān)性較高及與錯誤報告關(guān)聯(lián)度較大的詞,這些詞可作為錯誤報告的主題詞.錯誤報告主題詞確定流程如圖1所示.

圖1 錯誤報告主題詞確定流程

2.3 主題詞-錯誤報告關(guān)系構(gòu)建

為構(gòu)建錯誤報告主題索引詞庫,在確定了錯誤報告主題詞的基礎(chǔ)上,還需要對錯誤報告主題詞與錯誤報告本身建立關(guān)系.

在傳統(tǒng)的錯誤報告索引詞庫構(gòu)建中,詞與錯誤報告之間的關(guān)系為包含關(guān)系[16],即若某詞包含于若干錯誤報告中,則該詞與這些錯誤報告形成關(guān)聯(lián)關(guān)系.但這種包含關(guān)系不能體現(xiàn)詞與錯誤報告更深層次的語義關(guān)系,所以檢索效果不佳.

因此,本文通過建立錯誤報告主題詞與錯誤報告的語義關(guān)系,深化錯誤報告主題詞與錯誤報告之間的語義關(guān)聯(lián),以提升檢索效果.

圖2為主題詞-錯誤報告關(guān)系示例圖.在主題詞與錯誤報告的語義關(guān)系中,主題是主題詞與錯誤報告的關(guān)系媒介,即主題詞與錯誤報告的關(guān)聯(lián)是通過同屬于某一主題形成的.

圖2 主題詞-錯誤報告關(guān)系示例圖

3 基于語義擴展連續(xù)查詢的重復(fù)錯誤報告預(yù)測

為提高重復(fù)錯誤報告預(yù)測的準確率與檢索效率,本文提出一種基于語義擴展連續(xù)查詢的重復(fù)錯誤報告預(yù)測方法,框架如圖3所示,主要由錯誤報告主題索引詞庫構(gòu)建、查詢詞序列擴展、基于連續(xù)查詢的錯誤報告檢索,以及預(yù)測結(jié)果排序4 個部分組成.

圖3 基于語義擴展連續(xù)查詢重復(fù)錯誤報告預(yù)測方法

對初始查詢詞序列進行基于語義上下文的擴展,可以得到初始查詢詞序列的同義詞組及語義后續(xù)詞組,形成當前查詢詞擴展序列.同時,由于庫中錯誤報告數(shù)量龐大,為提升檢索效率,本文通過基于連續(xù)查詢的錯誤報告檢索算法,對當前查詢詞擴展序列進行檢索.為保證預(yù)測結(jié)果與查詢詞序列在語義上更具相關(guān)性,對檢索得到的相關(guān)錯誤報告,依據(jù)文本相似度進行排序,以此為最終的預(yù)測結(jié)果.

3.1 查詢詞序列擴展

在重復(fù)錯誤報告連續(xù)查詢時,為提高重復(fù)錯誤報告的查全率,本文通過當前詞的同義詞補充與后續(xù)詞組預(yù)測,對初始查詢詞序列進行基于語義上下文的擴展,形成當前詞的擴展序列.

(1)當前詞同義詞補充

對當前詞進行同義詞補充的目的有兩個,一是若當前詞在錯誤報告主題索引詞庫中不存在時,對當前詞進行同義詞補充,可以使補充的同義詞在錯誤報告主題索引詞庫中;二是通過當前詞同義詞補充,擴大當前詞關(guān)聯(lián)的錯誤報告范圍,可提升查全率.

(2)基于語義的后續(xù)詞組預(yù)測

當查詢詞序列較短時,由于輸入的詞較少,查詢信息難以完整,僅依靠同義詞補充,并不能很好地將查詢信息補充完整,查詢檢索的準確率無法提升.因此,可通過對當前詞的同義詞組,進行基于語義上下文的后續(xù)詞組預(yù)測,得到<當前詞,同義詞,后續(xù)詞>的若干三元組,作為當前詞的擴展序列.通過基于語義的后續(xù)詞組預(yù)測,得到當前詞及其同義詞組的語義下文詞組,從語義上對查詢信息進行了完善,有助于提升重復(fù)錯誤報告的查全率.

3.2 基于連續(xù)查詢的錯誤報告檢索算法

在傳統(tǒng)的錯誤報告檢索中,檢索算法大多基于倒排表設(shè)計.倒排表索引詞庫中包含的詞為語料庫中所有的詞;同時,倒排表索引結(jié)構(gòu)的構(gòu)建是基于詞與錯誤報告的包含關(guān)系,這就使得無論對檢索算法如何改進,由于索引空間是不變的,檢索效率的提升也是有限的.因此,為進一步提升檢索效率,本文提出一種基于錯誤報告主題索引詞庫的連續(xù)查詢錯誤報告檢索算法,利用基于語義預(yù)測的前項查詢詞擴展序列,在錯誤報告主題索引詞庫中進行檢索時,可以縮小檢索空間,大幅提升檢索效率.

在查詢詞序列擴展時,對當前詞的同義詞組進行基于語義的后續(xù)詞組預(yù)測,得到當前詞的擴展序列<當前詞,同義詞,后續(xù)詞>,后續(xù)詞中有可能含有下一個要輸入的詞,由此可知,當前詞也極有可能包含在其前項詞擴展序列的后續(xù)詞中.擴展序列后續(xù)詞的數(shù)量顯然小于錯誤報告主題索引詞庫中詞的數(shù)量.所以,若在錯誤報告主題索引詞庫中對當前詞的擴展序列進行檢索時,先在其前項詞的擴展序列中檢索當前詞,若當前詞包含在其前項詞的擴展序列中,借助前項詞擴展序列的檢索結(jié)果,可以快速得到當前詞擴展序列的檢索結(jié)果,較大程度地提升檢索效率.因此,基于連續(xù)查詢的錯誤報告檢索算法如算法1.

算法1.基于連續(xù)查詢的錯誤報告檢索算法1) Buildsequence(input_word,synonym_word,conse-quent_word) //建立當前詞擴展序列;2) Length(initial_sequence,input_word) //判斷當前詞在查詢詞序列中的位置;If(Length(initial_sequence,input_word)==0){Search index}//若當前詞為第一個輸入詞,即不存在前項詞,則在錯誤報告主題索引中進行檢索;3) Else Search preceding_sequence//否則檢索其前項詞的擴展序列;If succeed{return index_report//若在其前項詞擴展序列中檢索到當前詞,則返回相關(guān)錯誤報告;}Else Search index//否則繼續(xù)在錯誤報告主題索引中檢索.

3.3 重復(fù)錯誤報告預(yù)測結(jié)果排序

在錯誤報告主題索引中,主題詞-錯誤報告關(guān)系是由主題詞與錯誤報告的主題相關(guān)性構(gòu)建起來的,因此,檢索得到的錯誤報告是與查詢詞序列具有主題相關(guān)性的.但是由于主題數(shù)目的有限性,使得僅通過主題相關(guān)性,無法準確表征詞在錯誤報告中的重要性.所以,僅以主題相關(guān)性作為預(yù)測結(jié)果是不全面的.

由于TF-IDF、BM25 等文本相似性算法比較簡單,能夠快速且較為準確地計算出查詢語句與文檔的相似性,在實時搜索中具有較強的實用性.因此,為了保證檢索實時性與查詢結(jié)果的準確性,本文采用文本相似性與主題相關(guān)性結(jié)合的方式對重復(fù)錯誤報告預(yù)測結(jié)果進行排序,即在基于連續(xù)查詢的錯誤報告檢索結(jié)果的基礎(chǔ)上,對檢索得到的錯誤報告與查詢詞序列進行文本相似性計算,將計算結(jié)果與錯誤報告主題相似度求和,以此作為重復(fù)錯誤報告預(yù)測結(jié)果的排序依據(jù).

4 實驗設(shè)計與結(jié)果分析

4.1 數(shù)據(jù)集

為驗證方法的有效性,針對GoogleCode、LaunchPad、Bugzilla 三個錯誤報告管理系統(tǒng),選取了12 個開源項目,并收集了錯誤報告254 883 份,進行實驗分析.數(shù)據(jù)集信息如表1所示.

表1 實驗數(shù)據(jù)集

4.2 實驗設(shè)計

為驗證本文提出方法的有效性,本文設(shè)計了多組對比實驗,從索引空間、檢索效率、預(yù)測效果3 個方面對本文方法進行驗證.此外,在檢索效率的對比實驗中,單獨設(shè)置消融實驗,以驗證本文方法各模塊對整體方法檢索效率提升的貢獻.

Lucene 是目前常用的全文檢索引擎架構(gòu),使用倒排表索引與全文檢索算法.本文將其作為對照組方法進行對比實驗.

(1)基于主題模型的錯誤報告索引空間分析

隨著錯誤報告庫的不斷增大,錯誤報告的索引空間也在不斷增大.過大的錯誤報告索引空間會降低錯誤報告檢索效率.本文通過構(gòu)建基于主題模型的錯誤報告索引詞庫,縮小錯誤報告索引空間.將基于主題模型的錯誤報告索引詞庫與倒排表索引詞庫進行詞數(shù)對比,驗證基于主題模型的錯誤報告索引詞庫在索引空間上的優(yōu)越性.

本文使用LDA 主題模型對數(shù)據(jù)集建模,設(shè)置主題數(shù)120,分別得到該參數(shù)下基于主題的詞與錯誤報告的概率分布,再利用TF-IDF 算法確定錯誤報告主題詞,構(gòu)建基于主題模型的錯誤報告索引詞庫.倒排表索引詞庫的構(gòu)建方法為以Lucene 全文檢索框架自帶的Indexwriter 對數(shù)據(jù)集中的錯誤報告進行倒排表索引構(gòu)建,得到倒排表索引詞庫.通過計算倒排表索引詞庫與基于主題模型的錯誤報告索引詞庫中的詞數(shù),進行索引空間對比.

(2)基于連續(xù)查詢的錯誤報告檢索效率分析

檢索效率分析旨在驗證本文提出的基于連續(xù)查詢的錯誤報告檢索算法的優(yōu)越性與查詢詞序列擴展模塊的必要性.在評價檢索效率時,通用指標為查全率、查準率與檢索速度,檢索速度通常采用檢索時間的長短表征.為了綜合衡量查全率與查準率,本文采用F1-score作為評價指標.由于本文方法由多個模塊組成,需要設(shè)置消融實驗,進一步驗證基于主題模型的錯誤報告索引詞庫、查詢詞序列擴展、基于連續(xù)查詢的錯誤報告檢索算法3 個模塊對本文方法在檢索效率方面的提升.

基于連續(xù)查詢的錯誤報告檢索算法中,需要使用查詢詞序列擴展模塊中的變量,因此,將基于連續(xù)查詢的錯誤報告檢索算法與查詢詞序列擴展看作一個整體模塊進行消融實驗,設(shè)計如下:

使用Lucene 作為實驗對照組.

將基于主題模型的錯誤報告索引詞庫替換為倒排表索引詞庫,并與本文基于連續(xù)查詢的錯誤報告檢索算法相結(jié)合,形成方法1;將基于主題模型的錯誤報告索引詞庫與Lucene的全文檢索算法結(jié)合,形成方法2.再將方法1、方法2 與Lucene 方法進行對比實驗,計算檢索時間與F1-score,以檢驗各模塊在提升檢索效率方面的作用.

(3)基于語義擴展連續(xù)查詢的重復(fù)錯誤報告預(yù)測效果分析

由于目前在重復(fù)錯誤報告預(yù)測研究領(lǐng)域,僅有Hindle 等 [8]的實證研究得出了研究成果,因此,本文基于文獻[8]實驗的數(shù)據(jù)集,構(gòu)建基于語義擴展連續(xù)查詢的重復(fù)錯誤報告預(yù)測實驗,并將實驗結(jié)果與文獻[8]中的結(jié)果進行對比.

同時,為了實驗的充分性,在上述實驗的基礎(chǔ)上,選取Firefox 與Mozilla 兩個項目作為補充的數(shù)據(jù)集.在補充數(shù)據(jù)集上復(fù)現(xiàn)文獻[8]的實驗,將其實驗結(jié)果與本文方法的實驗結(jié)果進行對比.

4.3 實驗結(jié)果與分析

(1)基于主題模型的錯誤報告索引空間實驗結(jié)果分析

如圖4所示為基于主題模型的錯誤報告索引詞庫與倒排表索引詞庫的詞數(shù)對比,其中,主題索引詞庫表示基于主題模型的錯誤報告索引詞庫.可以看出,基于主題模型的錯誤報告索引詞庫的詞數(shù)比倒排表索引詞庫的詞數(shù)少50%以上.這是由于基于主題模型的錯誤報告索引詞庫,對錯誤報告中的詞項進行主題相關(guān)性與詞項重要性的篩選,得到的主題詞遠少于倒排表索引詞庫中的詞,較大程度地減小了索引空間.

圖4 索引空間對比圖

(2)基于連續(xù)查詢的錯誤報告檢索效率結(jié)果分析

如圖5所示為Lucene 檢索方法與本文方法、方法1、方法2 在檢索時間上的對比.其中,Lucene 檢索代表Lucene 檢索方法;連續(xù)查詢檢索代表本文方法.

檢索時間計時起點為輸入查詢詞序列,終點為檢索出相關(guān)錯誤報告.索引的構(gòu)建不納入檢索時間的考量.

從圖5可以看出,由于減小了索引空間,并且在檢索過程中采用了基于連續(xù)查詢的錯誤報告檢索算法,在檢索當前詞時,先檢索前項詞擴展序列,而不是檢索整個錯誤報告主題索引詞庫,在檢索的過程中減小了檢索空間,因此,本文方法的檢索時間較Lucene 檢索算法縮短了41%–73%.

圖5 檢索時間對比圖

同時,通過方法1 與方法2的比較,可以看出,方法1 與方法2的檢索時間相較于Lucene 檢索方法都有減小,且方法2的減小幅度更大,這是由于基于主題模型的錯誤報告索引詞庫的建立,較大幅度地縮小了錯誤報告的索引空間,在同等情況下,減少了檢索時間.

表2為Lucene 檢索方法與本文方法、方法1、方法2 在F1-score 上的對比.F1-score 數(shù)值越大說明其檢索效率越高.由表2可得,本文方法(連續(xù)查詢檢索方法)相較于Lucene 檢索方法,在F1-score 分數(shù)上提高了約20%,檢索效率更高,這是由于查詢詞序列擴展補全了查詢信息,使得檢索的查全率與查準率得到提升.方法2的F1-score 分數(shù)最低,因為方法2 去除了查詢詞序列擴展模塊,且使用基于主題模型的錯誤報告索引詞庫,索引詞庫中僅有數(shù)量較少的錯誤報告主題詞,因此在進行檢索時,其查準率較低,由此導致F1-score 分數(shù)低.

表2 F1-score 對比

(3)基于語義擴展連續(xù)查詢的重復(fù)錯誤報告預(yù)測效果實驗結(jié)果分析

文獻[8]的實驗通過MAP、MRR、TOP-k、AveP-TOPk、MRR-TOPk、MRR-TOPk-1 綜合衡量重復(fù)錯誤報告的預(yù)測效果.MAP 代表平均精度,是一種有效衡量信息檢索精度的分數(shù),其值越高,代表預(yù)測效果越好;MRR 代表重復(fù)錯誤報告排名的倒數(shù)平均值,當重復(fù)錯誤報告排名越靠前,其MRR 分數(shù)越高;TOPk 代表重復(fù)錯誤報告出現(xiàn)在給定的排名域中的個數(shù),數(shù)值越高表示預(yù)測效果越好.

但由于MAP、MRR、TOP-k 具有局限性,不能表征查詢詞序列長短對預(yù)測結(jié)果的影響,因此,Hindle 等[8]又提出了AveP-TOPk、MRR-TOPk、MRR-TOPk-1 指標作為補充,其數(shù)值越高表示預(yù)測效果越好.其中,AveP-TOPk 是MAP 與TOP-k的結(jié)合,AveP-TOPk 數(shù)值越高,代表在同樣的預(yù)測結(jié)果情況下,使用的查詢詞數(shù)越少;MRR-TOPk 代表重復(fù)錯誤報告第一次出現(xiàn)在TOPk 排名中時,其MRR 分數(shù),數(shù)值越大,表明預(yù)測效果越好;MRR-TOPk-1 則表示重復(fù)錯誤報告第一次出現(xiàn)在TOPk 排名中時,平均所需要的查詢詞數(shù),數(shù)值越小表明預(yù)測效果越好.

基于文獻[8]實驗數(shù)據(jù)集的預(yù)測效果對比如表3.AC 代表文獻[8]方法,SECQ (semantically extended continuous query)代表本文方法.由表3可以看出,本文方法在6 個評價指標上均優(yōu)于文獻[8]方法,其中,AveP-TOP5 提升了20%以上.表4所示為基于補充數(shù)據(jù)集,復(fù)現(xiàn)文獻[8]方法實驗,得到的實驗結(jié)果與本文實驗結(jié)果的對比.

表3 基于文獻[8]實驗數(shù)據(jù)集的預(yù)測效果對比

通過表4的對比可以看出,在改變數(shù)據(jù)集的情況下,本文方法仍在6 個評價指標上均優(yōu)于文獻[8]方法,最高提升33.6%.

表4 基于補充數(shù)據(jù)集的預(yù)測效果對比

由此可見,與傳統(tǒng)方法相比,本文方法減小了索引空間,同時,在檢索效率與預(yù)測效果上均有提升.

5 結(jié)束語

本文提出了一種基于語義擴展連續(xù)查詢的重復(fù)錯誤報告預(yù)測方法.通過挖掘錯誤報告主題,以錯誤報告主題為媒介,確定錯誤報告的主題詞,構(gòu)建錯誤報告主題索引詞庫,建立錯誤報告主題詞與錯誤報告的關(guān)系,減小了錯誤報告索引空間;在此基礎(chǔ)上,對查詢詞序列進行語義擴展,提出基于連續(xù)查詢的錯誤報告檢索算法,縮小檢索空間,在提高了預(yù)測準確率的同時,也提升了檢索的效率.實驗表明,本文方法在索引空間與檢索時間上較傳統(tǒng)方法有較大減小,同時與文獻[8]實驗結(jié)果的對比表明,在預(yù)測效果上,本文方法更好,提升了33.6%.

猜你喜歡
詞庫主題詞檢索
CNKI檢索模式結(jié)合關(guān)鍵詞選取在檢索中的應(yīng)用探討
一“吃”多用
輸入法詞庫取證比較研究
瑞典專利數(shù)據(jù)庫的檢索技巧
2019年第4-6期便捷檢索目錄
智能傳感器的智慧戰(zhàn)略,新技術(shù)創(chuàng)造新價值
英國知識產(chǎn)權(quán)局商標數(shù)據(jù)庫信息檢索
輸入法詞庫乾坤大挪移
取消公文主題詞的真正原因是什么?
公文主題詞消失的原因淺析
新化县| 张家港市| 西吉县| 安图县| 昌图县| 东辽县| 南溪县| 高阳县| 泸州市| 舟山市| 竹山县| 金阳县| 滦平县| 怀远县| 嵊泗县| 惠安县| 始兴县| 临湘市| 灌南县| 通榆县| 徐水县| 清涧县| 芦山县| 福州市| 拜泉县| 普兰县| 兴山县| 大安市| 工布江达县| 大方县| 河北省| 固镇县| 株洲市| 太白县| 青龙| 通州市| 凤台县| 长宁区| 迁西县| 剑川县| 垦利县|