欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種路徑相似度分析方法以及系統(tǒng)的制作方法

文檔序號(hào):6636324閱讀:853來源:國知局
一種路徑相似度分析方法以及系統(tǒng)的制作方法
【專利摘要】本發(fā)明實(shí)施例公開了一種路徑相似度分析方法以及系統(tǒng)。本發(fā)明實(shí)施例方法包括:分別獲取基準(zhǔn)數(shù)據(jù)的第一樹形數(shù)據(jù)和問題數(shù)據(jù)的第二樹形數(shù)據(jù),并獲取各節(jié)點(diǎn)的深度值,分別根據(jù)所述第一樹形數(shù)據(jù)和所述第二樹形數(shù)據(jù)的各節(jié)點(diǎn)的深度值確定第一集合和第二集合;根據(jù)所述深度值計(jì)算所述基準(zhǔn)數(shù)據(jù)和所述問題數(shù)據(jù)的相似度權(quán)值。通過本實(shí)施例能夠?qū)⒁曰鶞?zhǔn)數(shù)據(jù)的第一樹形數(shù)據(jù)和問題數(shù)據(jù)的第二樹形數(shù)據(jù)的各節(jié)點(diǎn)通過集合的方式進(jìn)行表示,并根據(jù)各深度值計(jì)算所述基準(zhǔn)數(shù)據(jù)和所述問題數(shù)據(jù)的相似度權(quán)值,進(jìn)而得到的所述基準(zhǔn)數(shù)據(jù)和所述問題數(shù)據(jù)之間的對(duì)應(yīng)關(guān)系,進(jìn)而利用性能問題智能分析模塊可以自動(dòng)化性能定位工作,極大提高性能問題分析的時(shí)間,減少對(duì)人力的依賴。
【專利說明】一種路徑相似度分析方法以及系統(tǒng)

【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及信息處理領(lǐng)域,尤其涉及的是一種路徑相似度分析方法以及系統(tǒng)。

