亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種基于海量不完備數(shù)據(jù)集的skyline偏好查詢方法與流程

文檔序號:12666266閱讀:452來源:國知局
一種基于海量不完備數(shù)據(jù)集的skyline偏好查詢方法與流程

本發(fā)明涉及一種基于海量不完備數(shù)據(jù)集的skyline偏好查詢方法,屬于物聯(lián)網(wǎng)和大數(shù)據(jù)處理技術(shù)領(lǐng)域。



背景技術(shù):

物聯(lián)網(wǎng)(Internet of things,loT)是新一代信息技術(shù)的重要組成部分,也是信息化時的重要發(fā)展階段。目前物聯(lián)網(wǎng)領(lǐng)域中主要使用傳感器和監(jiān)測設(shè)備來獲取數(shù)據(jù),由于傳感器和監(jiān)測設(shè)備故障、誤差和存在著的實際數(shù)據(jù)獲取限制,數(shù)據(jù)理解有誤或數(shù)據(jù)漏讀等多種情況,使得數(shù)據(jù)集的不完備性普遍存在。這種有缺失數(shù)據(jù)的數(shù)據(jù)集,稱為不完備數(shù)據(jù)集。隨著物聯(lián)網(wǎng)應(yīng)用的發(fā)展與普及,以滿足用戶需求為目標的個性化推薦成為物聯(lián)網(wǎng)數(shù)據(jù)處理的熱點。例如,根據(jù)智能手環(huán)、智能手表等可穿戴設(shè)備中獲取的用戶信息,不同的廠商可以針對不同的用戶推薦其產(chǎn)品。skyline查詢作為一種典型的多目標優(yōu)化問題的處理方法,在決策制定、市場分析、環(huán)境監(jiān)視、數(shù)據(jù)挖掘、數(shù)據(jù)庫可視化和計量經(jīng)濟學(xué)等應(yīng)用中發(fā)揮著重要作用。因此,對物聯(lián)網(wǎng)海量不完備數(shù)據(jù)進行skyline偏好查詢處理是解決個性化推薦問題新的視角和切入點。以往對不完備數(shù)據(jù)的skyline查詢是先將數(shù)據(jù)集進行清洗、修復(fù)等預(yù)處理,然后再進行skyline查詢。但預(yù)處理消耗系統(tǒng)資源過多,修復(fù)后的數(shù)據(jù)存在一定的誤差,導(dǎo)致查詢結(jié)果不準確。并且對于一些時效性問題,如流感時期的數(shù)據(jù),對這些強實效性數(shù)據(jù)進行預(yù)處理可能會導(dǎo)致數(shù)據(jù)失效。



技術(shù)實現(xiàn)要素:

本發(fā)明針對現(xiàn)有技術(shù)的不足,摒棄了傳統(tǒng)方法中的預(yù)處理階段,提出了根據(jù)用戶偏好將維度按重要程度分成兩部分分別進行查詢處理的策略:基于海量不完備數(shù)據(jù)集的skyline偏好查詢(skyline preference query),使得skyline查詢在海量不完備數(shù)據(jù)集上的執(zhí)行效率有了較大提升,并且得到滿足用戶偏好的個性化數(shù)據(jù)。

本發(fā)明是通過下述技術(shù)方案實現(xiàn)的:

一種基于海量不完備數(shù)據(jù)集的skyline偏好查詢方法,包括以下步驟:

(1)根據(jù)數(shù)據(jù)集中各屬性重要程度將不完備數(shù)據(jù)集IS進行投影,得到重要屬性投影后的數(shù)據(jù)集IS’和不重要屬性投影后的數(shù)據(jù)集IS”(以下簡稱數(shù)據(jù)集IS’和數(shù)據(jù)集IS”);

(2)針對數(shù)據(jù)集IS’和數(shù)據(jù)集IS”分別進行元組編碼;

(3)針對數(shù)據(jù)集IS’進行嚴格聚類,所述的嚴格聚類策略(或者方法)包括根據(jù)聚類編碼的定義進行嚴格聚類和聚類后每個類中被支配的數(shù)據(jù)元組被剔除兩個流程;

