第二章 文獻探討
2.5. 過濾法則(Filtering Rules)
2.5.5. KNN 法(k-Nearest-Neighbor )
2.5.4. 決策樹(Decision Tree)
包括分類回歸樹(Classification and Regression Tree, CART)與卡方自動互動偵測 (Chi-Squared Automatic Detection, CHAID)等技術產生的模型[6],優點是可以轉換 為人容易解讀的IF-THEN 法則,且分類速度較快[1]。決策樹架構的建立是以一個 根節點(root node)開始搜尋其葉節點,所謂葉節點是依照屬性分類。若節點(node) 內所有資料皆屬於同一類,則這個節點就屬於葉結點(leaf node)。每一個內部節點 代表一個屬性,屬性為該節點上的測試屬性,所有分支代表測試屬性所有的可能 值,推演出整個決策樹。當結點裡所有訓練資料大都為同一類別無法再分割時,便 停止分割[3]。
2.5.5. KNN 法(k-Nearest-Neighbor )
KNN 指的是根據前 K 位相似度最接近的鄰點,將訓練資料作比對其相似度,判別
料,當有一筆測試文件需要分類時,則挑選出最接近的k 位之訓練資料,依據這 k 位的所有訓練資料之文件類別和測試文件之相似程度來決定測試文件所屬之文件 類別[1][3]。
KNN 法的過程公式如下:
( , ) ( , ) ( , )
j
i j j i i
d KNN
y x c sim x d y d c b
∈
=
∑
−其中y d c( , )j i ∈
{ }
0,1 用以表示文件dj是否屬於c 類別中的種類(若 y=1,則是;若i y=0,則否),而sim x d( , )j 表示測試文件x 與dj訓練資料之間的相似程度。b 表示文件i類別c 的門檻值。KNN 是基於個例的分類器(instance based classifier ),若訓練資料少i 時,仍然有可接受之準確度[3]。
圖 4. KNN 示意圖(k=1;k=3)
2.5.6. 類神經網路(Neural Network,NN)
類神經網路是一種計算系統,由許多高連結的結點(或處理單元)所組成[3][7]。類神 經網路須要建立一組訓練資料,透過反覆的機器學習後,將這些訓練資料編碼於網 路結構中。在訓練的過程中這些法則最初是由一組初始加權(Initial Weights)值來決 定,並在學習過程中調整其加權以增進效率,經由不斷的調整和學習,使得真正的 網路輸出與目標值能達到相同值後,才固定網路中的加權值,此時才算訓練完成。
在過濾信件中,我們可以透過類神經網路建構訓練資料,決定加權值,透過訓練資
料的反覆機器學習,調整其加權值,得到真正的過濾訓練資料,以求得到高效率的 過濾效果。
2.5.7. 灰名單過濾法(Greylisting)
Puniškis 提出一個結合類神經網路(ANN)和灰名單 (Greylisting, GL)的過濾技術 [12]。灰名單在第一次傳送時,系統會因為對於該信件陌生而拒絕接收,再將該資 料傳遞回到傳送端,希望傳遞端作確認的動作,因為若是 Spammer 發送的訊息,
不會作再次確認的動作,所以,再次確認的動作可以確保再次傳送的訊息是正常信 件。系統會儲存該資料的特質,在第二次傳送時,因為是作確定的訊息,所以會因 此接受。灰名單的暫時拒收非常有效,但是仍然會有幾個缺點:Spammers 可以輕 易的適應並利用重送訊息或是用同一個特徵利用不同的訊息傳送來規避慣性灰名 單。此法利用雙重的過濾技術,首先將兩兩獨立的分類方式,以各自不同的分類模 式為分析基礎,將信件透過多個過濾器做出分類成:正常郵件、垃圾郵件和無法判 定的郵件。再將無法判定的郵件透過Conventional Greylisting (CGL)的演算過程,
再做一次判定作歸類。灰名單的技術,主要是利用再次確認以求更準確得判定郵件 的屬性。對於灰名單的過濾方式,[12]提出利用使用者的選擇模式作為系統更新的 基礎,不斷的利用反饋方式,以求系統是符合使用者的慣用模式,這種力求個人化 的反饋方式,更能精準的針對個人過濾出適當的郵件屬性,因為使用者是最後的決 定信件屬性的人,所以這是辨識 E-mail 更可信的方法。相同的也提出了利用請傳 送端再次確認的方式,利用再次確認的動作可以抑制 Spammer 的攻擊。當陌生信 件進入時,系統會發出質疑的訊息請求回覆,直到陌生信件給予正確答覆,否則判 為垃圾郵件。這個技術有些限制,特別是當Spammers 寄送偽造的地址或是擷取正 常信件的網址時,還會額外要求附加的軟體和超過時間來確認信件的正確性。利用 這種灰名單過濾的分析方式,首先將 E-mail 先透過第一個分類器(C1)做出判定,
不論 C1 判定為垃圾郵件(spam)或是正常郵件(Ham)都得將 E-mail 再放進第二個分
將所有的判定結果作歸類,若所有的分類器(C1,C2,…,Cn)都判定 E-mail 為正常郵 件,則將該 E-mail 放到 mailbox 中;同樣的,若所有分類器都判定 E-mail 為垃圾 郵件,則將該 E-mail 放到 discard。除了這兩種情況以外,若有任何一個分類器判 定E-mail 為 Spam,即使有其他的分類器判定為 Ham,都必須將該 Email 放到灰名 單 (Greylisting)中。所有的信件將會被分成 2n種類,其中greylisting 有 2n-2 種。在 greylisting 中的所有 E-mail 必須再經過一次傳回確認的檢驗,確定是否為垃圾郵件。
第三章 研究方法
因為過濾方式各有其優缺點,雖然很多的反垃圾郵件軟體都宣稱其過濾效果高達 9 成以上,但是讓使用者找到適合使用的過濾方式才是最重要的,因人而異的過濾方 式是本研究的主要目的。本研究提出一個利用統計檢定模式分析使用者在不同的使用 模式下的有效過濾方式,再判斷該信件對使用者的重要性。繁瑣或是不適用的過濾方 式對每個使用者並不是效果都會相同,將因人而異的可能參數也考慮進來,相信比宣 稱過濾效果強的過濾軟體來的實用。
3.1. 研究架構
本研究主要是以統計檢定方式,在法則集合(Rule sets)中以統計檢定先找出適用郵 件的法則,求出各法則中將正常郵件判斷成垃圾郵件與垃圾郵件判斷成正常郵件的 值,比較後用以精簡法則和擴充法則;法則在精簡過後,將適用的法則留待候選;將 完全不適用的法則淘汰。在精簡過後,剩下的法則透過法則分配器的篩選,求得柏拉 圖最佳化的曲面。曲面上有現存適用的法則,還有因此擴充得到虛擬的適用法則。我 們可以將擴充後的所有法則,將最適用的法則作優先選用的排序,這動作非常重要,
因為越適用的法則排在前面,越能夠增加其過濾的效能,也降低了誤判郵件的機率。
更進一步將確定採用的法則,對照比較其過濾結果,若法則判斷結果互有衝突,
我們再將有衝突的法則分析其從屬關係,從中利用降低的型一錯誤(正常郵件判斷成垃 圾郵件)和提高的型二錯誤(垃圾郵件判斷成正常郵件),加強其判定結果。過濾後,使 用者可以就其使用情況的反應,利用回饋機制反饋到系統中作以後採用法則及排序的 參考值。
如圖5 顯示研究方法的整體架構,顯示一個完整的垃圾郵件系統過濾所需要的功
或是正常郵件。若是兩個以上的法則互有衝突,產生灰名單,再利用從屬關係分析解 決法則衝突問題,最後再配合使用者回饋以提升垃圾郵件過濾之整體效率以及效能。
圖 5. 過濾垃圾郵件的法則管理系統流程圖
3.2. 過濾器分類模式
由於實際上,每個使用者對於適用的法則標準不一,所以,現今多數的過濾器多 採用結合多重過濾法,以期增加其效果。我們將過濾的分類模式分成下列的情況:
A. 單一過濾法則:這是以前一般過濾器的過濾方式,首先系統中已經配套最適當的 過濾法則作為篩選郵件的工具,或由郵件特徵值直接給定某一個過濾法則,當該 法則判定是垃圾郵件就直接丟到垃圾郵件信箱中,否則直接判定為正常郵件。由 於是單一法則過濾,該方式的好處是其結果就只有是和不是,不會有法則衝突的 狀態;因為郵件的重要性是因人而異的,若只靠單一法則作決定,即使是判斷準 確率極高的過濾法,也無法針對個人作出個人化的判斷,所以誤判率會比較高。
利用單一法則的過濾方式,令很多人在觀察其郵件信箱時,會發現其信箱中 正常郵件比率很高,是因為這樣的單一法則過濾方式的效果較不佳,為了避免將 正常郵件誤判成垃圾郵件所造成的損失,通常過濾郵件的門檻值會設的比較不嚴 謹。因此,在這單一法則的情況下,過濾法則的精簡以及排序對於過濾效能會有 極大影響,選擇出最適當的法則作為"唯一"的過濾法則。
圖 6. 單一法則過濾法
單一的過濾技術的誤判率極高,多數的過濾系統已經趨向採用多重過濾技術作為 過濾工具。Kim 等的過濾方式就是採用 20 種以上的過濾技術,配合 Spam 和 Ham 的出
現頻率,再依照特徵值計算出分數,依照分數是否通過門檻值作為判斷標準。
以下我們將介紹多重法則過濾器。
多重法則過濾器的過濾方式我們再細分成兩種模式:
B. 串聯式多重過濾法則:新進來的 E-mail 都必須透過系統中所有的過濾法則作獨立 的篩選判斷,不論第一個過濾法則將郵件判定為垃圾郵件或是正常郵件,第二個 過濾法則依然具有獨立性作出判斷,不會因為第一個過濾法則而影響其判斷結 果。以此類推,最後再就所有的法則過濾後得到的結果作屬性歸類,透過統計分 析模式,決定該郵件屬於正常郵件或是垃圾郵件。如圖 7,必須串聯所有的法則 作判斷。
這種模式中,郵件必須經過所有的法則過濾一次,所以如何選擇出最適當的 法則在串聯式的多重法則過濾方式中是很重要的。因此,我們力求精簡法則,目 的就是要將適當的法則挑選出來,將過時已經不適用的法則淘汰,使得系統在不
減少過濾效果的情況下可以增加其效能。過多的法則或許會使效果增加,但是就 效能而言卻會大幅降低。
圖 7. 串聯式多重法則過濾法
C. 並聯式多重過濾法則:在眾多法則中,並不是所有的法則都是適用的,系統先行 挑選出適用的過濾法則。郵件只透過被挑選出適當的法則作判斷,因為只挑選較 嚴格的幾個過濾法則作郵件判斷,所以,法則就其效能、效果作法則精簡與優先 排序的動作是很重要的。使用並聯式的過濾方式不需要經過所有過濾法則的重重
C. 並聯式多重過濾法則:在眾多法則中,並不是所有的法則都是適用的,系統先行 挑選出適用的過濾法則。郵件只透過被挑選出適當的法則作判斷,因為只挑選較 嚴格的幾個過濾法則作郵件判斷,所以,法則就其效能、效果作法則精簡與優先 排序的動作是很重要的。使用並聯式的過濾方式不需要經過所有過濾法則的重重