• 沒有找到結果。

第三章 ,方法

3.4 結合半監督式分群演算法

將使用者提供的配對限制(paiewise constraints)整合至分群演算法中,這種方 式稱為半監督式分群演算法。我們將經由相似度轉換方法產生的新屬性與屬於 search-based 的半監督式分群法結合,進一步提升分群的準確性,同時利用配對 限制彌補相似度轉換法所採用的假設其可能遺漏的部分資訊。Cop K-means[8]是 search-based 半監督式分群法的代表之一,它是改良自 K-means 演算法,在尋找 分群的過程中,資料被分類至任一分群時皆不可違背配對限制,進而影響分群的 過程與結果。然而,這樣的做法完全依賴配對限制,若是使用者提供的配對限制 之中存在少許錯誤,將會引導分群演算法至錯誤的結果。參考 2002 年由 Kleinberg 和 Tardos[25] 提出的代價函式,由於 Kleinberg 和 Tardos 提出的方法僅考慮 MUST-link 類型,我們進一步加入 CANNOT-link,延伸設計一組基於參考分群 中心的代價函式,將其與目標函式合併,使得在最佳化目標函式的過程中,同時 能最小化違反配對限制的資料數量,並判斷使用者所提供的配對限制是否合適。

我們首先定義下方用來描述代價函式的名詞與其表示方法。1. 令ℳ表示 MUST-link 所形成的集合,𝒞表示 CANNOT-link 所形成的集合;2. 存在任意兩 點 r、s,連接此二點的鏈結以link(r, s)表示;3. 令 CSET 表示中心所形成的集合;

4. L(r)、L(s)分別表示所屬的分群;5. Cr、Cs分別表示點 r 與點 s 所在分群對應 的中心。

考慮成對資料與配對限制的關係,基於參考分群中心的代價函式必須考慮下 列兩種情況,分別是:違反 MUST-link 和違反 CANNOT-link。

 定義違反 MUST-link 的代價函式:

Cost = 1

2[dist(r, Cs) + dist(s, Cr)], if link(r, s) ∈ ℳ ∧ L(r) ≠ L(s)

考慮違反 MUST-link 的情形,亦即任兩筆資料彼此關係屬於 MUST-link 卻被分 類至不同的分群中。若是要滿足正確的配對限制,最直接的方法是改變其中一筆

29

資料所屬分群,強迫將兩筆資料歸類至相同分群。因此,違反配對限制所需的代 價被設定為:鏈結上的任一點 r,與另一點 s 所屬的中心 Cs,此兩點的距離關係 dist(r,Cs)。代價函式等同於計算符合正確配對限制的目標函數值。我們將同時考 慮鏈結上的兩點,最後取兩者的平均值。

 定義違反 CANNOT-link 的代價函式:

Cost𝒞 = 1

2 �∀x∈CSET,x≠Cmin rdist(r, x) +∀x∈CSET,x≠Cmin sdist(s, x)�, if link(r, s) ∈ 𝒞 ∧ L(r) = L(s)

考慮違反 CANNOT-link 的情形,亦即任兩筆資料彼此關係是屬於 CANNOT-link 卻被分類至相同的分群中。與違反 MUST-link 的情況相同,代價函式的目的在 於計算符合正確配對限制的目標函數值。若是要滿足正確的配對限制關係,最直 接的方法是將鏈結上的其中一點移動至剩餘分群中最接近的一群,強迫將兩筆資 料歸類至不同分群。因此,違反配對限制所需的代價將被設定為:鏈結上的任一 點 r,考慮扣除 Cr後從 CSET 中剩餘的質心 Cx,挑選出兩點距離關係 dist(r,Cx) 最小者。相同的,我們仍需考慮鏈結上的兩點,最後取兩者的平均值。

完成違反 MUST-link 和違反 CANNOT-link 之代價函式的定義,我們將代價 函式合併至原始的目標函數中:

Obj′ = �(r − Cr)2

r∈V

+ � Cost

link(r,s)∈ℳ

+ � Cost𝒞

link(r,s)∈𝒞

我們將此方法命名為:freq K-medoids with cost function,如圖 3-6。雖然在 3.3 節中將 K-medoids 方法稍做修改為 freq K-medoids,不再以尋找最佳化目標函數 的結果做為最佳解,改用最頻繁出現的結果當作最佳解,但在資料分類的過程中,

採用合併代價函數後的目標函數,依然可依據配對限制提供的資訊將資料分類至 更為正確的分群,最小化違反配對限制的數量。

30

Algorithm: freq K-medoids with cost function

Input:Data, ℳ← MUST-link constraints, 𝒞← CANNOT-link constraints Method:

1. Let C1, C2… Ck be the initial cluster center.

2. repeat until convergence

2a. Assign data point to cluster h so that objective function value is minimized.

2b. 𝐡 = arg min�∑ (r − Cr∈V r)2+ ∑link(r,s)∈ℳCost+ ∑link(r,s)∈𝒞Cost𝒞2c. For each cluster h, update its medoids.

2. until medoids remain unchenged

圖 3-6. freq K-medoids with cost function 方法

31