(4)針對數(shù)據(jù)集IS”進行松散聚類;所述的松散聚類策略(或者方法)包括根據(jù)元組編碼和每個聚類的編碼的包含關(guān)系的定義進行松散聚類和聚類后每個類中被支配的數(shù)據(jù)元組被剔除兩個流程;

(5)將步驟(3)中,嚴格聚類并完成數(shù)據(jù)剔除的數(shù)據(jù)集,執(zhí)行基于屬性值排序的skyline偏好查詢算法,得到基于嚴格聚類的skyline查詢結(jié)果集SSRS(以下簡稱SSRS);

(6)將步驟(4)中,松散聚類并完成數(shù)據(jù)剔除的數(shù)據(jù)集,執(zhí)行基于支配程度計算的skyline偏好查詢算法,得到基于松散聚類的skyline查詢結(jié)果集RSRS(以下簡稱RSRS);

(7)將步驟(5)、步驟(6)得到的SSRS與RSRS取交集,如果交集不為空集,那么交集中的元組就是最終的skyline查詢結(jié)果;

(8)如果步驟(7)的交集為空集,分別計算SSRS與RSRS中元組的信息熵,將SSRS和RSRS中的元組進行信息熵的計算后得出最終的skyline查詢結(jié)果反饋給用戶。

所述(2)針對數(shù)據(jù)集IS’和數(shù)據(jù)集IS”進行元組編碼的過程如下:

pi′·tuple_code(pi″·tuple_code)=Mi,Mi=(m1,m,…,mk);

若pi′·vk(pi″·vk)=*,Mi·mik=0;若pi′·vk(pi″·vk)≠*,Mi·mik=1,

其中k∈[1,λ]([λ+1,d]).

其中,IS’和IS”分別是IS在前λ維上的投影和后d-λ維上的投影,d是不完備數(shù)據(jù)集IS的維數(shù),pi′和pi″分別是元組pi前λ維上的投影和后d-λ維上的投影,Mi是元組pi的編碼,λ是維度的分割常數(shù),λ∈[1,d];

所述步驟(3)嚴格聚類中的聚類編碼過程如下:

對于如果存在ccj≠p′i·tuple_code,那么CS′=CS′∪{pi′·tuple_code}

其中,CS’是嚴格聚類編碼集合,ccj是聚類編碼。

所述步驟(5)中執(zhí)行基于屬性值排序的skyline偏好查詢過程,得到嚴格聚類結(jié)果集SSRS的具體過程如下:

(5.1):對數(shù)據(jù)集IS’中的各維度按照元組屬性值非降序排序,使得更有可能支配其他元組的元組優(yōu)先被處理;每維經(jīng)過排序后都會生成一個數(shù)組Di,i∈[1,λ],對于每個數(shù)組Di都有Di[j]>=Di[j+1],j∈[1,|IS′|),其中|IS′|代表IS’中的元組個數(shù);對于在第i維上存在缺失屬性值的元組是不會加入數(shù)組Di中的,為了節(jié)省存儲空間,數(shù)組Di中存儲的只是元組id,而不是真正的元組;設(shè)立一個指向數(shù)組Di的指針ptri,經(jīng)過嚴格聚類后沒有被支配的元組都納入候選集Candidate_Set;隨機選擇一個數(shù)組Di,處理數(shù)組Di中指針ptri指向的元組;每個在候選集中的元組都會維護兩個值,一個是元組被處理的次數(shù),記為processedCount,一個是元組編碼中1的個數(shù)即非缺失屬性維數(shù),記為dimCount;

(5.2):對于當前被選中的元組p,有以下幾種情況:

①,如果元組p′沒有被處理過且元組p′還在候選集Candidate_Set中,就將它與除自己以外沒有跟它比較過的元組pj′進行比較,即使pj′已經(jīng)被之前處理過的元組所支配;若候選集中存在元組支配p′,元組p′就被移出候選集;

②:如果元組p′沒有被處理過但是被之前處理過的元組支配,即已不在候選集Candidate_Set中,p′就只與還在候選集Candidate_Set中并且沒有與p′比較過的元組比較;在以上兩種情況下,候選集中被元組p′支配的元組會被移出候選集;

③:如果元組p′已經(jīng)被處理過了就不進行任何比較;