【背景技術(shù)】
[0002]存儲(chǔ)業(yè)務(wù)中,由于數(shù)據(jù)所經(jīng)過的模塊或函數(shù)不同,因此存在多種不同的1/0路徑。典型的如在(^(^6命中的情況下,數(shù)據(jù)直接從(^(^6模塊返回$£1(3116不命中數(shù)據(jù)會(huì)繼續(xù)流向下層模塊,這是兩類不同的1/0路徑。由于系統(tǒng)開發(fā)的連續(xù)性,存儲(chǔ)系統(tǒng)不同版本之間的不同10路徑往往存在一定對(duì)應(yīng)關(guān)系,如在同樣的工作場景下,基線版本和后續(xù)版本(也稱問題版本)的10路徑可能由于添加某一函數(shù)而導(dǎo)致不同,經(jīng)驗(yàn)上認(rèn)為這兩類10路徑之間存在對(duì)應(yīng)關(guān)系,基線10路徑突變?yōu)閱栴}10路徑,也稱為結(jié)構(gòu)突變。
[0003]固定的業(yè)務(wù)場景(如存儲(chǔ)系統(tǒng))下,請(qǐng)求的處理路徑(如讀寫10的路徑)是固定的,性能變化能夠追溯到請(qǐng)求處理路徑的變化(如讀10 080116命中率下降導(dǎo)致10路徑變長,性能相應(yīng)下降通過分析請(qǐng)求路徑的變化是分析性能變化的有效手段。路徑變化主要有兩種,1,時(shí)延突變:基準(zhǔn)10路徑同問題10路徑結(jié)構(gòu)相同,但是對(duì)應(yīng)模塊間的時(shí)延有明顯差別;2,結(jié)構(gòu)突變:基準(zhǔn)10路徑同問題10路徑結(jié)構(gòu)不同;對(duì)于2,在基準(zhǔn)數(shù)據(jù)和問題數(shù)據(jù)中,需要在多對(duì)多的可能突變數(shù)據(jù)中計(jì)算最大可能對(duì)應(yīng)關(guān)系。對(duì)于對(duì)應(yīng)關(guān)系的尋找,目前沒有普遍認(rèn)可的方法存在。
[0004]目前業(yè)界廣泛使用的10路徑跟蹤工具有&30816也卯61~,乂-了以⑶等。03卯61'是一種分布式跟蹤系統(tǒng),可以跟蹤服務(wù)器集群之間的請(qǐng)求調(diào)用路徑。以03卯為例,簡要說明該類跟蹤工具原理:
[0005]021卯可以跟蹤用戶的請(qǐng)求所經(jīng)過的路徑上各個(gè)節(jié)點(diǎn)的信息,如時(shí)間戳。021卯利用應(yīng)用程序或中間件給每條請(qǐng)求記錄一個(gè)全局標(biāo)志,借此將路徑串接為一條完整回路。03卯61~每條跟蹤記錄服務(wù)的開始時(shí)間和結(jié)束時(shí)間,每個(gè)模塊的10和父10,沒有父10的模塊為1*00丨模塊,所有跟蹤公用一個(gè)跟蹤10,通過跟蹤10將這些記錄串接為一條10請(qǐng)求路徑。乂-1!'狀6作為互聯(lián)網(wǎng)主機(jī)跟蹤工具,其原理同也卯61'類似。統(tǒng)一存儲(chǔ)系統(tǒng)中也有采用同樣原理的跟蹤工具。
[0006]這些跟蹤工具都是跟蹤某一時(shí)間點(diǎn)或時(shí)間段的10路徑,如基線版本的穩(wěn)定10路徑,問題版本的問題10路徑。對(duì)于不同時(shí)間段的10路徑的突變關(guān)系問題無法解決,而且由于10路徑不同層級(jí)之間的不同對(duì)系統(tǒng)的影響是不同的,上層10的不同反映版本之間的較大差異,而下層的10不同可能只是版本之間的微小差異造成,現(xiàn)有技術(shù)忽略該類差異,對(duì)10的不同進(jìn)行統(tǒng)一計(jì)算,相似度識(shí)別可靠性不高,容易造成結(jié)構(gòu)突變對(duì)應(yīng)關(guān)系誤判,導(dǎo)致分析結(jié)果誤差較大。


【發(fā)明內(nèi)容】

[0007]本發(fā)明實(shí)施例提供了一種路徑相似度分析方法以及系統(tǒng)。
[0008]本發(fā)明實(shí)施例第一方面提供了一種路徑相似度分析方法,包括:
[0009]分別獲取基準(zhǔn)數(shù)據(jù)的第一樹形數(shù)據(jù)和問題數(shù)據(jù)的第二樹形數(shù)據(jù);
[0010]根據(jù)相同的遍歷規(guī)則以及各節(jié)點(diǎn)之間的隸屬關(guān)系對(duì)所述第一樹形數(shù)據(jù)和所述第二樹形數(shù)據(jù)的各節(jié)點(diǎn)進(jìn)行遍歷以獲取各節(jié)點(diǎn)的深度值,各節(jié)點(diǎn)的所述深度值用于表示各節(jié)點(diǎn)在所述第一樹形數(shù)據(jù)或第二樹形數(shù)據(jù)中所位于的層次;
[0011]分別根據(jù)所述第一樹形數(shù)據(jù)和所述第二樹形數(shù)據(jù)的各節(jié)點(diǎn)的深度值確定第一集合和第二集合,其中,所述第一集合包括多個(gè)分別與所述深度值對(duì)應(yīng)的第一子集,且各所述第一子集內(nèi)的所述第一樹形數(shù)據(jù)的節(jié)點(diǎn)的深度值相同,所述第二集合包括多個(gè)分別與所述深度值對(duì)應(yīng)的第二子集,且各所述第二子集內(nèi)的所述第二樹形數(shù)據(jù)的節(jié)點(diǎn)的深度值相同;
[0012]根據(jù)與各所述第一子集和與各所述第二子集對(duì)應(yīng)的深度值計(jì)算所述基準(zhǔn)數(shù)據(jù)和所述問題數(shù)據(jù)的相似度權(quán)值。
[0013]結(jié)合本發(fā)明實(shí)施例的第一方面,本發(fā)明實(shí)施例的第一方面的第一種實(shí)現(xiàn)方式中,
[0014]所述根據(jù)與各所述第一子集和與各所述第二子集對(duì)應(yīng)的深度值計(jì)算所述基準(zhǔn)數(shù)據(jù)和所述問題數(shù)據(jù)的相似度權(quán)值之前,所述方法還包括:
[0015]確定與所述第一子集對(duì)應(yīng)的各深度值的最大值以及確定與所述第二子集對(duì)應(yīng)的各深度值的最大值;
[0016]確定與所述第一子集對(duì)應(yīng)的各深度值的最大值和與所述第二子集對(duì)應(yīng)的各深度值的最大值中的較小值為第一基準(zhǔn)深度值;
[0017]確定與所述第一子集對(duì)應(yīng)的各深度值的最大值和與所述第二子集對(duì)應(yīng)的各深度值的最大值中的較大值為第二基準(zhǔn)深度值;
[0018]確定初始化相似度權(quán)值I等于0 ;
[0019]確定目標(biāo)節(jié)點(diǎn)個(gè)數(shù)為6其中,所述0等于各所述第一子集和各所述第二子集內(nèi)的節(jié)點(diǎn)數(shù)的最大值。
[0020]結(jié)合本發(fā)明實(shí)施例的第一方面的第一種實(shí)現(xiàn)方式,本發(fā)明實(shí)施例的第一方面的第二種實(shí)現(xiàn)方式中,
[0021]所述根據(jù)與各所述第一子集和與各所述第二子集對(duì)應(yīng)的深度值計(jì)算所述基準(zhǔn)數(shù)據(jù)和所述問題數(shù)據(jù)的相似度權(quán)值包括:
[0022]根據(jù)與各所述第一子集和與各所述第二子集對(duì)應(yīng)的深度值由低到高的順序依次確定當(dāng)前深度值是否小于或等于所述第一基準(zhǔn)深度值;
[0023]若是,則根據(jù)字符串編輯距離算法確定與所述當(dāng)前深度值對(duì)應(yīng)的第一子集和所述第二子集之間的320值;
[0024]若所述320值等于0,則確定所述相似度權(quán)值評(píng)=1+,(?拉。,其中,3的取值范圍為大于0且小于1,13為所述當(dāng)前深度值,且6大于或等于1且小于或等于所述第一基準(zhǔn)深度值;
[0025]若所述320值不等于0,則確定所述相似度權(quán)值V = 1+8~
[0026]結(jié)合本發(fā)明實(shí)施例的第一方面的第三種實(shí)現(xiàn)方式,本發(fā)明實(shí)施例的第一方面的第三種實(shí)現(xiàn)方式中,
[0027]所述根據(jù)與各所述第一子集和與各所述第二子集對(duì)應(yīng)的深度值計(jì)算所述基準(zhǔn)數(shù)據(jù)和所述問題數(shù)據(jù)的相似度權(quán)值還包括:
[0028]若根據(jù)所述深度值由低到高的順序依次確定當(dāng)前深度值大于所述第一基準(zhǔn)深度值時(shí),則確定所述當(dāng)前深度值是否小于或等于所述第二基準(zhǔn)深度值;
[0029]若是,則確定所述相似度權(quán)值評(píng)=1- 1其中,13大于所述第一基準(zhǔn)深度值且小于或等于所述第二基準(zhǔn)深度值。
[0030]本發(fā)明實(shí)施例第二方面提供了一種系統(tǒng),包括:
[0031]第一獲取單元,用于分別獲取基準(zhǔn)數(shù)據(jù)的第一樹形數(shù)據(jù)和問題數(shù)據(jù)的第二樹形數(shù)據(jù);
[0032]第二獲取單元,用于根據(jù)相同的遍歷規(guī)則以及各節(jié)點(diǎn)之間的隸屬關(guān)系對(duì)所述第一樹形數(shù)據(jù)和所述第二樹形數(shù)據(jù)的各節(jié)點(diǎn)進(jìn)行遍歷以獲取各節(jié)點(diǎn)的深度值,各節(jié)點(diǎn)的所述深度值用于表示各節(jié)點(diǎn)在所述第一樹形數(shù)據(jù)或第二樹形數(shù)據(jù)中所位于的層次;
[0033]第一確定單元,用于分別根據(jù)所述第一樹形數(shù)據(jù)和所述第二樹形數(shù)據(jù)的各節(jié)點(diǎn)的深度值確定第一集合和第二集合,其中,所述第一集合包括多個(gè)分別與所述深度值對(duì)應(yīng)的第一子集,且各所述第一子集內(nèi)的所述第一樹形數(shù)據(jù)的節(jié)點(diǎn)的深度值相同,所述第二集合包括多個(gè)分別與所述深度值對(duì)應(yīng)的第二子集,且各所述第二子集內(nèi)的所述第二樹形數(shù)據(jù)的節(jié)點(diǎn)的深度值相同;
[0034]計(jì)算單元,用于根據(jù)與各所述第一子集和與各所述第二子集對(duì)應(yīng)的深度值計(jì)算所述基準(zhǔn)數(shù)據(jù)和所述問題數(shù)據(jù)的相似度權(quán)值。
[0035]結(jié)合本發(fā)明實(shí)施例第二方面,本發(fā)明實(shí)施例第二方面的第一種實(shí)現(xiàn)方式中,
[0036]所述系統(tǒng)還包括:
[0037]第二確定單元,用于確定與所述第一子集對(duì)應(yīng)的各深度值的最大值以及確定與所述第二子集對(duì)應(yīng)的各深度值的最大值;
[0038]第三確定單元,用于確定與所述第一子集對(duì)應(yīng)的各深度值的最大值和與所述第二子集對(duì)應(yīng)的各深度值的最大值中的較小值為第一基準(zhǔn)深度值;
[0039]第四確定單元,用于確定與所述第一子集對(duì)應(yīng)的各深度值的最大值和與所述第二子集對(duì)應(yīng)的各深度值的最大值中的較大值為第二基準(zhǔn)深度值;
[0040]第五確定單元,用于確定初始化相似度權(quán)值I等于0 ;
[0041]第六確定單元,用于確定目標(biāo)節(jié)點(diǎn)個(gè)數(shù)為6其中,所述0等于各所述第一子集和各所述第二子集內(nèi)的節(jié)點(diǎn)數(shù)的最大值。
[0042]結(jié)合本發(fā)明實(shí)施例第二方面的第一種實(shí)現(xiàn)方式,本發(fā)明實(shí)施例第二方面的第二種實(shí)現(xiàn)方式中,
[0043]所述計(jì)算單元包括:
[0044]第一確定模塊,用于根據(jù)與各所述第一子集和與各所述第二子集對(duì)應(yīng)的深度值由低到高的順序依次確定當(dāng)前深度值是否小于或等于所述第一基準(zhǔn)深度值;
[0045]第一計(jì)算模塊,用于若當(dāng)前深度值小于或等于所述第一基準(zhǔn)深度值,則根據(jù)字符串編輯距離算法確定與所述當(dāng)前深度值對(duì)應(yīng)的第一子集和所述第二子集之間的320值;
[0046]第二計(jì)算模塊,用于若所述細(xì))值等于0,則確定所述相似度權(quán)值評(píng)=
其中的取值范圍為大于0且小于為所述當(dāng)前深度值,且6大于或等于1且小于或等于所述第一基準(zhǔn)深度值;
[0047]第三計(jì)算模塊,用于若所述320值不等于0,則確定所述相似度權(quán)值評(píng)=
[0048]結(jié)合本發(fā)明實(shí)施例第二方面的第二種實(shí)現(xiàn)方式,本發(fā)明實(shí)施例第二方面的第三種實(shí)現(xiàn)方式中,
[0049]所述計(jì)算單元還包括:
[0050]第二確定模塊,用于若根據(jù)所述深度值由低到高的順序依次確定當(dāng)前深度值大于所述第一基準(zhǔn)深度值時(shí),則確定所述當(dāng)前深度值是否小于或等于所述第二基準(zhǔn)深度值;
[0051]第三確定模塊,用于若確定所述當(dāng)前深度值小于或等于所述第二基準(zhǔn)深度值,則確定所述相似度權(quán)值1 = 1-, ,其中,6大于所述第一基準(zhǔn)深度值且小于或等于所述第二基準(zhǔn)深度值。
[0052]本發(fā)明實(shí)施例公開了一種路徑相似度分析方法以及系統(tǒng)。本發(fā)明實(shí)施例方法包括:分別獲取基準(zhǔn)數(shù)據(jù)的第一樹形數(shù)據(jù)和問題數(shù)據(jù)的第二樹形數(shù)據(jù),并獲取各節(jié)點(diǎn)的深度值,分別根據(jù)所述第一樹形數(shù)據(jù)和所述第二樹形數(shù)據(jù)的各節(jié)點(diǎn)的深度值確定第一集合和第二集合;根據(jù)所述深度值計(jì)算所述基準(zhǔn)數(shù)據(jù)和所述問題數(shù)據(jù)的相似度權(quán)值。通過本實(shí)施例所提供的路徑相似度分析方法,能夠?qū)⒁曰鶞?zhǔn)數(shù)據(jù)的第一樹形數(shù)據(jù)和問題數(shù)據(jù)的第二樹形數(shù)據(jù)的各節(jié)點(diǎn)通過集合的方式進(jìn)行表示,且各集合包括與用于表示各節(jié)點(diǎn)層次的深度值子集合,并根據(jù)各深度值計(jì)算所述基準(zhǔn)數(shù)據(jù)和所述問題數(shù)據(jù)的相似度權(quán)值,通過本實(shí)施例計(jì)算所得到的所述基準(zhǔn)數(shù)據(jù)和所述問題數(shù)據(jù)的相似度權(quán)值能夠確定基準(zhǔn)數(shù)據(jù)和問題數(shù)據(jù)之間的對(duì)應(yīng)關(guān)系,進(jìn)而利用性能問題智能分析模塊可以自動(dòng)化性能定位工作,極大提高性能問題分析的時(shí)間,減少對(duì)人力的依賴。

【專利附圖】

【附圖說明】
[0053]圖1為本發(fā)明實(shí)施例所提供的路徑相似度分析方法的一種較佳實(shí)施例步驟流程圖;
[0054]圖2為本發(fā)明實(shí)施例所提供的路徑相似度分析方法的另一種較佳實(shí)施例步驟流程圖;
[0055]圖3為本發(fā)明實(shí)施例所提供的基準(zhǔn)數(shù)據(jù)的第一樹形數(shù)據(jù)的一種較佳實(shí)施例結(jié)構(gòu)示意圖;
[0056]圖4為本發(fā)明實(shí)施例所提供的系統(tǒng)的一種較佳實(shí)施例結(jié)構(gòu)示意圖;
[0057]圖5為本發(fā)明實(shí)施例所提供的系統(tǒng)的另一種較佳實(shí)施例結(jié)構(gòu)示意圖;
[0058]圖6為本發(fā)明實(shí)施例所提供的系統(tǒng)的另一種較佳實(shí)施例結(jié)構(gòu)示意圖。

【具體實(shí)施方式】
[0059]本發(fā)明實(shí)施例提供了一種路徑相似度分析方法,用于解決路徑的突變的對(duì)應(yīng)關(guān)系問題,從而實(shí)現(xiàn)自動(dòng)化性能的定位工作,極大的提高性能問題分析的時(shí)間,減少對(duì)人力的依賴。
[0060]以下結(jié)合圖1所示對(duì)本實(shí)施例對(duì)提供的路徑相似度分析方法進(jìn)行詳細(xì)說明:
[0061]如圖1所示,所述路徑相似度分析方法包括:
[0062]101、分別獲取基準(zhǔn)數(shù)據(jù)的第一樹形數(shù)據(jù)和問題數(shù)據(jù)的第二樹形數(shù)據(jù);
[0063]即對(duì)輸入的數(shù)據(jù)進(jìn)行解析,以分別獲取基準(zhǔn)數(shù)據(jù)的第一樹形數(shù)據(jù)以及問題數(shù)據(jù)的第二樹形數(shù)據(jù);
[0064]其中,較佳的輸入的數(shù)據(jù)為10路徑,當(dāng)然本實(shí)施例僅僅以10路徑舉例進(jìn)行說明,不作限定,例如該輸入的數(shù)據(jù)還可為分布式文件系統(tǒng)中的代叫⑶丨路徑。
[0065]具體的,輸入的10路徑的標(biāo)準(zhǔn)形式可以是樹形結(jié)構(gòu)或者取'叩1^12軟件的己01:文件格式。
[0066]102、根據(jù)相同的遍歷規(guī)則以及各節(jié)點(diǎn)之間的隸屬關(guān)系對(duì)所述第一樹形數(shù)據(jù)和所述第二樹形數(shù)據(jù)的各節(jié)點(diǎn)進(jìn)行遍歷以獲取各節(jié)點(diǎn)的深度值;
[0067]其中,各節(jié)點(diǎn)的所述深度值用于表示各節(jié)點(diǎn)在所述第一樹形數(shù)據(jù)或第二樹形數(shù)據(jù)中所位于的層次;
[0068]即通過所述深度值表示各節(jié)點(diǎn)在所述第一樹形數(shù)據(jù)或所述第二樹形數(shù)據(jù)中的層次。
[0069]本實(shí)施例對(duì)所述遍歷規(guī)則不作限定,只要對(duì)所述第一樹形數(shù)據(jù)以及所述第二樹形數(shù)據(jù)根據(jù)相同的遍歷規(guī)則進(jìn)行遍歷即可,且根據(jù)該遍歷規(guī)則能夠?qū)λ龅谝粯湫螖?shù)據(jù)以及所述第二樹形數(shù)據(jù)中的所有節(jié)點(diǎn)進(jìn)行遍歷以獲取所有節(jié)點(diǎn)的深度值即可。
[0070]103、分別根據(jù)所述第一樹形數(shù)據(jù)和所述第二樹形數(shù)據(jù)的各節(jié)點(diǎn)的深度值確定第一集合和第二集合;
[0071]其中,所述第一集合包括多個(gè)分別與所述深度值對(duì)應(yīng)的第一子集,且各所述第一子集內(nèi)的所述第一樹形數(shù)據(jù)的節(jié)點(diǎn)的深度值相同;
[0072]所述第二集合包括多個(gè)分別與所述深度值對(duì)應(yīng)的第二子集,且各所述第二子集內(nèi)的所述第二樹形數(shù)據(jù)的節(jié)點(diǎn)的深度值相同;
[0073]即通過本實(shí)施例所示的步驟103將以樹形表示的基準(zhǔn)數(shù)據(jù)以及問題數(shù)據(jù)的各節(jié)點(diǎn)通過集合的方式進(jìn)行表示。
[0074]104、根據(jù)與各所述第一子集和與各所述第二子集對(duì)應(yīng)的深度值計(jì)算所述基準(zhǔn)數(shù)據(jù)和所述問題數(shù)據(jù)的相似度權(quán)值。
[0075]通過分別與各節(jié)點(diǎn)對(duì)應(yīng)的深度值計(jì)算基準(zhǔn)數(shù)據(jù)和問題數(shù)據(jù)的相似度權(quán)值,進(jìn)而應(yīng)用10路徑突變對(duì)應(yīng)關(guān)系算法確定最終的路徑突變關(guān)系。
[0076]具體的,即用以計(jì)算所述基準(zhǔn)數(shù)據(jù)和所述問題數(shù)據(jù)的相似度權(quán)值的相似度分析算法基于以集合的方式進(jìn)行表示的各節(jié)點(diǎn),對(duì)不同的深度值的節(jié)點(diǎn)進(jìn)行計(jì)算,最后輸出兩類10路徑數(shù)據(jù)的相似度權(quán)值。
[0077]通過本實(shí)施例所提供的路徑相似度分析方法,能夠?qū)⒁曰鶞?zhǔn)數(shù)據(jù)的第一樹形數(shù)據(jù)和問題數(shù)據(jù)的第二樹形數(shù)據(jù)的各節(jié)點(diǎn)通過集合的方式進(jìn)行表示,且各集合包括與用于表示各節(jié)點(diǎn)層次的深度值子集合,并根據(jù)各深度值計(jì)算所述基準(zhǔn)數(shù)據(jù)和所述問題數(shù)據(jù)的相似度權(quán)值,通過本實(shí)施例計(jì)算所得到的所述基準(zhǔn)數(shù)據(jù)和所述問題數(shù)據(jù)的相似度權(quán)值能夠確定基準(zhǔn)數(shù)據(jù)和問題數(shù)據(jù)之間的對(duì)應(yīng)關(guān)系,進(jìn)而利用性能問題智能分析模塊可以自動(dòng)化性能定位工作,極大提高性能問題分析的時(shí)間,減少對(duì)人力的依賴。
[0078]以下結(jié)合圖2所示對(duì)能夠?qū)崿F(xiàn)對(duì)位于不同層次的節(jié)點(diǎn)用不同的算法以獲取相似度權(quán)值的進(jìn)行詳細(xì)說明:
[0079]201、分別獲取基準(zhǔn)數(shù)據(jù)的第一樹形數(shù)據(jù)和問題數(shù)據(jù)的第二樹形數(shù)據(jù);
[0080]具體請(qǐng)見圖1所示的步驟101,在本實(shí)施例中不做贅述。
[0081]202、根據(jù)相同的遍歷規(guī)則以及各節(jié)點(diǎn)之間的隸屬關(guān)系對(duì)所述第一樹形數(shù)據(jù)和所述第二樹形數(shù)據(jù)的各節(jié)點(diǎn)進(jìn)行遍歷以獲取各節(jié)點(diǎn)的深度值;
[0082]其中,各節(jié)點(diǎn)的所述深度值用于表示各節(jié)點(diǎn)在所述第一樹形數(shù)據(jù)或第二樹形數(shù)據(jù)中所位于的層次;
[0083]本實(shí)施例對(duì)所述遍歷規(guī)則進(jìn)行舉例說明,需明確的是,本實(shí)施例所示的遍歷規(guī)則僅僅為一種示例,不作限定,只要對(duì)所述第一樹形數(shù)據(jù)以及所述第二樹形數(shù)據(jù)根據(jù)相同的遍歷規(guī)則進(jìn)行遍歷即可,且根據(jù)該遍歷規(guī)則能夠?qū)λ龅谝粯湫螖?shù)據(jù)以及所述第二樹形數(shù)據(jù)中的所有節(jié)點(diǎn)進(jìn)行遍歷以獲取所有節(jié)點(diǎn)的深度值即可。
[0084]以下如圖3所示,圖3為已獲取到的基準(zhǔn)數(shù)據(jù)的第一樹形數(shù)據(jù)的示例,需明確的是,圖3所示為樹形數(shù)據(jù)的舉例,不作限定,通過圖3所示僅僅對(duì)遍歷規(guī)則進(jìn)行舉例說明。
[0085]具體對(duì)圖3所示的第一樹形數(shù)據(jù)進(jìn)行遍歷的過程為:
[0086]1)、讀取根節(jié)點(diǎn),記錄節(jié)點(diǎn)所處深度16^61 = 1 ;
[0087]其中,讀取圖3所示的第一樹形數(shù)據(jù)時(shí),可確定節(jié)點(diǎn)4為根節(jié)點(diǎn),并將節(jié)點(diǎn)4的深度值記錄為1 ;
[0088]判斷根節(jié)點(diǎn)下是否還有子節(jié)點(diǎn);
[0089]2)、若包含子節(jié)點(diǎn),則確定該子節(jié)點(diǎn)為第一目標(biāo)節(jié)點(diǎn),并確定該第一目標(biāo)節(jié)點(diǎn)下子節(jié)點(diǎn)的個(gè)數(shù),若第一目標(biāo)節(jié)點(diǎn)下子節(jié)點(diǎn)的個(gè)數(shù)為1,則第一目標(biāo)節(jié)點(diǎn)與第一目標(biāo)節(jié)點(diǎn)下子節(jié)點(diǎn)的深度值相等;若第一目標(biāo)節(jié)點(diǎn)下子節(jié)點(diǎn)的個(gè)數(shù)大于1,則第一目標(biāo)節(jié)點(diǎn)下子節(jié)點(diǎn)的深度值為第一目標(biāo)節(jié)點(diǎn)深度值加1,若該第一目標(biāo)節(jié)點(diǎn)同時(shí)和所述第一目標(biāo)節(jié)點(diǎn)的至少一個(gè)兄弟節(jié)點(diǎn)同時(shí)和所述第一目標(biāo)節(jié)點(diǎn)下的子節(jié)點(diǎn)連接,則所述第一目標(biāo)節(jié)點(diǎn)下的子節(jié)點(diǎn)的深度值為所述第一目標(biāo)節(jié)點(diǎn)的深度值減一;
[0090]3)記錄節(jié)點(diǎn)深度值1價(jià)61,遞歸處理子10路徑,直至確定遍歷到第二目標(biāo)節(jié)點(diǎn),該第二目標(biāo)節(jié)點(diǎn)為終止節(jié)點(diǎn);
[0091]其中,記錄節(jié)點(diǎn)深度值的原則可為:
[0092]由圖3所示,即判斷節(jié)點(diǎn)六下是否還有子節(jié)點(diǎn),可見,節(jié)點(diǎn)六下有三個(gè)子節(jié)點(diǎn)(節(jié)點(diǎn)8、節(jié)點(diǎn)以及節(jié)點(diǎn)0);
[0093]由圖3所示,由深度優(yōu)先原則首先指向節(jié)點(diǎn)八的子節(jié)點(diǎn)8,并記錄子節(jié)點(diǎn)8的深度值 16乂61 = 16^61+1 = 2 ;
[0094]本實(shí)施例所示的遍歷規(guī)則可結(jié)合深度優(yōu)先以及廣度優(yōu)先的原則,即遍歷圖3所示的第一樹形數(shù)據(jù)的順序首先為由左至右的順序;
[0095]即確定節(jié)點(diǎn)8的深度值為2后,根據(jù)深度優(yōu)先原則,遞歸處理子10路徑,即首先確定節(jié)點(diǎn)8的子節(jié)點(diǎn)的個(gè)數(shù)是否大于1,并遍歷節(jié)點(diǎn)8的子節(jié)點(diǎn)2,且記錄子節(jié)點(diǎn)2的深度值16乂61 = 16^61+1 = 3 ;
[0096]確定節(jié)點(diǎn)2的子節(jié)點(diǎn)個(gè)數(shù),根據(jù)深度優(yōu)先原則確定節(jié)點(diǎn)2的子節(jié)點(diǎn)X,并記錄節(jié)點(diǎn)仄的深度值16乂61 = 16乂61十1 = 4 ;
[0097]確定節(jié)點(diǎn)1(的子節(jié)點(diǎn)為I因節(jié)點(diǎn)~的父節(jié)點(diǎn)有多個(gè),則節(jié)點(diǎn)~的深度值為節(jié)點(diǎn)X的深度值減一,即記錄及誒單X的深度值16^61 = 16^61-1 = 3 ;
[0098]確定節(jié)點(diǎn)~的子節(jié)點(diǎn)為節(jié)點(diǎn)5,且節(jié)點(diǎn)3為終止節(jié)點(diǎn),又因節(jié)點(diǎn)3的父節(jié)點(diǎn)有多個(gè),則確定節(jié)點(diǎn)3為第二目標(biāo)節(jié)點(diǎn),且記錄子節(jié)點(diǎn)3的深度值16^61 = 3-1 = 2:
[0099]4)、確定第二目標(biāo)節(jié)點(diǎn)~是否為第一樹形數(shù)據(jù)的全局終點(diǎn),若否,則將該第二目標(biāo)節(jié)點(diǎn)的深度值壓入數(shù)據(jù)存儲(chǔ)棧,并保存當(dāng)前子路徑堆棧數(shù)據(jù),指向該子路徑的根節(jié)點(diǎn),進(jìn)行另一條10子路徑遍歷,直至遍歷到最后一條10子路徑;
[0100]其中,具體確定所述第二目標(biāo)節(jié)點(diǎn)是否為第一樹形數(shù)據(jù)的全局終點(diǎn)的具體方式可為判斷該第二目標(biāo)節(jié)點(diǎn)下是否還有子節(jié)點(diǎn);
[0101]圖3所示中,節(jié)點(diǎn)3下還有子節(jié)點(diǎn)0,即可確定節(jié)點(diǎn)3不是第一樹形數(shù)據(jù)的全局終點(diǎn),而是節(jié)點(diǎn)3所位于的子路徑的終止節(jié)點(diǎn);
[0102]將節(jié)點(diǎn)3的深度值2壓入數(shù)據(jù)存儲(chǔ)棧,并保存已遍歷的子路徑堆棧數(shù)據(jù),即依次將節(jié)點(diǎn)~的深度值3、節(jié)點(diǎn)1(的深度值4、節(jié)點(diǎn)2的深度值3、節(jié)點(diǎn)8的深度值2以及節(jié)點(diǎn)八的深度值1壓入數(shù)據(jù)存儲(chǔ)棧;
[0103]指向節(jié)點(diǎn)3的所位于的子路徑的根節(jié)點(diǎn)八,根據(jù)廣度優(yōu)先原則,進(jìn)行另一條子10路徑的遍歷,貝丨」依次經(jīng)由節(jié)點(diǎn)4和節(jié)點(diǎn)8遍歷到節(jié)點(diǎn)?,記錄節(jié)點(diǎn)?的深度值16^61 = 16^61+1=3 ;
[0104]因節(jié)點(diǎn)?的子節(jié)點(diǎn)只有一個(gè),則深度值不變,則節(jié)點(diǎn)?和節(jié)點(diǎn)?處于第一樹形數(shù)據(jù)的同一層次,則節(jié)點(diǎn)?的深度值和節(jié)點(diǎn)?的深度值相等均為3 ;
[0105]節(jié)點(diǎn)?的子節(jié)點(diǎn)為節(jié)點(diǎn)3,且節(jié)點(diǎn)3已遍歷完成,則依次將節(jié)點(diǎn)?的深度值3和節(jié)點(diǎn)?的深度值3壓入數(shù)據(jù)存儲(chǔ)棧中;
[0106]指向節(jié)點(diǎn)?的所位于的子路徑的根節(jié)點(diǎn)八,根據(jù)廣度優(yōu)先原則,進(jìn)行另一條子10路徑的遍歷,則經(jīng)由節(jié)點(diǎn)4遍歷到節(jié)點(diǎn)4的子節(jié)點(diǎn)0,并記錄節(jié)點(diǎn)0的深度值16^61 = 16^61+1=2 ;
[0107]依據(jù)上述遍歷規(guī)則可確定節(jié)點(diǎn)6與節(jié)點(diǎn)位于同一層次,則節(jié)點(diǎn)0與節(jié)點(diǎn)6的深度值均為2,且節(jié)點(diǎn)為第二目標(biāo)節(jié)點(diǎn),且節(jié)點(diǎn)不為全局終點(diǎn),并依次將節(jié)點(diǎn)和節(jié)點(diǎn)的深度值壓入數(shù)據(jù)存儲(chǔ)棧;
[0108]根據(jù)廣度優(yōu)先原則,進(jìn)行另一條子10路徑的遍歷,則經(jīng)由節(jié)點(diǎn)八遍歷到節(jié)點(diǎn)八的子節(jié)點(diǎn)0,并記錄節(jié)點(diǎn)0的深度值16^61 = 16^61+1 = 2 ;
[0109]依據(jù)上述遍歷規(guī)則可確定節(jié)點(diǎn)的深度值16^61 = 16^61+1 = 3 ;
[0110]節(jié)點(diǎn)與節(jié)點(diǎn)1位于同一層次,則節(jié)點(diǎn)與節(jié)點(diǎn)1的深度值均為3,且節(jié)點(diǎn)1為第二目標(biāo)節(jié)點(diǎn);
[0111]確定該條子路徑的終止節(jié)點(diǎn)為節(jié)點(diǎn)0,因節(jié)點(diǎn)0下還有子節(jié)點(diǎn)0,則確定節(jié)點(diǎn)0不是全局終點(diǎn),且因節(jié)點(diǎn)0有多個(gè)父節(jié)點(diǎn)(節(jié)點(diǎn)1、節(jié)點(diǎn)I以及節(jié)點(diǎn)了)連接,則節(jié)點(diǎn)0的深度值16^61 = 16^61-1 = 2,即若子節(jié)點(diǎn)上有多個(gè)父節(jié)點(diǎn),則子節(jié)點(diǎn)的深度值是父節(jié)點(diǎn)深度值減一;
[0112]則記錄節(jié)點(diǎn)0的深度值2,并依次將節(jié)點(diǎn)0、節(jié)點(diǎn)1、節(jié)點(diǎn)以及節(jié)點(diǎn)0的深度值壓入數(shù)據(jù)存儲(chǔ)棧;
[0113]根據(jù)廣度優(yōu)先原則,進(jìn)行另一條10路徑的遍歷,即依次經(jīng)由節(jié)點(diǎn)八、節(jié)點(diǎn)0遍歷到節(jié)點(diǎn)I,由上述遍歷規(guī)則可知,節(jié)點(diǎn)I的深度值16^61 = 16^61+1 = 3 ;
[0114]節(jié)點(diǎn)I的子節(jié)點(diǎn)為節(jié)點(diǎn)0,因節(jié)點(diǎn)0的深度值已壓入數(shù)據(jù)存儲(chǔ)棧,則將節(jié)點(diǎn)I的深度值壓入數(shù)據(jù)存儲(chǔ)棧;
[0115]5)若遍歷到最后一條子路徑,則依次遍歷到全局終點(diǎn),并將全局終點(diǎn)的深度值壓入數(shù)據(jù)存儲(chǔ)棧;
[0116]依據(jù)上述遍歷規(guī)則,確定遍歷到節(jié)點(diǎn)了所位于的子路徑即為最后一條子路徑,則依據(jù)上述遍歷規(guī)則依次確定節(jié)點(diǎn)了的深度值為3、節(jié)點(diǎn)0的深度值16^61 = 16^61-1 = 1,則依次將節(jié)點(diǎn)0的深度值1和節(jié)點(diǎn)了的深度值3依次壓入數(shù)據(jù)存儲(chǔ)棧中;
[0117]依據(jù)上述的遍歷規(guī)則即可獲取第一樹形數(shù)據(jù)的各節(jié)點(diǎn)的深度值,所述第二樹形數(shù)據(jù)的各節(jié)點(diǎn)的深度值的獲取方式請(qǐng)見第一樹形數(shù)據(jù)的各節(jié)點(diǎn)的深度值的獲取方式,具體不再贅述,需明確的是,只要所述第一樹形數(shù)據(jù)和所述第二樹形數(shù)據(jù)依據(jù)相同的遍歷規(guī)則進(jìn)行遍歷即可。
[0118]203、分別根據(jù)所述第一樹形數(shù)據(jù)和所述第二樹形數(shù)據(jù)的各節(jié)點(diǎn)的深度值確定第一集合和第二集合;
[0119]由步驟202所示對(duì)所述第一樹形數(shù)據(jù)進(jìn)行遍歷過程中,以所述第一樹形數(shù)據(jù)為例,依次將各節(jié)點(diǎn)的深度值壓入數(shù)據(jù)存儲(chǔ)棧中,根據(jù)壓入數(shù)據(jù)存儲(chǔ)棧中的先后順序建立各第一子集;
[0120]由上述可知,與深度值1對(duì)應(yīng)的第一子集為:!:節(jié)點(diǎn)八、節(jié)點(diǎn);
[0121]與深度值2對(duì)應(yīng)的第一子集為:(節(jié)點(diǎn)3、節(jié)點(diǎn)8、節(jié)點(diǎn)I節(jié)點(diǎn)0、節(jié)點(diǎn)0、節(jié)點(diǎn)0};
[0122]與深度值3對(duì)應(yīng)的第一子集為:(節(jié)點(diǎn)隊(duì)節(jié)點(diǎn)2、節(jié)點(diǎn)?、節(jié)點(diǎn)?、節(jié)點(diǎn)1、節(jié)點(diǎn)!!、節(jié)點(diǎn)1、節(jié)點(diǎn)II ;
[0123]與深度值4對(duì)應(yīng)的第一子集為:(節(jié)點(diǎn)X、節(jié)點(diǎn)II ;
[0124]可見,所述第一集合包括多個(gè)分別與所述深度值對(duì)應(yīng)的第一子集,且各所述第一子集內(nèi)的所述第一樹形數(shù)據(jù)的節(jié)點(diǎn)的深度值相同;
[0125]所述第二集合的具體建立方式請(qǐng)假第一集合的建立方式,具體在本實(shí)施例中不做贅述,只要所述第二集合包括多個(gè)分別與所述深度值對(duì)應(yīng)的第二子集,且各所述第二子集內(nèi)的所述第二樹形數(shù)據(jù)的節(jié)點(diǎn)的深度值相同即可。
[0126]204、確定與所述第一子集對(duì)應(yīng)的各深度值的最大值以及確定與所述第二子集對(duì)應(yīng)的各深度值的最大值;
[0127]205、確定與所述第一子集對(duì)應(yīng)的各深度值的最大值和與所述第二子集對(duì)應(yīng)的各深度值的最大值中的較小值為第一基準(zhǔn)深度值;
[0128]206、確定與所述第一子集對(duì)應(yīng)的各深度值的最大值和與所述第二子集對(duì)應(yīng)的各深度值的最大值中的較大值為第二基準(zhǔn)深度值;
[0129]即有上述步驟中所示的第一集合可知,所述第一集合中與各第一子集對(duì)應(yīng)的各深度值的最大值為4 ;假設(shè)按相同的遍歷規(guī)則確定第二集合中與各第二子集對(duì)應(yīng)的各深度值最大的為10,則確定第一基準(zhǔn)深度值為4,第二基準(zhǔn)深度值為10。
[0130]207、確定初始化相似度權(quán)值評(píng)等于0 ;
[0131]其中,I代表基準(zhǔn)數(shù)據(jù)和問題數(shù)據(jù)的相似度權(quán)值,I越小代表相似度越小,0代表兩類數(shù)據(jù)完全不同。
[0132]208、確定目標(biāo)節(jié)點(diǎn)個(gè)數(shù)為(^ ;
[0133]其中,所述0等于各所述第一子集和各所述第二子集內(nèi)的節(jié)點(diǎn)數(shù)的最大值。
[0134]本實(shí)施例中以第一集合中與深度值3對(duì)應(yīng)的第一子集中的節(jié)點(diǎn)數(shù)最大,則即可確定0值為8。
[0135]需明確的是,本實(shí)施例中的步驟204至步驟208之間并無時(shí)序上的先后關(guān)系,其進(jìn)行的順序在本實(shí)施例中僅為一種舉例。
[0136]且本實(shí)施例對(duì)0的設(shè)定也為一種舉例,不作限定,在不同的應(yīng)用場景和對(duì)相似度的不同要求下,可任意設(shè)定。值,例如還可將0值設(shè)定為500、1000等數(shù)值,即本實(shí)施例對(duì)0的設(shè)定不作限定。
[0137]209、根據(jù)與各所述第一子集和與各所述第二子集對(duì)應(yīng)的深度值由低到高的順序依次確定當(dāng)前深度值是否小于或等于所述第一基準(zhǔn)深度值,若是,則進(jìn)行步驟210,若否,則進(jìn)行步驟214;
[0138]分別對(duì)第一集合和第二集合中的各子集進(jìn)行遍歷,且遍歷的順序?yàn)榘瓷疃戎涤傻偷礁叩捻樞?,即以上述確定的第一集合為例,先確定第一子集(節(jié)點(diǎn)八、節(jié)點(diǎn)⑶的深度值為當(dāng)前深度值,即當(dāng)前深度值為1 ;即當(dāng)前遍歷分析到的深度值即為當(dāng)前深度值。
[0139]確定當(dāng)前深度值1是否小于或等于所述第一基準(zhǔn)深度值4,;
[0140]確定完第一子集(節(jié)點(diǎn)八、節(jié)點(diǎn)后,按深度值由低到高的順序再確定第一子集I節(jié)點(diǎn)3、節(jié)點(diǎn)8、節(jié)點(diǎn)6、節(jié)點(diǎn)0、節(jié)點(diǎn)0、節(jié)點(diǎn)0},然后確定(節(jié)點(diǎn)隊(duì)節(jié)點(diǎn)2、節(jié)點(diǎn)?、節(jié)點(diǎn)?、節(jié)點(diǎn)1、節(jié)點(diǎn)I1、節(jié)點(diǎn)1、節(jié)點(diǎn)II,直至確定到最后一個(gè)第一子集(節(jié)點(diǎn)X、節(jié)點(diǎn)1};
[0141]第二集合的遍歷方式與第一集合相同,即根據(jù)與各所述第二子集對(duì)應(yīng)的深度值由低到高的順序依次確定當(dāng)前深度值是否小于或等于所述第一基準(zhǔn)深度值,具體不再贅述。
[0142]210、根據(jù)字符串編輯距離算法確定與所述當(dāng)前深度值對(duì)應(yīng)的第一子集和所述第二子集之間的320值;
[0143]其中,字符串編輯距離算法(330, 8廿1118 6(111: (1181:811(36),指兩個(gè)字符串之間,由一個(gè)轉(zhuǎn)換成另一個(gè)所需的最少編輯操作次數(shù),許可的編輯操作包括將一個(gè)字符替換成另一個(gè)字符,插入一個(gè)字符,刪除一個(gè)字符三種。320可以定量度量兩個(gè)字符串的差異;例如將匕11:1:611轉(zhuǎn)成811:1:1118:具體轉(zhuǎn)化過程可首先進(jìn)行,之后進(jìn)行811:1:111(6-)1),最后進(jìn)行8101118(-4),可見320 = 3 ;即320距離常作為一種相似度計(jì)算函數(shù),例如用在自然語言處理,拼寫檢查,網(wǎng)頁相似度對(duì)比中,應(yīng)用在10路徑相似度分析上是一種有效的衡量標(biāo)準(zhǔn),具體請(qǐng)見現(xiàn)有技術(shù)所示,具體在本實(shí)施例中不做贅述。
[0144]即確定當(dāng)前深度值等于1時(shí),與深度值1對(duì)應(yīng)的第一子集和第二子集之間的320值,具體計(jì)算320值的結(jié)果根據(jù)與深度值1對(duì)應(yīng)的第一子集和第二子集內(nèi)的字符串的不同而不同,則在本實(shí)施例中不做贅述,具體如何根據(jù)節(jié)點(diǎn)計(jì)算320值為現(xiàn)有技術(shù),不再贅述。
[0145]211、判斷與所述當(dāng)前深度值對(duì)應(yīng)的320值是否等于0,若是,則進(jìn)行步驟212,若否,則進(jìn)行步驟213;
[0146]212、確定所述相似度權(quán)值評(píng)=胃+,—^2。;
[0147]其中^的取值范圍為大于0且小于1,具體數(shù)值在本實(shí)施例中不作限定,例如可為1/2 ;
[0148]13為所述當(dāng)前深度值,且6大于或等于1且小于或等于所述第一基準(zhǔn)深度值。
[0149]213、確定所述相似度權(quán)值評(píng)=1+8^^^20/821);
[0150]經(jīng)由上述步驟將深度值從1至所述第一基準(zhǔn)深度值均遍歷一遍,進(jìn)而輸出一個(gè)相似度權(quán)值,在輸出的該相似度權(quán)值的基礎(chǔ)上進(jìn)行下述步驟;
[0151]214、確定所述當(dāng)前深度值是否小于或等于所述第二基準(zhǔn)深度值,若是,則進(jìn)行步驟215,若否,則進(jìn)行步驟216;
[0152]本實(shí)施例中所述第二基準(zhǔn)深度值以10為例進(jìn)行說明,即在當(dāng)前深度值大于第一基準(zhǔn)深度值時(shí),則進(jìn)一步判斷當(dāng)前深度值是否小于或等于所述第二基準(zhǔn)深度值。
[0153]215、確定所述相似度權(quán)值評(píng)=評(píng)-,03—11 ;
[0154]其中,6大于所述第一基準(zhǔn)深度值且小于或等于所述第二基準(zhǔn)深度值。
[0155]216、結(jié)束流程,并將最后確定的相似度權(quán)值I輸出;
[0156]如本實(shí)施例中以所述第二基準(zhǔn)深度值為10為例進(jìn)行說明,則當(dāng)當(dāng)前深度值為10時(shí),即可將與深度值為10對(duì)應(yīng)的I輸出,并結(jié)束流程。
[0157]由本實(shí)施例所示可知,因與深度值從1至所述第一基準(zhǔn)深度值對(duì)應(yīng)的各節(jié)點(diǎn)為在基準(zhǔn)數(shù)據(jù)和問題數(shù)據(jù)中為上層數(shù)據(jù),深度值從大于所述第一基準(zhǔn)深度值到小于等于第二基準(zhǔn)深度值對(duì)應(yīng)的各節(jié)點(diǎn)在基準(zhǔn)數(shù)據(jù)和問題數(shù)據(jù)中為下層數(shù)據(jù),因上側(cè)數(shù)據(jù)和下層數(shù)據(jù)對(duì)基準(zhǔn)數(shù)據(jù)和問題數(shù)據(jù)之間對(duì)應(yīng)關(guān)系的影響是不同的,所以本實(shí)施例在計(jì)算與深度值從1至所述第一基準(zhǔn)深度值對(duì)應(yīng)的各節(jié)點(diǎn)的相似度權(quán)值時(shí),通過^的設(shè)定使得對(duì)位于數(shù)據(jù)中不同層次的節(jié)點(diǎn)采用不同的計(jì)算方式,以使不同層次的節(jié)點(diǎn)在計(jì)算相似度權(quán)值時(shí)賦予不同的權(quán)值,從而提高了相似度的識(shí)別可靠性,保障了結(jié)構(gòu)突變對(duì)應(yīng)關(guān)系的準(zhǔn)確判斷,從而提升了分析結(jié)果的準(zhǔn)確性。
[0158]進(jìn)一步可知,通過本實(shí)施例所示的路徑相似度分析方法,能夠?qū)⒉煌幕鶞?zhǔn)數(shù)據(jù)和問題數(shù)據(jù)對(duì)應(yīng)起來,填補(bǔ)了 11^36系統(tǒng)和性能問題分析工具之間的空白,有效的幫助產(chǎn)品性能問題的定位工作。
[0159]以下結(jié)合圖4對(duì)本實(shí)施例所提供的一種用于實(shí)現(xiàn)路徑相似度分析方法的系統(tǒng)進(jìn)行詳細(xì)說明:
[0160]如圖4所示,所述系統(tǒng)包括:
[0161]第一獲取單元401,用于分別獲取基準(zhǔn)數(shù)據(jù)的第一樹形數(shù)據(jù)和問題數(shù)據(jù)的第二樹形數(shù)據(jù);
[0162]第二獲取單元402,用于根據(jù)相同的遍歷規(guī)則以及各節(jié)點(diǎn)之間的隸屬關(guān)系對(duì)所述第一樹形數(shù)據(jù)和所述第二樹形數(shù)據(jù)的各節(jié)點(diǎn)進(jìn)行遍歷以獲取各節(jié)點(diǎn)的深度值,各節(jié)點(diǎn)的所述深度值用于表示各節(jié)點(diǎn)在所述第一樹形數(shù)據(jù)或第二樹形數(shù)據(jù)中所位于的層次;
[0163]第一確定單元403,用于分別根據(jù)所述第一樹形數(shù)據(jù)和所述第二樹形數(shù)據(jù)的各節(jié)點(diǎn)的深度值確定第一集合和第二集合,其中,所述第一集合包括多個(gè)分別與所述深度值對(duì)應(yīng)的第一子集,且各所述第一子集內(nèi)的所述第一樹形數(shù)據(jù)的節(jié)點(diǎn)的深度值相同,所述第二集合包括多個(gè)分別與所述深度值對(duì)應(yīng)的第二子集,且各所述第二子集內(nèi)的所述第二樹形數(shù)據(jù)的節(jié)點(diǎn)的深度值相同;
[0164]計(jì)算單元404,用于根據(jù)與各所述第一子集和與各所述第二子集對(duì)應(yīng)的深度值計(jì)算所述基準(zhǔn)數(shù)據(jù)和所述問題數(shù)據(jù)的相似度權(quán)值。
[0165]通過本實(shí)施例所提供的系統(tǒng),能夠?qū)⒁曰鶞?zhǔn)數(shù)據(jù)的第一樹形數(shù)據(jù)和問題數(shù)據(jù)的第二樹形數(shù)據(jù)的各節(jié)點(diǎn)通過集合的方式進(jìn)行表示,且各集合包括與用于表示各節(jié)點(diǎn)層次的深度值子集合,并根據(jù)各深度值計(jì)算所述基準(zhǔn)數(shù)據(jù)和所述問題數(shù)據(jù)的相似度權(quán)值,通過本實(shí)施例計(jì)算所得到的所述基準(zhǔn)數(shù)據(jù)和所述問題數(shù)據(jù)的相似度權(quán)值能夠確定基準(zhǔn)數(shù)據(jù)和問題數(shù)據(jù)之間的對(duì)應(yīng)關(guān)系,進(jìn)而利用性能問題智能分析模塊可以自動(dòng)化性能定位工作,極大提高性能問題分析的時(shí)間,減少對(duì)人力的依賴。
[0166]以下結(jié)合圖5所示對(duì)能夠?qū)崿F(xiàn)對(duì)位于不同層次的節(jié)點(diǎn)用不同的算法以獲取相似度權(quán)值的系統(tǒng)繼續(xù)詳細(xì)說明:
[0167]如圖5所示,所述系統(tǒng)包括:
[0168]第一獲取單元501,用于分別獲取基準(zhǔn)數(shù)據(jù)的第一樹形數(shù)據(jù)和問題數(shù)據(jù)的第二樹形數(shù)據(jù);
[0169]第二獲取單元502,用于根據(jù)相同的遍歷規(guī)則以及各節(jié)點(diǎn)之間的隸屬關(guān)系對(duì)所述第一樹形數(shù)據(jù)和所述第二樹形數(shù)據(jù)的各節(jié)點(diǎn)進(jìn)行遍歷以獲取各節(jié)點(diǎn)的深度值,各節(jié)點(diǎn)的所述深度值用于表示各節(jié)點(diǎn)在所述第一樹形數(shù)據(jù)或第二樹形數(shù)據(jù)中所位于的層次;
[0170]第一確定單元503,用于分別根據(jù)所述第一樹形數(shù)據(jù)和所述第二樹形數(shù)據(jù)的各節(jié)點(diǎn)的深度值確定第一集合和第二集合,其中,所述第一集合包括多個(gè)分別與所述深度值對(duì)應(yīng)的第一子集,且各所述第一子集內(nèi)的所述第一樹形數(shù)據(jù)的節(jié)點(diǎn)的深度值相同,所述第二集合包括多個(gè)分別與所述深度值對(duì)應(yīng)的第二子集,且各所述第二子集內(nèi)的所述第二樹形數(shù)據(jù)的節(jié)點(diǎn)的深度值相同;
[0171]第二確定單元504,用于確定與所述第一子集對(duì)應(yīng)的各深度值的最大值以及確定與所述第二子集對(duì)應(yīng)的各深度值的最大值;
[0172]第三確定單元505,用于確定與所述第一子集對(duì)應(yīng)的各深度值的最大值和與所述第二子集對(duì)應(yīng)的各深度值的最大值中的較小值為第一基準(zhǔn)深度值;
[0173]第四確定單元506,用于確定與所述第一子集對(duì)應(yīng)的各深度值的最大值和與所述第二子集對(duì)應(yīng)的各深度值的最大值中的較大值為第二基準(zhǔn)深度值;
[0174]第五確定單元507,用于確定初始化相似度權(quán)值I等于0 ;
[0175]第六確定單元508,用于確定目標(biāo)節(jié)點(diǎn)個(gè)數(shù)為6其中,所述。等于各所述第一子集和各所述第二子集內(nèi)的節(jié)點(diǎn)數(shù)的最大值;
[0176]計(jì)算單元509,用于根據(jù)與各所述第一子集和與各所述第二子集對(duì)應(yīng)的深度值計(jì)算所述基準(zhǔn)數(shù)據(jù)和所述問題數(shù)據(jù)的相似度權(quán)值;
[0177]具體的,所述計(jì)算單元509包括:
[0178]第一確定模塊5091,用于根據(jù)與各所述第一子集和與各所述第二子集對(duì)應(yīng)的深度值由低到高的順序依次確定當(dāng)前深度值是否小于或等于所述第一基準(zhǔn)深度值;
[0179]第一計(jì)算模塊5092,用于若當(dāng)前深度值小于或等于所述第一基準(zhǔn)深度值,則根據(jù)字符串編輯距離算法確定與所述當(dāng)前深度值對(duì)應(yīng)的第一子集和所述第二子集之間的320值;
[0180]第二計(jì)算模塊5093,用于若所述320值等于0,則確定所述相似度權(quán)值評(píng)=
其中,3的取值范圍為大于0且小于1,6為所述當(dāng)前深度值,且6大于或等于1且小于或等于所述第一基準(zhǔn)深度值;
[0181]第三計(jì)算模塊5094,用于若所述320值不等于0,則確定所述相似度權(quán)值評(píng)=
[0182]第二確定模塊5095,用于若根據(jù)所述深度值由低到高的順序依次確定當(dāng)前深度值大于所述第一基準(zhǔn)深度值時(shí),則確定所述當(dāng)前深度值是否小于或等于所述第二基準(zhǔn)深度值;
[0183]第三確定模塊5096,用于若確定所述當(dāng)前深度值小于或等于所述第二基準(zhǔn)深度值,則確定所述相似度權(quán)值1 = 1-, ,其中,6大于所述第一基準(zhǔn)深度值且小于或等于所述第二基準(zhǔn)深度值。
[0184]由本實(shí)施例所示可知,因與深度值從1至所述第一基準(zhǔn)深度值對(duì)應(yīng)的各節(jié)點(diǎn)為在基準(zhǔn)數(shù)據(jù)和問題數(shù)據(jù)中為上層數(shù)據(jù),深度值從大于所述第一基準(zhǔn)深度值到小于等于第二基準(zhǔn)深度值對(duì)應(yīng)的各節(jié)點(diǎn)在基準(zhǔn)數(shù)據(jù)和問題數(shù)據(jù)中為下層數(shù)據(jù),因上側(cè)數(shù)據(jù)和下層數(shù)據(jù)對(duì)基準(zhǔn)數(shù)據(jù)和問題數(shù)據(jù)之間對(duì)應(yīng)關(guān)系的影響是不同的,所以本實(shí)施例在計(jì)算與深度值從1至所述第一基準(zhǔn)深度值對(duì)應(yīng)的各節(jié)點(diǎn)的相似度權(quán)值時(shí),通過^的設(shè)定使得對(duì)位于數(shù)據(jù)中不同層次的節(jié)點(diǎn)采用不同的計(jì)算方式,以使不同層次的節(jié)點(diǎn)在計(jì)算相似度權(quán)值時(shí)賦予不同的權(quán)值,從而提高了相似度的識(shí)別可靠性,保障了結(jié)構(gòu)突變對(duì)應(yīng)關(guān)系的準(zhǔn)確判斷,從而提升了分析結(jié)果的準(zhǔn)確性。
[0185]進(jìn)一步可知,通過本實(shí)施例所示的路徑相似度分析方法,能夠?qū)⒉煌幕鶞?zhǔn)數(shù)據(jù)和問題數(shù)據(jù)對(duì)應(yīng)起來,填補(bǔ)了 11^36系統(tǒng)和性能問題分析工具之間的空白,有效的幫助產(chǎn)品性能問題的定位工作。
[0186]圖4至圖5所示的實(shí)施例從模塊功能實(shí)體的角度對(duì)系統(tǒng)的結(jié)構(gòu)進(jìn)行了詳細(xì)說明,以下結(jié)合圖6從硬件角度對(duì)本發(fā)明實(shí)施例中的系統(tǒng)進(jìn)行詳細(xì)描述,請(qǐng)見圖6,本發(fā)明實(shí)施例中的系統(tǒng)的另一實(shí)施例包括:
[0187]該系統(tǒng)600具體包括:
[0188]輸入裝置601、輸出裝置602、處理器603和存儲(chǔ)器604(其中,圖6所示的處理器603可以有一個(gè)或多個(gè),圖6中以一個(gè)處理器603為例進(jìn)行說明);
[0189]在本發(fā)明一些實(shí)施例中,輸入裝置601、輸出裝置602、處理器603和存儲(chǔ)器604可通過總線或其它方式連接,其中,圖6中以通過總線連接為例。
[0190]處理器603用于執(zhí)行如下步驟:
[0191]用于分別獲取基準(zhǔn)數(shù)據(jù)的第一樹形數(shù)據(jù)和問題數(shù)據(jù)的第二樹形數(shù)據(jù);
[0192]用于根據(jù)相同的遍歷規(guī)則以及各節(jié)點(diǎn)之間的隸屬關(guān)系對(duì)所述第一樹形數(shù)據(jù)和所述第二樹形數(shù)據(jù)的各節(jié)點(diǎn)進(jìn)行遍歷以獲取各節(jié)點(diǎn)的深度值,各節(jié)點(diǎn)的所述深度值用于表示各節(jié)點(diǎn)在所述第一樹形數(shù)據(jù)或第二樹形數(shù)據(jù)中所位于的層次;
[0193]用于分別根據(jù)所述第一樹形數(shù)據(jù)和所述第二樹形數(shù)據(jù)的各節(jié)點(diǎn)的深度值確定第一集合和第二集合,其中,所述第一集合包括多個(gè)分別與所述深度值對(duì)應(yīng)的第一子集,且各所述第一子集內(nèi)的所述第一樹形數(shù)據(jù)的節(jié)點(diǎn)的深度值相同,所述第二集合包括多個(gè)分別與所述深度值對(duì)應(yīng)的第二子集,且各所述第二子集內(nèi)的所述第二樹形數(shù)據(jù)的節(jié)點(diǎn)的深度值相同;
[0194]用于根據(jù)與各所述第一子集和與各所述第二子集對(duì)應(yīng)的深度值計(jì)算所述基準(zhǔn)數(shù)據(jù)和所述問題數(shù)據(jù)的相似度權(quán)值。
[0195]在本發(fā)明的另一些實(shí)施例中,所述處理器603還用于執(zhí)行如下步驟:
[0196]用于確定與所述第一子集對(duì)應(yīng)的各深度值的最大值以及確定與所述第二子集對(duì)應(yīng)的各深度值的最大值;
[0197]用于確定與所述第一子集對(duì)應(yīng)的各深度值的最大值和與所述第二子集對(duì)應(yīng)的各深度值的最大值中的較小值為第一基準(zhǔn)深度值;
[0198]用于確定與所述第一子集對(duì)應(yīng)的各深度值的最大值和與所述第二子集對(duì)應(yīng)的各深度值的最大值中的較大值為第二基準(zhǔn)深度值;
[0199]用于確定初始化相似度權(quán)值I等于0 ;
[0200]用于確定目標(biāo)節(jié)點(diǎn)個(gè)數(shù)為6其中,所述0等于各所述第一子集和各所述第二子集內(nèi)的節(jié)點(diǎn)數(shù)的最大值。
[0201]在本發(fā)明的另一些實(shí)施例中,所述處理器603還用于執(zhí)行如下步驟:
[0202]用于根據(jù)與各所述第一子集和與各所述第二子集對(duì)應(yīng)的深度值由低到高的順序依次確定當(dāng)前深度值是否小于或等于所述第一基準(zhǔn)深度值;
[0203]用于若當(dāng)前深度值小于或等于所述第一基準(zhǔn)深度值,則根據(jù)字符串編輯距離算法確定與所述當(dāng)前深度值對(duì)應(yīng)的第一子集和所述第二子集之間的320值;
[0204]用于若所述320值等于0,則確定所述相似度權(quán)值評(píng)=1+,(?拉。,其中,3的取值范圍為大于0且小于1,13為所述當(dāng)前深度值,且6大于或等于1且小于或等于所述第一基準(zhǔn)深度值;
[0205]用于若所述320值不等于0,則確定所述相似度權(quán)值切=
[0206]在本發(fā)明的另一些實(shí)施例中,所述處理器603還用于執(zhí)行如下步驟:
[0207]用于若根據(jù)所述深度值由低到高的順序依次確定當(dāng)前深度值大于所述第一基準(zhǔn)深度值時(shí),則確定所述當(dāng)前深度值是否小于或等于所述第二基準(zhǔn)深度值;
[0208]用于若確定所述當(dāng)前深度值小于或等于所述第二基準(zhǔn)深度值,則確定所述相似度權(quán)值I = 1- 1其中,13大于所述第一基準(zhǔn)深度值且小于或等于所述第二基準(zhǔn)深度值。
[0209]所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡潔,上述描述的系統(tǒng),裝置和單元的具體工作過程,可以參考前述方法實(shí)施例中的對(duì)應(yīng)過程,在此不再贅述。
[0210]在本申請(qǐng)所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的系統(tǒng),裝置和方法,可以通過其它的方式實(shí)現(xiàn)。例如,以上所描述的裝置實(shí)施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)單元或組件可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機(jī)械或其它的形式。
[0211]所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部單元來實(shí)現(xiàn)本實(shí)施例方案的目的。
[0212]另外,在本發(fā)明各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理單元中,也可以是各個(gè)單元單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)單元中。上述集成的單元既可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能單元的形式實(shí)現(xiàn)。
[0213]所述集成的單元如果以軟件功能單元的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),可以存儲(chǔ)在一個(gè)計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述方法的全部或部分步驟。而前述的存儲(chǔ)介質(zhì)包括山盤、移動(dòng)硬盤、只讀存儲(chǔ)器1611101^)、隨機(jī)存取存儲(chǔ)器^00688 1611101^)、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。
[0214]以上所述,以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精神和范圍。
【權(quán)利要求】
1.一種路徑相似度分析方法,其特征在于,包括: 分別獲取基準(zhǔn)數(shù)據(jù)的第一樹形數(shù)據(jù)和問題數(shù)據(jù)的第二樹形數(shù)據(jù); 根據(jù)相同的遍歷規(guī)則以及各節(jié)點(diǎn)之間的隸屬關(guān)系對(duì)所述第一樹形數(shù)據(jù)和所述第二樹形數(shù)據(jù)的各節(jié)點(diǎn)進(jìn)行遍歷以獲取各節(jié)點(diǎn)的深度值,各節(jié)點(diǎn)的所述深度值用于表示各節(jié)點(diǎn)在所述第一樹形數(shù)據(jù)或第二樹形數(shù)據(jù)中所位于的層次; 分別根據(jù)所述第一樹形數(shù)據(jù)和所述第二樹形數(shù)據(jù)的各節(jié)點(diǎn)的深度值確定第一集合和第二集合,其中,所述第一集合包括多個(gè)分別與所述深度值對(duì)應(yīng)的第一子集,且各所述第一子集內(nèi)的所述第一樹形數(shù)據(jù)的節(jié)點(diǎn)的深度值相同,所述第二集合包括多個(gè)分別與所述深度值對(duì)應(yīng)的第二子集,且各所述第二子集內(nèi)的所述第二樹形數(shù)據(jù)的節(jié)點(diǎn)的深度值相同; 根據(jù)與各所述第一子集和與各所述第二子集對(duì)應(yīng)的深度值計(jì)算所述基準(zhǔn)數(shù)據(jù)和所述問題數(shù)據(jù)的相似度權(quán)值。
2.根據(jù)權(quán)利要求1所述的路徑相似度分析方法,其特征在于,所述根據(jù)與各所述第一子集和與各所述第二子集對(duì)應(yīng)的深度值計(jì)算所述基準(zhǔn)數(shù)據(jù)和所述問題數(shù)據(jù)的相似度權(quán)值之前,所述方法還包括: 確定與所述第一子集對(duì)應(yīng)的各深度值的最大值以及確定與所述第二子集對(duì)應(yīng)的各深度值的最大值; 確定與所述第一子集對(duì)應(yīng)的各深度值的最大值和與所述第二子集對(duì)應(yīng)的各深度值的最大值中的較小值為第一基準(zhǔn)深度值; 確定與所述第一子集對(duì)應(yīng)的各深度值的最大值和與所述第二子集對(duì)應(yīng)的各深度值的最大值中的較大值為第二基準(zhǔn)深度值; 確定初始化相似度權(quán)值W等于O ; 確定目標(biāo)節(jié)點(diǎn)個(gè)數(shù)為C,其中,所述C等于各所述第一子集和各所述第二子集內(nèi)的節(jié)點(diǎn)數(shù)的最大值。
3.根據(jù)權(quán)利要求2所述的路徑相似度分析方法,其特征在于,所述根據(jù)與各所述第一子集和與各所述第二子集對(duì)應(yīng)的深度值計(jì)算所述基準(zhǔn)數(shù)據(jù)和所述問題數(shù)據(jù)的相似度權(quán)值包括: 根據(jù)與各所述第一子集和與各所述第二子集對(duì)應(yīng)的深度值由低到高的順序依次確定當(dāng)前深度值是否小于或等于所述第一基準(zhǔn)深度值; 若是,則根據(jù)字符串編輯距離算法確定與所述當(dāng)前深度值對(duì)應(yīng)的第一子集和所述第二子集之間的SED值; 若所述SED值等于O,則確定所述相似度權(quán)值W = Ι+&~(Η)*2(3,其中,a的取值范圍為大于O且小于1,b為所述當(dāng)前深度值,且b大于或等于I且小于或等于所述第一基準(zhǔn)深度值; 若所述SED值不等于O,則確定所述相似度權(quán)值W = W+aK^Zc/SED。
4.根據(jù)權(quán)利要求3所述的路徑相似度分析方法,其特征在于,所述根據(jù)與各所述第一子集和與各所述第二子集對(duì)應(yīng)的深度值計(jì)算所述基準(zhǔn)數(shù)據(jù)和所述問題數(shù)據(jù)的相似度權(quán)值還包括: 若根據(jù)所述深度值由低到高的順序依次確定當(dāng)前深度值大于所述第一基準(zhǔn)深度值時(shí),則確定所述當(dāng)前深度值是否小于或等于所述第二基準(zhǔn)深度值; 若是,則確定所述相似度權(quán)值W = W - a^),其中,b大于所述第一基準(zhǔn)深度值且小于或等于所述第二基準(zhǔn)深度值。
5.一種系統(tǒng),其特征在于,包括: 第一獲取單元,用于分別獲取基準(zhǔn)數(shù)據(jù)的第一樹形數(shù)據(jù)和問題數(shù)據(jù)的第二樹形數(shù)據(jù);第二獲取單元,用于根據(jù)相同的遍歷規(guī)則以及各節(jié)點(diǎn)之間的隸屬關(guān)系對(duì)所述第一樹形數(shù)據(jù)和所述第二樹形數(shù)據(jù)的各節(jié)點(diǎn)進(jìn)行遍歷以獲取各節(jié)點(diǎn)的深度值,各節(jié)點(diǎn)的所述深度值用于表示各節(jié)點(diǎn)在所述第一樹形數(shù)據(jù)或第二樹形數(shù)據(jù)中所位于的層次; 第一確定單元,用于分別根據(jù)所述第一樹形數(shù)據(jù)和所述第二樹形數(shù)據(jù)的各節(jié)點(diǎn)的深度值確定第一集合和第二集合,其中,所述第一集合包括多個(gè)分別與所述深度值對(duì)應(yīng)的第一子集,且各所述第一子集內(nèi)的所述第一樹形數(shù)據(jù)的節(jié)點(diǎn)的深度值相同,所述第二集合包括多個(gè)分別與所述深度值對(duì)應(yīng)的第二子集,且各所述第二子集內(nèi)的所述第二樹形數(shù)據(jù)的節(jié)點(diǎn)的深度值相同; 計(jì)算單元,用于根據(jù)與各所述第一子集和與各所述第二子集對(duì)應(yīng)的深度值計(jì)算所述基準(zhǔn)數(shù)據(jù)和所述問題數(shù)據(jù)的相似度權(quán)值。
6.根據(jù)權(quán)利要求5所述的系統(tǒng),其特征在于,所述系統(tǒng)還包括: 第二確定單元,用于確定與所述第一子集對(duì)應(yīng)的各深度值的最大值以及確定與所述第二子集對(duì)應(yīng)的各深度值的最大值; 第三確定單元,用于確定與所述第一子集對(duì)應(yīng)的各深度值的最大值和與所述第二子集對(duì)應(yīng)的各深度值的最大值中的較小值為第一基準(zhǔn)深度值; 第四確定單元,用于確定與所述第一子集對(duì)應(yīng)的各深度值的最大值和與所述第二子集對(duì)應(yīng)的各深度值的最大值中的較大值為第二基準(zhǔn)深度值; 第五確定單元,用于確定初始化相似度權(quán)值W等于O ; 第六確定單元,用于確定目標(biāo)節(jié)點(diǎn)個(gè)數(shù)為c,其中,所述c等于各所述第一子集和各所述第二子集內(nèi)的節(jié)點(diǎn)數(shù)的最大值。
7.根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,所述計(jì)算單元包括: 第一確定模塊,用于根據(jù)與各所述第一子集和與各所述第二子集對(duì)應(yīng)的深度值由低到高的順序依次確定當(dāng)前深度值是否小于或等于所述第一基準(zhǔn)深度值; 第一計(jì)算模塊,用于若當(dāng)前深度值小于或等于所述第一基準(zhǔn)深度值,則根據(jù)字符串編輯距離算法確定與所述當(dāng)前深度值對(duì)應(yīng)的第一子集和所述第二子集之間的SED值; 第二計(jì)算模塊,用于若所述SED值等于O,則確定所述相似度權(quán)值W = ff+a~(H)*2c,其中,a的取值范圍為大于O且小于l,b為所述當(dāng)前深度值,且b大于或等于I且小于或等于所述第一基準(zhǔn)深度值; 第三計(jì)算模塊,用于若所述SED值不等于O,則確定所述相似度權(quán)值W = ff+a~(w)*2c/SED0
8.根據(jù)權(quán)利要求7所述的系統(tǒng),其特征在于,所述計(jì)算單元還包括: 第二確定模塊,用于若根據(jù)所述深度值由低到高的順序依次確定當(dāng)前深度值大于所述第一基準(zhǔn)深度值時(shí),則確定所述當(dāng)前深度值是否小于或等于所述第二基準(zhǔn)深度值; 第三確定模塊,用于若確定所述當(dāng)前深度值小于或等于所述第二基準(zhǔn)深度值,則確定所述相似度權(quán)值W = W - a~ (b_D,其中,b大于所述第一基準(zhǔn)深度值且小于或等于所述第二基準(zhǔn)深度值。
【文檔編號(hào)】G06F17/30GK104462288SQ201410705903
【公開日】2015年3月25日 申請(qǐng)日期:2014年11月27日 優(yōu)先權(quán)日:2014年11月27日
【發(fā)明者】謝羽 申請(qǐng)人:華為技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
蓬溪县| 渭南市| 九江县| 克东县| 边坝县| 多伦县| 六安市| 柯坪县| 乐业县| 北票市| 隆安县| 浮山县| 巴彦淖尔市| 山东省| 湟源县| 太仆寺旗| 肇庆市| 临邑县| 绥江县| 古田县| 视频| 泗水县| 丹寨县| 柘城县| 南溪县| 新和县| 芦山县| 河源市| 东源县| 漳浦县| 宣城市| 三河市| 福建省| 定边县| 柳江县| 合江县| 昌吉市| 台北县| 灵川县| 涞源县| 大方县|