Category Archives: 機器學習

線性基函數模型

本文的閱讀等級:中級 在數理統計與機器學習,線性回歸 (linear regression) 是一種形式最簡單的回歸模型。令 表示輸入變數,或稱預測變數。輸入變數的線性組合再加上一個數即構成線性回歸: , 其中 是待決定的參數, 稱為偏權值 (bias), 是對應輸入變數 的權值 (weight)[1],。線性回歸既是權值 ,也是輸入變數 的一個線性函數,應用範疇因此受到很大的限制。在保留線性模型架構的前提下,如欲將線性回歸推廣為非線性函數,你可以考慮一組固定的非線性函數的線性組合: , 其中 稱為基函數 (basis function)。為簡化書寫,定義 。線性基函數模型 (linear basis function model) 的表達式如下: , 其中 , 是一個向量函數, 稱為基函數向量。由於 是權值 的線性函數,同時也是基函數 的線性函數,因此我們稱之為線性基函數模型。若 且 ,,線性基函數模型退化為線性回歸。如果使用非線性基函數, 實質上是輸入變數 的一個非線性函數。 Advertisements

Posted in 機器學習 | Tagged , , , , , , , , , , , | Leave a comment

高斯混合模型與最大期望算法

本文的閱讀等級:中級 假設你知道一個連續型隨機向量 的機率密度函數 (以下簡稱密度函數) 受一組參數 制約。譬如,常態分布 (高斯分布) 的密度函數 受期望值 與共變異數矩陣 制約,常態分布的參數為 (見“多變量常態分布”)。為了估計機率模型的參數,你需要取得該機率分布的樣本。假設我們有一筆大小為 的樣本 ,這些數據點是獨立的,而且服從相同的機率分布 。最大似然估計 (maximum likelihood estimation) 是一種常用的參數估計法。對於給定的樣本 ,參數 的似然函數 (likelihood) 定義為 , 也就是說似然函數是給定參數後,樣本的條件密度函數。在樣本 固定的情形下,我們將似然函數看作 的一個函數。顧名思義,最大似然估計的目標要找出 使得 有最大值: 。 對數 是一個單調遞增函數,可知 的最大值與 的最大值發生在同一個 。在實際應用時,我們通常考慮較易於計算的 。對於某些機率分布,最大似然估計很容易求得,譬如常態分布,計算 對 和 的偏導數並設為零,可得代數解 (見“多變量常態分布的最大似然估計”)。不過,對於一些形式較為複雜的機率分布,最大似然估計未必存在代數解,這時我們必須使用迭代法計算。

Posted in 機器學習 | Tagged , , , , , | 3 Comments

因素分析

本文的閱讀等級:高級 因素分析 (factor analysis) 是統計學中一種多變量分析法。因素分析與主成分分析具有一些相同的概念與技巧,但兩者的建模推理方向相反。假設可量測的隨機向量 服從一個未知的機率分布 ,期望值為 ,共變異數矩陣為 ,。主成分分析的主要功用是降維 (dimension reduction),我們從原始的變數 構築一組新變數 ,。具體地說,低維隨機向量 由離差 (deviation) 的線性映射產生: , 其中 是一個 階矩陣滿足 (見“主成分分析”)。在因素分析,我們設想隨機向量 的資料生成模型 (generative model) 為 , 其中 是一組無法量測的隱藏變數,稱為隱藏因素 (hidden factor)、共同因素 (common factor) 或簡稱因素, 是一個 階變換矩陣[1], 是代表雜音的隨機向量。本文討論的問題包括: 因素分析如何描述多隨機變數的產生? 如何估計因素分析的模型參數? 因素分析如何解釋隱藏因素的涵義? 因素分析如何應用於降維? … Continue reading

Posted in 機器學習 | Tagged , , , | Leave a comment

邏輯斯回歸

本文的閱讀等級:中級 假設我們有一筆維數等於 ,樣本大小為 ,包含 個類別的數據 。數據點 散布在 空間,以 標記類別或代表類別的指標集,例如, 表示 來自 (歸屬) 第 類。我們的問題是利用給定的樣本 ,設計一個分類器 (classifier);具體地說,給定一個數據點 ,判定它應歸於何類。貝氏定理 (Bayes’ theorem) 提供了分類問題的理論基礎 (見“貝氏定理──量化思考的利器”): , 其中 是類別 出現的機率,稱為先驗機率 (priori probability); 是條件密度函數,即給定類別 ,數據點 的機率密度函數,也稱為似然 (likelihood); 是數據點 的機率密度函數,稱為證據 (evidence),算式為 ; 是指在給定數據點 的情況下,該點屬於 的機率,稱為後驗機率 (posterior probability)。 … Continue reading

Posted in 機器學習 | Tagged , , , , , , , , | 3 Comments

線性判別分析

本文的閱讀等級:中級 在機器學習和模式識別中,分類 (classication) 可視為一種決策問題:給定一數據點,判斷它所屬的類別。本文介紹源自於統計學多變量分析的一個古典分類法,稱作線性判別分析 (linear discriminant analysis,簡稱 LDA)。就理論面來說,線性判別分析與費雪 (Ronald Fisher) 的判別分析 (一種應用於分類問題的降維方法,見“費雪的判別分析與線性判別分析”) 和邏輯斯回歸 (logistic regression,一種應用於分類問題的非線性模型) 有著密切的關係。就應用面而言,由於線性判別分析建立於嚴苛的假設上,它的分類效能並不突出,或許因為這個緣故,線性判別分析經常被當作與其他方法比較的基準。