④:其中i≠j,p′i和p′j可比較的維度少于個,在這些可比較的維度上,若p′i在至少一維上的值比p′j“好”,剩余維度上的值不比p′j“差”就認為p′i弱支配p′j,記為pi′>*pj

如果兩個元組pi′與pj′之間具有弱支配關(guān)系,還需要比較這兩個元組的重量;若滿足pi′的重量大于pj′的重量,才認為pi′支配pj′;綜合考慮非缺失屬性值及其被用戶所賦予的權(quán)重,元組重量計算公式(1),如下所示:

(5.3):當候選集中的元組p的比較次數(shù)達到了其非缺失屬性維數(shù)dimCount,就將這個元組從候選集移到嚴格skyline結(jié)果集SSRS中;

(5.4):當候選集為空或者所有元組都被處理過至少一次時,把候選集Candidate_Set中的其余元組都放入嚴格聚類skyline結(jié)果集SSRS中,此時基于屬性值排序的skyline偏好查詢過程結(jié)束。

所述步驟(6)中執(zhí)行支配程度計算skyline偏好查詢算法,得到松散聚類結(jié)果集RSRS的具體過程如下:

(6.1):對于每一個元組判斷它聚于哪一個類是通過元組編碼與聚類編碼的匹配來完成的;嚴格聚類規(guī)則是對元組編碼和聚類編碼執(zhí)行完全匹配,只有當一個元組的編碼與一個聚類的編碼完全一致時才認為將這個元組聚于這個類中;松散聚類規(guī)則是對元組編碼和聚類編碼執(zhí)行不完全匹配,即凡是元組編碼與聚類編碼符合包含關(guān)系就認為該元組可以聚于這個類中;下面是對元組編碼與聚類編碼之間包含關(guān)系的定義:

令d1=λ,d2=d-λ.pi″.tuplecode=Mi″,Mi″=(mik,mik+1,…,mid),如果并且i≠j,ccj=(cjk,cjk+1,…,cjd),對于mik≤cjk,pi″被放在聚類編碼為ccj的對應(yīng)類中,pi″與ccj之間的包含關(guān)系用pi″→ccj表示;如果對于mik>cjk,那么ccj→pi″并且這個聚類的編碼將被更新為pi″·tuple_code,ccj將被移出CS″;如果pi″·tuple_code與ccj之間沒有包含關(guān)系或者CS″是空集。除pi″將被放于聚類編碼為ccj這種情況之外,都要更新CS″;

CS″=CS″∪{pi″·tuple_code}

其中,CS”是松散聚類編碼集合;

當出現(xiàn)一個元組同時滿足多個包含關(guān)系時,它可以放于多個聚類中,使得具有較大相似程度的元組盡可能充分的進行比較,進而將一些被其他元組支配的元組剔除;

(6.2):聚類中的部分元組之間可能不具有支配關(guān)系,這些無法互相支配的元組都會作為skyline查詢結(jié)果返回給用戶,用戶還需要在這些結(jié)果中進行篩選,并且有一部分查詢結(jié)果并不符合用戶需求;

出于對該問題的考慮,本發(fā)明將用戶偏好作為決定支配關(guān)系時的一個重要因素。提出了一種支配程度計算方法減少了skyline查詢結(jié)果集中的冗余數(shù)據(jù)。與傳統(tǒng)skyline查詢過程中元組之間的支配關(guān)系不同,帶有用戶偏好的數(shù)據(jù)據(jù)元組之間的支配關(guān)系由它們之間的支配程度決定。支配程度的定義如下:

任意兩元組之間可以比較的維屬性值之差可視作這一維上兩元組的支配距離。那么同一聚類中任意兩個元組的支配程度可記為可比較維度上支配距離與權(quán)重乘積的和。令wλ+1,wλ+2,...,wd為各維權(quán)值,元組pi的各維非缺失屬性值記為

vij,j∈[λ+1,d],

那么任意兩元組pi對pj的支配程度記為:其中k代表元組之間可以比較的維度,如果domaini,j>0,then pi>pj,如果domaini,j<0,pj>pi,如果domaini,j=0,pi與pj不可相互支配。

