• 沒有找到結果。

3.1.1. 問題定義

給定一個不平衡資料 D,以及 supervised classifier C1, C2……CN,為每個分類器 分別訓練門檻,以解決先前方案的兩個問題:難以調整彼此相關的參數,以及無 法利用各分類器改進彼此。

3.1.2. 先前的解決方案

在 ensemble-driven self-training of multiple classifiers [3]中,作者使用一個 multiple classifier system(MCS)讓它 self-training k 個迴圈。在自我訓練的每個迴圈中,從未 標記資料裡隨機取出一個子集合 U’,用 MCS 分類 U’,然後根據已標記資料中各 類別的比例來標記這子集合的虛擬類別。將標記了虛擬類別的未標記資料加入已 標記資料後,再從子集合以外的未標記資料隨機選取跟虛擬標記資料等量的資料

12 示 positive:negative = 1:164,與類別比例成正比的 nj 從 1 到 1/164*|U’|都有可能;

而迴圈數 k 則是從 1 開始的自然數。|U’|從 94730 到 1,對應到 nj 的範圍是 1~|U’|/165,再乘上 k 就得到下式。參數的空間是

94730/165*k+94729/165*k+94728/165*k+……+1/165*k = k/165*sum(1~94730) = k/165*94730*94729/2。

此外這個方法是對整個 MCS 做自我訓練,也導致無法使各個分類器改進彼此。

舉例在 KDD cup 08 中,adaboost 表示某點高度可能患病,然而 linear SVM 和 RBF SVM 不這麼認為,在處理不平衡資料時通常使用的評估是 AUC,經過 MCS 合併 排名後,它可能因為兩個分類器不表贊同而落居人後,但這不表示它不該被當作 患病部位而被加入訓練資料中,尤其是以 KDD cup 08 中 supervised learning 即可以 有好表現時。

除了需要調整的參數太多以及無法使各個分類器改進彼此的問題,在類別不平 衡時,一個類別佔了大部分而另一個類別的資料很少,量少的類別比較能影響分 類的結果,但是測試時選出的子集合中包含的 class 比例其實是不穩定的,這導致

13

結果不太理想。在我們的實驗中,當子集合等於整個未標記資料時,表現會比較 好。

3.1.3. 提出的解決方案

針對參數搜尋空間過大的問題。我們提出為分類器選擇一個預測信心值門檻,

用來區別它分類的資料是否應該加入訓練資料,當沒有資料在此門檻之上時,就 輸出現有的模型來分類所有的未標記資料。這同時整合了之前需要調整自我訓練 停止條件的 k,以及每個迴圈需要加入多少資料的 nj,至於|U’|之前已經提過由於 不平衡的資料,設為所有未標記資料的大小比較適當。以上的三個參數合成了一 個預測信心值門檻。

而 MCS 中的分類器無法增益彼此的問題。我們合併前一個問題的解決方法為 MCS 中的每個分類器調整預測信心值門檻,並將它們選出的高信心的資料以聯集 方式加入訓練資料。使用聯集方式來合併比投票或是交集合理,因為聯集同時可 以得到各分類器的長處。由於這些長處已在已標記資料中用 cross-validation 來驗證 是否對 MCS 的效能有增益,可以相信聯集所有分類器的意見是最好的。如 figure 3.

就是整體的過程。

14

Figure 3 overall flowchart

合理地決定預測信心值門檻是必要的,因為它們是增進效能的關鍵。基本的想 法是透過 cross-validation 觀察各個預測信心值門檻在已標記資料上的效能之後,選 出表現好的應用在未標記資料上。實際的作法是利用 greedy 演算法分別訓練 CTH1

至 CTHn。如 figure 2.訓練 CTH1時,先在 CTH1可能出現的範圍取樣一些值當作候選 人,這範圍可由 cross-validation 得到。然後對每個候選人都做 cross-validation 如 figure 2.來測試它對 MCS 是否有幫助,比較各候選人的表現後,擇優選取用在 semi-supervised training 的階段。

15

Figure 4 an example of threshold determination, training CTH1

16

Figure 4.中詳細的演算法如以上的 Training confidence threshold CTHn algorithm,

對 cross-validation 中的一個測試來說,有一個 fold 用來 validation,其他 fold 用來 訓練, Cn使用 CTHn為高信心的資料加上虛擬標記加入訓練資料 L,直到 U 中沒 有資料的預測信心值高於 CTHn為止。這時再使用已用虛擬標記資料和 L 訓練好的 MCS 來得到這個 fold 的表現。

Training confidence threshold CTHn algorithm Given:

Training folds L Validation fold U

Supervised classifier C1, C2, …...Cn

Confidence threshold for training CTHn

Loop

Train C1, C2, …… Cn with L.

Classify U with C1, C2, …...Cn to get confidence cf1, cf2,……cfn. Take highly confident unlabeled data Hn from cfn according to CTHn

Move Hn from U to L.

Until Hn is null

Use C1,C2……Cn to get result.

17

Figure 5 semi-supervised training stage

使用 cross-validation 決定好各分類器的預測信心值門檻後,將它們使用在 semi-supervised training stage,以得到自我訓練的模型,如 figure 5。詳細的過程請 見 Threshold-based self-training algorithm。

18

較 ensemble-driven self-training of multiple classifiers 細膩的地方在於,標記虛擬 標記的準則變成為每個分類器量身設計,並且經過 cross-validation 的驗證。每個迴 圈都把各分類器經預測信心門檻的高信心資料放入已標記資料中,直到沒有資料 可放為止,停止時的 C1,C2……Cn就是組成最後 MCS 的分類器。在 testing data labeling 使用此 MCS 就可以得到自我訓練的結果。

相關文件