Posted in 機器學習 | Tagged , , , , , | 6 Comments

費雪的判別分析與線性判別分析

本文的閱讀等級:高級 在許多現實應用中,我們往往要面對高維度 (多變數) 數據,為便利分析,降維 (dimension reduction) 常是一個必要的前處理工作。主成分分析 (principal components analysis) 是目前普遍被採用的降維技術 (見“主成分分析”)。主成分分析是一種非教導式學習法 (unsupervised learning),根據樣本自身的統計性質降維,並不在乎 (甚至不知道) 這些數據的後續應用。在機器學習領域,分類 (classification) 與回歸 (regression) 是兩個最具代表性的問題描述典範。所謂分類是指識別出數據點所屬的類別。本文介紹英國統計學家費雪 (Ronald Fisher) 最早提出的一個專為包含兩個類別樣本所設計的教導式 (supervised) 降維法,稱作費雪的判別分析 (Fisher’s discriminant analysis),隨後並討論三個延伸問題: 甚麼是線性判別分析 (linear discriminant analysis)?它與費雪的判別分析有何關係? 線性判別分析與最小平方法有甚麼關聯性? 費雪的判別分析如何推廣至多類別 (類別數大於2) 判別分析?

Posted in 機器學習 | Tagged , , , , , , , , | 10 Comments

古典多維標度法 (MDS)

本文的閱讀等級:中級 下圖顯示一份手寫數字的樣本,其中每一數字以大小為 像素 (pixel) 的灰階圖片儲存。讀者不妨想像樣本所含的200張數字圖片對應於 空間的200個數據點。我們提出下面的問題:給定這份樣本資料,如何「目視」數據點於高維空間的散佈?主成分分析 (principal components analysis) 是當今最常採行的一種降維技術 (見“主成分分析”)。在保留數據集的最大變異前提下,將高維數據點正交投影至一個特定的二維空間,此空間由對應樣本共變異數矩陣的最大兩個特徵值的特徵向量擴張而成。如此一來,我們可在平面上觀察所有數據點的投影位置 (稱為主成分係數)。   不過,在某些應用場合,我們僅知道任兩數據點的相異性 (dissimilarity)。舉例來說,手寫數字包含許多變異,如位移、旋轉、伸縮與形變,直接計算兩數字圖片於同一像素位置的灰階差距並不能反映實際的型態差異,我們必須先把兩圖放在可供比較的基準上。為了降低上述變異造成的影響,在比對圖片之前,我們容許一圖 (或兩圖) 些微調整轉變 (見“最小平方法於圖形比對的應用”),並採用各種複雜的圖片相異性算法。因為這些緣故,主成分分析不適用於手寫數字圖片的降維。本文介紹一個建立於數據點的相異性的降維方法,稱為多維標度法 (multidimensional scaling,簡稱 MDS)。下圖顯示手寫數字集經多維標度法處理後得到的二維標度散佈圖。根據相異性的定義,多維標度法可區分為公制 (metric) 與非公制 (nonmetric),前者採用歐幾里得距離 (簡稱歐氏距離),後者則泛指任何非歐氏距離[1]。本文將介紹公制,也稱古典多維標度法,並解說古典多維標度法與主成分分析的關係。

Posted in 機器學習 | Tagged , , , , | Leave a comment

主成分分析

本文的閱讀等級:高級 美國作家梭羅 (Henry D. Thoreau) 在《湖濱散記》談到他的幽居生活時,說道[1]: 我們的生活消耗在瑣碎之中。一個老實的人除了十指之外,便不必有更大的數字了,頂多加上十個足趾,其餘不妨勉強一下。簡單,簡單,簡單啊!我說,最好你的事祇兩三件,不要一百件或一千件;不必一百萬一百萬地計算,半打不夠計算嗎?總之,賬目可以記在大拇指甲上就好了。 我們也許不能複製梭羅在瓦爾登湖 (Walden) 的簡單生活,但是我們永遠可以通過化繁為簡來改善現況。處於資訊爆炸的時代,我們不免要面對變數很多且樣本數很大的資料。在分析高維度 (變數很多) 數據時,降維 (dimension reduction) 常是一個必要的前處理工作。主成分分析 (principal components analysis,簡稱 PCA) 由英國統計學家皮爾生 (Karl Pearson) 於1901年提出[2],是一種降低數據維度的有效技術。主成分分析的主要構想是分析共變異數矩陣 (covariance matrix) 的特徵性質 (見“共變異數矩陣與常態分布”),以得出數據的主成分 (即特徵向量) 與它們的權值 (即特徵值);透過保留低階主成分 (對應大特徵值),捨棄高階主成分 (對應小特徵值),達到減少數據集維度,同時保留最大數據集變異的目的。本文從線性代數觀點介紹主成分分析,並討論實際應用時可能遭遇的一些問題。

Posted in 機器學習 | Tagged , , , , , , , , , | 19 Comments