根據(jù)上文支配程度的定義,在每個聚類中計算任意兩個元組的支配程度,將一些被支配的元組剔除后,把每個聚類中的元組放入松散skyline查詢結(jié)果集RSRS;

所述步驟(8)中信息熵的計算公式如下:

其中,E(pi)代表元組pi的信息熵,h′代表元組屬性標準化后的值,n代表元組的維數(shù)。

本發(fā)明的有益效果:

1、摒棄了一般缺失數(shù)據(jù)skyline查詢處理中的預(yù)處理階段,提出了一種基于維度重要程度將數(shù)據(jù)分為兩部分分別直接進行skyline查詢的策略,有效解決了海量缺失數(shù)據(jù)執(zhí)行skyline查詢時間耗費巨大的問題。

2、結(jié)合用戶偏好,在重要性高的維度上嚴格聚類,并通過計算具有弱支配關(guān)系元組之間的重量得到更準確符合用戶個性化需求的skyline查詢結(jié)果;在重要性低的維度上松散聚類,并在每個聚類中通過計算元組之間的支配距離決定元組之間的支配關(guān)系,有效解決了缺失元組之間支配關(guān)系難以判斷的問題。

3、提出了一種基于信息熵理論的選擇策略,根據(jù)信息論中的熵的計算公式,信息熵大的缺失元組被信息熵小的缺失元組所支配,合理解決了重要程度高的維度上的skyline查詢結(jié)果與重要程度低的維度上的skyline查詢結(jié)果交集為空的問題。

附圖說明

圖1為基于海量不完備數(shù)據(jù)集的skyline偏好查詢方法執(zhí)行流程圖。

圖2為不完備數(shù)據(jù)集示例。

圖3為維度排序結(jié)果。

圖4為松散聚類結(jié)果示例。

具體實施方式

下面結(jié)合附圖和具體實施方式對本發(fā)明進行詳細說明。

本發(fā)明方法的設(shè)計構(gòu)思如下:根據(jù)用戶偏好按屬性重要程度將不完備數(shù)據(jù)集IS進行投影,對于投影得到的兩個數(shù)據(jù)集IS’和IS”分別進行嚴格聚類和松散聚類,聚類后分別執(zhí)行兩種不同的skyline偏好查詢算法,分別得到基于嚴格聚類的skyline結(jié)果集SSRS和基于松散聚類的skyline結(jié)果集RSRS,最后執(zhí)行一次基于信息熵計算的skyline偏好查詢結(jié)果選擇策略,得到滿足用戶偏好的skyline查詢結(jié)果集。

具體執(zhí)行流程圖如圖1所示,包括如下步驟:

(1)根據(jù)數(shù)據(jù)集中各屬性重要程度將不完備數(shù)據(jù)集IS進行投影,得到重要屬性投影后的數(shù)據(jù)集IS’和不重要屬性投影后的數(shù)據(jù)集IS”;

(2)針對數(shù)據(jù)集IS’和數(shù)據(jù)集IS”分別進行元組編碼;

(3)針對數(shù)據(jù)集IS’進行嚴格聚類,所述的嚴格聚類包括根據(jù)聚類編碼的定義進行嚴格聚類和聚類后每個類中被支配的數(shù)據(jù)元組被剔除兩個流程;

(4)針對數(shù)據(jù)集IS”進行松散聚類;所述的松散聚類包括根據(jù)元組編碼和每個聚類的編碼的包含關(guān)系的定義進行松散聚類和聚類后每個類中被支配的數(shù)據(jù)元組被剔除兩個流程;

(5)將步驟(3)中,嚴格聚類并完成數(shù)據(jù)剔除的數(shù)據(jù)集,執(zhí)行基于屬性值排序的skyline偏好查詢算法,得到基于嚴格聚類的skyline查詢結(jié)果集SSRS;

(6)將步驟(4)中,松散聚類并完成數(shù)據(jù)剔除的數(shù)據(jù)集,執(zhí)行基于支配程度計算的skyline偏好查詢算法,得到基于松散聚類的skyline查詢結(jié)果集RSRS;

(7)將步驟(5)、步驟(6)得到的SSRS與RSRS取交集,如果交集不為空集,那么交集中的元組就是最終的skyline查詢結(jié)果;

