• 沒有找到結果。

對相似資料進行分群之研究技術

第二章 文獻探討

2.2 對相似資料進行分群之研究技術

論文[1]及[14]中對資料進行預先分群,將資料依據不同的特性分群,再 依各種分群特性設計適合的相似度判斷條件,快速找出相似的候選集。

資料分群可以找出把相似的資料分在同群,第一階段分群是根據群與群 間比較顯著的差異,第二階段再依據分群結果,根據門檻值分析群與群之間 的相似度達成的條件,判斷群與群相似度的可能性。若是兩群中的文件相似 度不可能大於門檻值,則可以省略兩群中彼此配對的計算量。藉由減少需要 判斷資料配對的數量,節省計算成本。

將資料分群後,相似配對可能由同一群中的資料配對而成(intra-group

similar pairs),也可能由不同群間資料形成跨群資料配對(inter-group similar pairs),將資料預先分群可以先估算出群與群間的相似度上限值,對於不可能 產生跨群相似配對的群配對,不需產生跨群資料配對作為候選配對。在計算 出可能產生相似配對的群配對後,只針對群配對內的資料計算候選配對的組 合,可以有效減少所產生的候選配對數量。

需考慮的原則包括:

資料分群需考慮以下三點原則:

(1) 相似資料有較高的機會被分配在同一群

同一群中的資料有較高的機會產生相似配對,換言之要減少由不同群所 產生的跨群相似配對。由於以往研究提出的分群方法在跨群相似配對的篩除 效果不佳,因此本論文設計分群方法的概念是要讓相似配對盡量出現在同群 內的資料配對避免產生大量跨群的候選配對,進而有效減少候選配對相似度 計算時間。

(2) 可以群為單位有效估算相似度

對資料進行分群,可先以群的代表特徵對群與群間資料配對的相似度上 限值進行估測,找出可能產生相似配對的群配對,再考慮兩群間的資料組合 所形成的跨群配對組合,列出候選配對。此外利用預先分群的方式可以避免

因資料量過大造成資料配對過多而造成計算成本大量增加,利用預先分群的 方式可以將一群的資料利用代表值表示,只須計算兩群資料代表值所估算的 相似度上限,即可快速篩除不相似的群配對,避免因大量資料配對造成時間 成本增加的問題。

(3) 分群適用於平行架構

在分散式處理架構中,若處理器間彼此有頻繁的資料交換,會導致處理 器在工作執行期間必須等待其他處理器的輸出結果後才能繼續執行,造成不 必要的時間浪費,因此為了降低整體處理的回覆時間,必須平衡各處理器的 計算量。採用資料分群有以下幾點優點:可以利用分群策略使各處理器計算量 盡量平衡,可以將分群後的群視為獨立的資料產生群內的候選配對,不需進 行群之間的資料交換,因此可分配給不同處理器平行處,再針對計算跨群資 料產生的相似配對時,利用先找出群配對的方式,將可能產生相似配對的群 配對資料交由不同處理器進行候選項計算,讓工作能附載更加平衡。

在分群步驟中,論文[1]使用 1-norm 長度進行分群的方法,一筆資料 d 的 1-norm 長度計算方式為||di||1 = ∑𝑚𝑗=0𝑑i[j]。表 6 顯示一個包含 6 筆資料 的資料集,以及每筆資料的 1-norm 長度。該論文先將資料集中的資料依照 1-norm 長度依升冪順序排序,再依序將資料平分至 k 群中,表 6 中資料範例

的分群結果如圖 3 所示。 接著將各群中最大的 1-norm 長度當成該群的代表 值,群 g1的代表值為 1,群 g2的代表值為 1.41,群 g3的代表值為 2。兩筆資 料的相似度估算上限可採用公式 2;公式 2 中 maxw 為該筆資料中最大的特 徵值,以 maxw 代替所有維度與 1-norm 的乘積的相似度上限估測值會大於實 際相似度值,可以快速篩除不相似配對。對一個分群 gi,Leader(gi)為該群最 大的 1-norm 長度,因此任一筆資料 dj與群 gi中任一筆資料的相似度估算上 限如公式 3 所示。該方法的第二步驟是列舉候選配對處理,其估計一筆資料 與一群中的資料是否可能產生相似配對為基準,以表 6 為例,該方法會計算

