• 沒有找到結果。

支援向量機

在文檔中 通資安全鑑識系統之研究 (頁 21-29)

支援向量機(Support Vector Machine, SVM)為一種機器學習

(machine learning)的方法,近幾年來已被廣泛用於解決樣式分類

(pattern classification)以及迴歸(regression)的問題,也很 成功的應用於各種領域。由於它可以同時降低訓練錯誤(training error, or empirical risk)及測試錯誤(test error, or risk),

因此已成為機器學習領域中最熱門的一種方法。

支援向量機是由 Vapnik 所提出,但在本計劃中僅就涉及樣式分 類的理論作初步探討,有關詳細深入之資訊可參考支援向量機相關著 作。

在樣式分類問題中,通常會定義以下基本的表示法:

xi: 是一個向量,用以描述一筆資料的各個屬性,xiRn,i=1...l yi: 為+1 或-1 的標記(label),表示兩種類別, yi{±1},i=1...l S: xi所成的集合

L: yi所成的集合

f : 決定函數(decision function), f :Rn {±1}

樣式分類的工作,就是在給定一筆資料 時,判定該資料是屬於 哪一個類別(+1 或-1)。

xi

而在距離的判定上是採取 1-norm、2-norm 的表示法其意義為某 一點到原點的距離的計算方法採用那一種方式:

norm

以線性分類器(linear classifier)來說,主要是要在給定的 訓練資料(training data)中,找出一個超平面(Hyperplane),

將這些資料區分開來,如圖 5.1 所示。也就是找到相對應的 w 和 b,

把訓練資料區分開來。將來在給定一筆測試資料(test data)x 時,

便依據決定函數 的值分類,若 ,則將該筆資料歸 界(margin),如圖 5.2 所示,便可以降低測試錯誤(test error, or risk error)。Vapnik 和 Chervonenkis 提出的最佳超平面(Optimal Hyperplane),指的就是可區分兩類資料的超平面中有最大邊界者。

在重新調整 和b值以滿足 後,對所

此時邊界為

找出最佳超平面是一個二次規劃(quadratic programming)的 問題,可以使用 Lagrangian 理論及 Lagrangian 乘數(multipliers)

來解:

Lagrangian:

=

optimization problem),它是一個最大化(maximization)問題,

w

並且用來表示一個對於線性可區分類別問題的支援向量機公式: 度(經過 Linear Discriminant Analysis 降維) ,因此分類演算法往 往所處理的資料並不是線性可區分的,所以要把上述求最佳邊界的公 式( )擴大,其原理是將在原本用到的式子中再加上一個 正的 Slack Variable,

2

如圖 5.3 顯示,若 是屬於正向(Positive)那一類時,此時應該

要滿足 ,但是

x2 2w+b1

x x2w+b的結果卻是1,所以在(5-3)中扣 去ξi,才會滿足這一個不等式限制(Inequality Constraints);反 之,若 x1 是屬於負向(Negative)那一類時,則應該要滿足

,但是 的結果卻是 ,所以在(5-4)中加上

2w+b≤1

x x1w+b 1 ξi,滿

足這一個不等式限制(Inequality Constraints)。把(5-3)、(5-4) 兩式合併,可組成下面這不等式:

(

i

)

i

i x w b

y + 1ξ ,ξi 0i (5-6) 在不等式限制(Inequality Constraints)所加上的ξi,則表示為 這一筆資料的訓練誤差(Training Error),

xi

i

ξi 則代表所有資料訓 練誤差的總和,一般有兩種評估訓練誤差的方法:

1. 1-norm Slack Variable 2. 2-norm Slack Variable。

而在本計劃我們所使用到的是 2-norm Slack Variable,所以僅 將 2-norm Slack Variable 做一個簡單的介紹。所以將原本的目標函 數( )加上 2-norm Slack Variable,再加上限制(5-6),

則變成 2-Norm Soft Margin:

2

式中的 C 為可調整的常數,代表 training-error 的 penalty。若 C 值愈大,表示對 training-error 的影響愈重,反之則愈小。

對 2-Norm Soft Margin 而言,其原始的(Primal)Lagrangian 為:

( ) [

i

(

i

)

i

]

( )

所以此對偶(2-norm Soft Margin)最大化問題(Dual Maximization Problem)為:

maximize

( ) ( )