(8)如果步驟(7)的交集為空集,分別計算SSRS與RSRS中元組的信息熵,將SSRS和RSRS中的元組進行信息熵的計算后得出最終的skyline查詢結(jié)果反饋給用戶。

本發(fā)明首先提出了一種編碼和聚類策略。該策略基于以下考慮:完備數(shù)據(jù)集上元組之間的支配關(guān)系是傳遞的。例如,元組pi支配pj,pj又支配pk,進而pi支配pk。不完備數(shù)據(jù)集中元組之間的支配關(guān)系不具有傳遞性,這種不具有傳遞性的支配關(guān)系導(dǎo)致了環(huán)支配,環(huán)支配又導(dǎo)致了skyline查詢的結(jié)果集為空。假設(shè),數(shù)據(jù)集中只有三個元組pi,pj,pk,pi=(4,*,2,3),pj=(2,3,*,3),pk=(*,2,4,3),pi在第1和第4維上支配pj,pj在第2和第4維上支配pk,但是pi卻不能在任一維上支配pk,相反pk在第3和第4維上支配pi。這就使得支配關(guān)系形成了一個環(huán),最后沒有哪個元組可以成為skyline點。為了解決不完備數(shù)據(jù)集上支配關(guān)系的不可傳遞性和環(huán)支配問題,本發(fā)明提出了該編碼聚類策略。為了能夠?qū)υM進行聚類,首先為元組進行編碼,定義1給出了不完備數(shù)據(jù)集上元組編碼的形式化描述:

定義1:元組編碼

pi′·tuple_code(pi″·tuple_code)=Mi,Mi=(m1,m,…,mk);若pi′·vk(p″i·vk)=*,Mi·mik=0;若pi′·vk(pi″·vk)≠*,Mi·mik=1,

其中k∈[1,λ]([λ+1,d]).

其中,IS’和IS”分別是IS在前λ維上的投影和后d-λ維上的投影,d是不完備數(shù)據(jù)集IS的維數(shù),pi′和pi″分別是元組pi前λ維上的投影和后d-λ維上的投影,Mi是元組pi的編碼,λ是維度的分割常數(shù),λ∈[1,d]?,F(xiàn)假設(shè)有不完備數(shù)據(jù)集IS,用圖2表示。由7個10維不完備元組構(gòu)成,其中“*”表示某元組在該維度上的缺失值。設(shè)數(shù)據(jù)集已經(jīng)按維度重要程度從大到小進行了排序,因此圖2中的各維重要程度為D1>D2>...>D10。針對維度重要性高的前λ維和維度重要性低的后d-λ維分別賦予相對權(quán)值0.5,0.4,0.3,0.2,0.1。相對權(quán)值越大用戶對于這一維的偏好程度就越大。

每一個聚類都有一個對應(yīng)的聚類編碼,聚類編碼保存在一個集合中。下面是對聚類編碼的定義:

定義2聚類編碼

對于如果存在ccj≠p′i·tuple_code,那么CS′=CS′∪{pi′·tuple_code}

其中,CS’是嚴格聚類編碼集合,ccj是聚類編碼。

本發(fā)明的聚類策略基于以下幾個方面的考慮。首先,元組編碼個數(shù)在[1,2d]之間,隨著維數(shù)的增長,元組編碼個數(shù)會呈指數(shù)倍增長。這將會極大降低skyline查詢的效率,因為執(zhí)行skyline算法的執(zhí)行次數(shù)與聚類個數(shù)成正比。其次,被用戶賦予高重要程度的維度在進行skyline查詢時應(yīng)當比被用戶賦予低重要程度的維度得到更多的考慮,并且為了提升skyline查詢的效率,本發(fā)明將依據(jù)維度重要性將整個不完備數(shù)據(jù)集劃分成兩部分,分別進行兩種不同的skyline偏好查詢方法。

下面是對元組編碼與聚類編碼之間包含關(guān)系的定義:

定義3包含關(guān)系

