• 沒有找到結果。

一、支持向量機(Support Vector Machine, SVM)

支持向量機(Support Vector Machine,簡稱 SVM)基本上是一個基於統計學理論的 非參數監督二元分類技術(Yap et al., 2010) (Dardas et al., 2010),將原始數據投影到由核 函數(Kernel Function)指定的較高維空間中,並且計算線性分離的兩個或更多類的最大 邊界超平面(Hyperplane)判定面。

此演算法嘗試將鬆弛的變數(slack variables)保持為零,同時使邊界(margin)最大化。

SVM 分類器與神經網路密切相關。實際上,使用 S 形核函數(Sigmoid Kernel Function) 的 SVM 分類器模型與兩層感知器類神經網路(Perceptron Neural Network)相同。在 SVM 分 類 器 中 , 預 測 變 量 被 稱 為 屬 性 (Attribute) , 而 用 於 定 義 超 平 面 的 變 換 屬 性 (Transformed Attribute)被稱為特徵(Feature)。一組特徵被定義為向量(Vector),因此建 立 SVM 模型的目標為找到一個最佳的超平面(Hyperplane),使得兩個不同的類別分得 最開(Wozniak, 2008)。以二維的例子來說,若希望能找出一條線能夠將黑點和白點分 開,而且希望這條線距離這兩個集合的邊界(Margin)越大越好,這樣才能夠很明確的分 辨 這 個 點 是 屬 於 哪 個 集 合 , 否 則 在 計 算 上 容 易 因 準 確 度 的 問 題 而 產 生 誤 差 (Chamasemani et al., 2011) 。

分離兩組數據的最簡單方法是使用直線(一維),平面(二維)或 N 維超平面。

然而,在某些情況中,存在非線性的方式可以更有效地分離兩組數據。而 SVM 透過使 用核函數,來解決數據無法用線性的方式進行分離的情況。

本 研 究 透 過 LIBSVM 實 作 , 而 在 LIBSVM 中 , 有 四 個 主 要 的 核 函 數 (kernel function),線性核函數(linear kernel),多項式核函數(polynomial kernel),徑向基核函數 (radial basis function kernel),神經元的非線性作用函數核函數(sigmoid kernel),以及用 戶自定義核函數。

雖然 SVM 為一種二元分類的分類方法,但依然有方法分出超過兩種的類別。常見 的方法有二:一為一對多法(One-Versus-Rest),二為一對一法(One-Versus-One)。其中

(K−1)/2 個二元分類器;每一個從初始訓練集中收到一對類樣例,並且必須學習去區分 這兩個類。在預測時間內,會進行投票:所有 K(K-1)/2 個解釋器被應用於一個未知樣 例,並且那個得到最多票數的類別,會成為組合分類器的預測結果(Y. Ma et al., 2014)。

二、人工神經網路(Artificial Neural Network, ANN)

人工神經網路(Artificial neural networks, ANN)是一組相互連接的節點,類似於 正成為人工智慧的主要部分。這是由於一種稱為“反向傳播”(Back Propagation, BP)的技 術的發展,另一個重要的進步是深度學習神經網路的興起,透過多層網路的不同層提 取不同的特徵,直到它能夠識別它正在尋找什麼。

有許多種類型的神經網路,每種神經網路都有自己適合的使用情況和復雜程度。

最基本類型的神經網絡稱為前饋神經網路(Feedforward Neural Network),其中訊息僅在 一個方向上從輸入到輸出傳播。更廣泛使用的網路類型像是遞迴神經網路(Recurrent Neural Network),其數據可以在多個方向上流動。這些神經網路具有更強的學習能力,

並廣泛用於更複雜的任務,如學習手寫或語言識別。

人 工 神 經 網 路 (Artificial Neural Networks, ANN) , 是 一 類 前 饋 人 工 神 經 網 路 (Feedforward Neural Network)。ANN 至少包括三層節點:輸入層,隱藏層和輸出層。

除輸入節點外,每個節點都是使用非線性激活函數的神經元。ANN 可以被看作是一個 有向圖,由多個的節點層所組成,每一層都全連接到下一層。除了輸入節點,每個節

點都是一個帶有非線性激活函數的神經元。而 ANN 網絡是目前使用最廣泛的帶有反向 傳播學習演算法的神經分類器。BP 用於該分類器是一個監督式神經網絡,可以使用多 個輸入,輸出和隱藏層與任意數量的神經元。它可以區分不可線性分離的數據。ANN 是感知器(Perceptron)的推廣,克服了感知器不能對線性不可分數據進行識別的弱點 (Sozou et al., 1997)。

三、卷積神經網路(Convolutional Neural Network, CNN)

在深度學習中,卷積神經網絡(Convolutional Neural Network, CNN)是深度神經網 路的一種。近年來,卷積神經網路被視為深度學習網絡領域的主力之一,在圖像辨識 layer)組成。隱藏層包含了卷積層(convolutional layers)、池化層(pooling layers)和完全連 接層(fully connected layers)。CNN 透過卷積層來抽取特徵,第一層卷積層可能只能提取 一些低階的特徵如邊緣、線條和角等等,更多層的卷積層能從低階特徵中疊代提取更 複雜、更抽象的特徵。

透過卷積運算獲得特徵之後,接下來我們可以用這些特徵來進行分類的任務。理 論上,可以使用諸如 softmax 等激活函數(activation function)的分類器來使用所有提取 的特徵,但這在計算上具有挑戰性。池化(pooling),即是為降低輸入的特徵維度,以 及解決過度擬和的問題。這能幫助 CNN 判斷圖片中是否包含某項特徵,而不必分心於 特徵的位置。

四、注意力機制(Attention Mechanism)

注意力機制最初是被運用於圖像領域的方法。隨著類神經網路的興起,注意力機 制搭配深度學習方法也被廣泛應用於自然語言處理、圖像識別等領域(Gong et al., 2016)。Attention 是從人類視覺注意力獲得啟發(Hollis et al., 2018),就如同我們看到某 一個場景或圖片之初,一般不會從頭到尾詳細的看,而往往是根據需求觀察特定的部 分。當我們發現某一類場景中,經常出現自己想觀察的事物時,我們將會進行學習,

使得將來再看到類似場景時,將注意力集中於該部分。舉例來說,機器在執行人臉辨 識之任務下,透過注意力機制,可以學習到每一張輸入的圖片中皆出現人臉,故會將 注意力集中於人臉上。除了圖像識別外,在機器翻譯以及自然語言處理之領域,注意 力機制扮演之角色亦日趨重要。通常而言,人們閱讀和理解一句話,其實有一定的先 後順序,會按照著語言學之規則語法進行理解。注意力機制輸出的結果為注意力分配 之係數,用以表現各特徵之權重比例(Jenkin et al., 2001)。

而注意力機制主要之任務即為:決定輸入之圖片、文字等等的哪些部分需要被關 注,以及對關鍵的部分進行特徵的提取,以得到重要的訊息。對於特徵選取而言,注 意力機制在近年之研究中都有良好的表現(Ma et al., 2019; Vaswani et al., 2017)。

第參章 研究方法

相關文件