g2 中有哪些資料與 Leader(g1)算出的相似度估算上限值大於門檻值,若是相 似度估算上限大於門檻值,則該向量與 g1所有向量組合成候選配對,若是相 似度估算上限小於門檻值,則可確定該向量與 g1中任何資料的配對都不為相

似配對,因此不須產生候選配對。

公式 2: Sim(di

,d

j

) ≤ min(maxw(d

i

)*||d

j

||

1

, maxw(d

j

)*||d

i

||

1

)

公式 3: Sim(Gi

,d

j

) ≤ maxw(d

j

)*Leader(g

i

)

以表 6 資料為例,g2中有 d3、d4兩筆資料,利用公式 2 計算出 d3與 g1

的相似度上限為 0.9*1=0.9,d4與 g1的相似度上限為 0.76*1=0.76。當相似度 門檻值設定為 0.8,則表示 d3與 g1中的資料可能產生相似配對,而 d4與 g1 的任何資料配對相似度不可能大於相似度門檻值,因此將 g2中的資料進一步 分為不可能和 g1產生相似配對的 g21子群與可能與 g1產生相似配對的 g22子 群。採用相同的概念再將 g3的資料分為三個部份:不可能和 g21及 g22產生相

d

1

論文[1]作法在分群數過多或過少的情況下會有較差的效果。在分群數多

將尚未分群的資料點採以最近中心點的挑選策略,每群中離中心點最遠的資 料與中心距離則為此群的半徑 R,可以利用固定半徑將半徑以內的資料視為 相似,將與中心點距離大於半徑且小於半徑加 t 的資料視為候選項,此處的 R+t 則為距離估算的上界。

區域性雜湊法[9]是最近 k 個相鄰點(k Nearest Neighbor)搜尋方法的一種,

原理為選取資料集中相近的資料,利用雜湊函式的特性,相似的資料在經過 雜湊函式映射後,還能維持其相似特性,藉此找出候選配對。區域性雜湊法 先提供一連串的雜湊函數(Hash Function),找出區域敏感(Locality-sensitive) 的雜湊函數。假設 d(x, y)表示資料 x 與資料 y 的距離,且 h(x)與 h(y)表示資 料 x 與資料 y 在通過雜湊函數的轉換後所得的結果,利用相似的資料經由區 域性雜湊涵式映射後還是會維持其相似的特性,雜湊函數滿足下述兩條件則 稱 為 ( d 1 , d 2 , p 1 , p 2 ) - s e n s i t i v e , 其 條 件 如 下 。

1) d(x, y) <= d1 則 h(x) = h(y)的機率至少為 p1 2) d(x, y) >= d2 則 h(x) = h(y)的機率最多為 p2

原始資料通過一個或多個(d1,d2,p1,p2)-sensitive 的雜湊後產生雜湊表就稱為 區域性雜湊法。

論文[9]提出 LSH(Locality-sensitive hashing)的架構,對於在多個區域性 雜湊涵式映射後至少被分配到同一區域一次的資料配對進行相似度計算,減 少所計算的候選配對數量。區域性雜湊法為一種機率式模型,對於雜湊函數 的數量必須有所取捨,過多的雜湊函數會導致許多不相似的配對可能被分同 一區域而使篩選的效果不佳,而過少的雜湊函數則可能會遺漏有可能的相似

配對,在正確率與完整性方面必須有所取捨。論文[3]研究中,針對了區域性 雜湊(LSH)、字首篩選方法(prefix-filtering)以及反向串列索引(Inverted list index)進行實驗,實驗結果顯示區域性雜湊的執行效率會相當於反向串列索 引,並優於字首篩選方法。論文[13]使用貝氏機率估算,對資料進行多次雜 湊後,可以推算出資料配對相似度大於門檻值的機率,快速篩除不相似配對,

作者針對不同相似度門檻值計算所需的雜湊函式數量,利用雜湊函式數量確 保完整性及正確性。

相關文件