令d1=λ,pi″·tuplecode=Mi″,Mi″=(mik,mik+1,…,mid),如果并且i≠j,ccj=(cjk,cjk+1,…,cjd),對于mik≤cjk,pi″被放在聚類編碼為ccj的對應(yīng)類中,pi″與ccj之間的包含關(guān)系用pi″→ccj表示;如果對于mik>cjk,那么ccj→pi″并且這個聚類的編碼將被更新為pi″·tuple_code,ccj將被移出CS″;如果pi″·tuple_code與ccj之間沒有包含關(guān)系或者CS″是空集。除pi″將被放于聚類編碼為ccj這種情況之外,都要更新CS″;

CS″=CS″∪{pi″·tuple_code}

其中,CS”是松散聚類編碼集合;

當出現(xiàn)一個元組同時滿足多個包含關(guān)系時,它可以放于多個聚類中,使得具有較大相似程度的元組盡可能充分的進行比較,進而將一些被其他元組支配的元組剔除。

對于數(shù)據(jù)集合中的任意一個元組pi,對pi′執(zhí)行嚴格聚類規(guī)則,對pi″執(zhí)行松散聚類規(guī)則。下面利用圖2舉例說明嚴格聚類和松散聚類的過程:p1′=(3,3,*,2,5),

p1′·tuple_code=(1,1,0,1,1),p3′=(2,1,*,4,8),p3·tuple_code=(1,1,0,1,1),

根據(jù)嚴格聚類規(guī)則,p1′和p3′加入到同一個聚類中,聚類編碼記為cc0=(1,1,0,1,1),當前CS={cc0}。

p4′=(10,4,2,*,5),p4′·tuple_code=(1,1,1,0,1),p7′=(4,2,6,*,*),p7′·tuple_code=(1,1,1,0,0),p4′·tuple_code≠p7′·tuple_code

p4′和p7′需要分開聚類,聚類編碼分別記為cc1=(1,1,1,0,1)和cc2=(1,1,1,0,0),CS′=CS′∪{cc1,cc2}.對于松散聚類過程,設(shè)有三個元組p1″、p5″和p6″,p1″=(2,*,1,2,5),p1″·tuple_code=(1,0,1,1,1),p5″=(9,*,3,3,2),p5″.

tuple_code=(1,0,1,1,1),且

而,p6″=(*,*,1,*,5),p6″·tuple_code=(0,0,1,0,1),因此,p1″、p5″和p6″都聚于類編碼為10111的類中。

本發(fā)明所述的skyline偏好查詢方法有兩種,一種是針對屬性重要程度較高的數(shù)據(jù)集投影執(zhí)行基于嚴格聚類的skyline偏好查詢方法,另一種是針對屬性重要程度較低的數(shù)據(jù)集投影執(zhí)行基于松散聚類的skyline偏好查詢方法。

其一,基于嚴格聚類的skyline偏好查詢方法分為兩步執(zhí)行,首先是對IS’執(zhí)行嚴格聚類,然后是對經(jīng)過嚴格聚類后沒被剔除的元組執(zhí)行基于屬性值排序的skyline偏好查詢算法(以下簡稱為SAVO算法)。上文中已經(jīng)詳細闡述了嚴格聚類的執(zhí)行流程,現(xiàn)在將SAVO算法的具體執(zhí)行流程闡述如下:

(1):對數(shù)據(jù)集IS’中的各維度按照元組屬性值非降序排序,使得更有可能支配其他元組的元組優(yōu)先被處理;每維經(jīng)過排序后都會生成一個數(shù)組Di,i∈[1,λ],對于每個數(shù)組Di都有Di[j]>=Di[j+1],j∈[1,|IS′|),其中|IS′|代表IS’中的元組個數(shù);對于在第i維上存在缺失屬性值的元組是不會加入數(shù)組Di中的,為了節(jié)省存儲空間,數(shù)組Di中存儲的只是元組id,而不是真正的元組;設(shè)立一個指向數(shù)組Di的指針ptri,經(jīng)過嚴格聚類后沒有被支配的元組都納入候選集Candidate_Set;隨機選擇一個數(shù)組Di,處理數(shù)組Di中指針ptri指向的元組;每個在候選集中的元組都會維護兩個值,一個是元組被處理的次數(shù),記為processedCount,一個是元組編碼中1的個數(shù)即非缺失屬性維數(shù),記為dimCount;