Karush-Kuhn-Tucker (KKT) 條件則為:

(

x w b

)

i 料庫,這些影像在經過前置處理後交由支援向量機 Libsvm(為一套

=

免費軟體)進行訓練及測試。

使用平滑支援向量機來做特徵比對具有許多的優點:

首先,相異人眼之虹膜特徵非常多樣化,傳統的歐式距離比對方 法,對特徵向量取最近距離的方式更是沒有任何可靠的理論支持。而 一種新的機器學習方法─平滑支援向量機,可以有效處理大量且變動 的資料,適合用來作樣式辨識。

其次,相較於著重在降低訓練錯誤(empirical risk minimization)的傳統分類方法,像是類神經網路(neural network),平滑支援向量機可以同時降低訓練錯誤及測試錯誤

(structural risk minimization),因此更加的有效與強健。

再者,是速度的考量。速度是虹膜辨識系統要達到即時效率的重 要考量因素。平滑支援向量機比起類神經網路,在速度上明顯占有優 勢。類神經網路在資料量大時,需用大量的權重來訓練,平滑支援向 量機則較不受大量資料的影響。

第六章 實驗結果

6.1 實驗環境介紹

本論文所使用的程式開發軟體為 Borland C++ builder 6.0 以及 Matlab 7.0 R14,MS Access 則是用來儲存虹膜碼以及各個需要的參 數,作業平台為 Windows XP,系統配備 Intel Celeron CPU 2.8 GHz 與 512 的記憶體。

使用的取像設備為 AVC 301A B/W CCD camera,兩顆紅外線投射 器。本論文所開發的取像設備與其他論文相比,不僅是非接觸式取 像,所擷取之影像品質,也較為優良(如圖 6.1),對於環境光源,更 具有不變性,這代表即使在光照程度不同的環境,使用本論文的攝影 機構也能得到相同照度的影像。

本論文另外對於知名虹膜影像資料庫 CASIA 也做了相同的實驗測 試。CASIA 是目前國際上規模最大的共享虹膜圖像庫,已被來自 70 個國家和地區的 877 個研究單位申請使用。

6.2 實驗結果

本論文所開發的系統對於兩個不同的資料庫做了測試,一個是中 國自動化科學研究院所提供的 CASIA 人眼影像資料庫(如圖 6.1)。

CASIA 資料庫包含了 108 個類別的人眼影像,每個類別內 7 張影像。

CASIA 資料庫特色如下:

„ 人眼影像皆為灰階影像,大小為320×280,虹膜半徑約為 pixel。

130

~ 110

„ 人眼影像中虹膜內的紋理清晰對比度優良。

„ 人眼影像已預先做過瞳孔搜尋,並用與瞳孔相同半徑的黑色 原型遮罩將瞳孔中的光源去除。

„ 人眼影像所拍攝的範圍為單一眼睛,包含了完整的上下眼瞼。

„ 利用技巧避免了環境光害,因此人眼影像內沒有任何的光源 污染。

„ 部分人眼影像之虹膜部分受上眼瞼的睫毛所遮蔽,在虹膜定 位上增加了困難,因此可取得之虹膜資訊也相對的減少。

圖 6.1 CASIA 人眼影像資料庫

由於 CASIA 人眼影像資料庫中每個類別只有 7 張影像,因此在訓 練以及測試的空間都遭到壓縮,本論文對於 108 個類別中,隨機提取 了 6 張影像作為訓練集,剩下的 1 張作為測試集。特徵提取方面我們 實驗了三種降維的方式 PCA、LDA 以及 DLDA,實驗結果如表 6-1:

PCA LDA DLDA

FRR 87.6

2

93.1 9

93.82

FAR 5.83 2.64 2.91

表 6-1

另外我們也利用了我們自製的人眼影像擷取設備實際對 21 位受 測者進行人眼影像採樣,每個人拍攝的人眼影像為 20 張,圖 6.2 為 其中一位受測者的人眼影像,拍攝出來的影像品質較 CASIA 人眼影像 資料庫更為優良。實驗結果如表 6-2。

圖 6.2 實際拍攝出來的人眼影像

PCA LDA DLDA

FRR 91.2

3

96.4 98.52

FAR 8.76 3.59 1.48

在文檔中 通資安全鑑識系統之研究 (頁 21-29)

相關文件