(2):對于當前被選中的元組p,有以下幾種情況:

①,如果元組p′沒有被處理過且元組p′還在候選集Candidate_Set中,就將它與除自己以外沒有跟它比較過的元組pj′進行比較,即使pj′已經(jīng)被之前處理過的元組所支配;若候選集中存在元組支配p′,元組p′就被移出候選集;

②:如果元組p′沒有被處理過但是被之前處理過的元組支配,即已不在候選集Candidate_Set中,p′就只與還在候選集Candidate_Set中并且沒有與p′比較過的元組比較;在以上兩種情況下,候選集中被元組p′支配的元組會被移出候選集;

③:如果元組p′已經(jīng)被處理過了就不進行任何比較;

④:p′j∈IS′,其中i≠j,p′i和p′j可比較的維度少于個,在這些可比較的維度上,若p′i在至少一維上的值比p′j“好”,剩余維度上的值不比p′j“差”就認為p′i弱支配p′j,記為pi′>*pj

如果兩個元組pi′與pj′之間具有弱支配關(guān)系,還需要比較這兩個元組的重量;若滿足pi′的重量大于pj′的重量,才認為pi′支配pj′;綜合考慮非缺失屬性值及其被用戶所賦予的權(quán)重,元組重量計算公式(1),如下所示:

(3):當候選集中的元組p的比較次數(shù)達到了其非缺失屬性維數(shù)dimCount,就將這個元組從候選集移到嚴格skyline結(jié)果集SSRS中;

(4):當候選集為空或者所有元組都被處理過至少一次時,把候選集Candidate_Set中的其余元組都放入嚴格聚類skyline結(jié)果集SSRS中,此時基于屬性值排序的skyline偏好查詢過程結(jié)束。

為了清楚詳細闡述SAVO算法的執(zhí)行流程,我們以一個數(shù)據(jù)集示例進行展示。首先,本發(fā)明以圖2中的數(shù)據(jù)舉例說明元組重量的計算方法,

對于p2′=(*,*,3,5,*),p4′=(10,4,2,*,5),p2與p4′只有第三維是可以比較的,且p2′·v3>p4′·v3,具有弱支配關(guān)系,還需計算

p2′·weight=3*0.3+5*0.2=1.9,p4′·weight=10*0.5+4*0.4+2*03+5*0.1=7.7,

由于1.9<7.7,p2′不可以支配p4′。

然后,利用圖2不完備數(shù)據(jù)集示例詳細描述基于屬性值排序的skyline偏好查詢算法。IS’按各維排序后的結(jié)果如圖3所示?,F(xiàn)在,ptr1指針指向數(shù)組D1的一個元組p4,p4是被處理的第一個元組且在候選集Candidate_Set中,p4與除自己之外的p1-p3,p5-p7比較。p4>p1,p2弱支配p4,經(jīng)計算,p2·weight<p4·weight,p2是不可以支配p4的。p4與p3之間沒有支配關(guān)系,p4支配p5,p4與p6和p7沒有支配關(guān)系。p4.processedCount=1,p1和p5從候選集Candidate_Set中移出。然后ptr2指針指向數(shù)組D2的第一個元組p4,由于p4已經(jīng)被處理過,不用跟任何元組比較了,p4.processedCount=2。接著被處理的是數(shù)組D3中的元組p7,p7與p1-p3,p5,p6比較,p1與從候選集中移出的p1和p5比較沒有被這兩個元組所支配;p7與候選中的元組比較時,p7弱支配p2,并且p7·weight>p2·weight,所以p7支配p2,同時p7支配p2,p3,p6,p2,p3,p6從候選集Candidate_Set中被移出。當?shù)M行到第4次時,處理元組p6,p6首先跟被移出候選集中的元組比較,發(fā)現(xiàn)p6沒有被這些元組所支配;由于p6還在在候選集中,此時候選集中的元組是p4與p7,都已經(jīng)與p6比較過了,p6.processedCount=1。直到第12次迭代,p7.processedCount=p7.dimCount,p7從候選集Candidate_Set中移到嚴格skyline查詢結(jié)果集SSRS中。到第20次迭代,p4也從候選集中移到SSRS中。所以,經(jīng)過嚴格聚類和基于屬性值排序的skyline偏好查詢算法,我們得到了p4和p7兩個候選skyline點。

其二,基于松散聚類的skyline偏好查詢方法分為兩步執(zhí)行,首先是對IS”執(zhí)行松散聚類,然后是對經(jīng)過松散聚類后沒被剔除的元組執(zhí)行基于支配程度計算的skyline偏好查詢算法。

根據(jù)上文所述的松散聚類規(guī)則及包含關(guān)系的定義,我們得到了松散聚類的結(jié)果,即若干個包含不被支配元組的聚類。但是聚類中的元組之間可能不具有支配關(guān)系,這些無法互相支配的元組都會作為skyline查詢結(jié)果返回給用戶,用戶還需要在這些結(jié)果中進行篩選,并且有一部分查詢結(jié)果并不符合用戶需求。因此,本發(fā)明提出了一種通過計算元組之間的支配程度來決定元組之間的支配關(guān)系的方法。綜合以上幾點的考慮,支配程度的定義如下所示:

定義4支配程度

任意兩元組之間可以比較的維屬性值之差可視作這一維上兩元組的支配距離;那么同一聚類中任意兩個元組的支配程度可記為可比較維度上支配距離與權(quán)重乘積的和;令wλ+1,wλ+2,...,wd為各維權(quán)值,元組pi的各維非缺失屬性值記為vij,j∈[λ+1,d],那么任意兩元組pi對pj的支配程度記為:其中k代表元組之間可以比較的維度,如果domaini,j>0,then pi>pj,如果domaini,j<0,pj>pi,如果domaini,j=0,pi與pj不可相互支配;

在每個聚類中計算任意兩個元組的支配程度,將一些被支配的元組剔除后,把每個聚類中的元組放入松散skyline查詢結(jié)果集RSRS中。

經(jīng)過前文所述的兩種skyline偏好查詢方法,我們分別得到了嚴格聚類結(jié)果集SSRS和松散聚類結(jié)果集RSRS,對SSRS與RSRS取交集,如果交集不為空集,那么交集中的元組就是最終的skyline查詢結(jié)果;如果交集為空集,分別計算SSRS和RSRS中元組的信息熵。根據(jù)信息熵的概念,變量的不確定性越大,熵也就越大,把它搞清楚所需要的信息量也就越大。一個系統(tǒng)越是有序,信息熵就越低;反之,一個系統(tǒng)越是混亂,信息熵就越高。所以,信息熵也可以說是系統(tǒng)有序化程度的一個度量。一個元組也可以看作是具有若干影響因素的系統(tǒng),元組的屬性就是系統(tǒng)的影響因素。某個缺失屬性代表著這個影響因素的不確定性,缺失屬性越多影響因素就越不確定,使得這個元組更加混亂和無序,元組的信息熵就越大。因此,信息熵大的元組被信息熵小的元組所支配。下面給出信息熵的計算公式:

其中,E(pi)代表元組pi的信息熵,h′代表元組屬性標準化后的值,n代表元組的維數(shù)。將SSRS和RSRS中的元組進行信息熵的計算后得出最終的skyline查詢結(jié)果反饋給用戶。

下面還是以圖2中的數(shù)據(jù)為例,結(jié)合聚類編碼、包含關(guān)系以及聚類規(guī)則,對基于松散聚類的skyline偏好查詢方法進行展示。圖2中元組的松散聚類結(jié)果如圖4所示。

在cluster 10111中計算:

domain1,5=0.5*(2-9)+0.3*(1-3)+0.2*(2-3)+0.1*(5-2)=-4<0,所以p5>p1;domain5,6=0.3*(3-1)+0.1*(2-5)=0.3>0,所以p5>p6;

在cluster 11101中計算:

domain2,3=0.5*(3-5)+0.4*(2-5)+0.3*(1-4)+0.1*(2-9)=-3.8<0,p3>p2;同理,計算出domain2,6<0,p6>p2;domain3,6>0,p3>p6;

cluster 11011和cluster 11110中分別得到p4和p7。

由此,RSRS={p5,p3,p4,p7},SSRS={p4,p7},最終的skyline查詢結(jié)果為p4和p7。

當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1