機器學習--監督學習
在Udacity的學習中,通過視頻學習導師講解,結合自己網上搜集的資料,對機器學習的部分模型演算法有了一定了解。下面,我簡單地總結了學習到的一些監督學習的模型演算法概述。
監督式學習通常是根據訓練集(樣本有輸入和輸出)學習構建一個模式,並用此模式預測新的測試集的輸出。輸出可以是一個連續的值稱為回歸分析,也可以是預測一個分類標籤稱作分類。目前最廣泛被使用的監督學習的方法有決策樹、神經網路、支持向量機、貝葉斯方法和集成學習方法等。
決策樹
決策樹是一個樹結構(可以是二叉樹或非二叉樹)。其每個非葉節點表示一個特徵屬性上的測試,每個分支代表這個特徵屬性在某個值域上的輸出,而每個葉節點存放一個類別。使用決策樹進行決策的過程就是從根節點開始,測試待分類項中相應的特徵屬性,並按照其值選擇輸出分支,直到到達葉子節點,將葉子節點存放的類別作為決策結果。
決策樹很直觀容易理解,並且運行時間相比其他方法較短。但是會出現過擬合問題,一般情況需要通過剪枝來緩解。數據缺失嚴重或數據集中屬性之間有相關性時,決策樹表現也會較差。
神經網路
神經網路是一組大致模仿人類大腦構造設計的演算法,用於識別模式。神經網路通過機器感知系統解釋感測器數據,對原始輸入進行標記或聚類。神經網路所能識別的模式是包含在向量中的數值形式,因此圖像、聲音、文本、時間序列等一切現實世界的數據必須轉換為數值。深度學習系統指一系列由多個層堆疊組成的特定神經網路。通常分為輸入層、隱藏層和輸出層構成。每一層則由節點構成。運算在節點中進行,節點的運作模式與人類的神經元大致相似,遇到足夠的刺激信息時就會激活並釋放信號。節點將輸入數據與一組係數(或稱權重)結合,通過放大或抑制輸入來指定其在演算法學習任務中的重要性。輸入數據與權重的乘積之和將進入節點的激活函數,判定信號是否繼續在網路中傳遞,以及傳遞的距離,從而決定信號如何影響網路的最終結果,例如分類動作。
人工神經網路的分類的準確度高,並行分布處理能力強,分布存儲及學習能力強,對雜訊神經有較強的魯棒性和容錯能力,能充分逼近複雜的非線性關係,具備聯想記憶的功能等。特別重要的是,神經網路可以用來提取特徵,這是許多其他機器學習方法所不具備的能力。但神經網路需要大量的參數,且訓練成本較高,不能觀察之間的學習過程,輸出結果難以解釋,會影響到結果的可信度和可接受程度;學習時間過長,。
支持向量機
支持向量機本質上即是一個二類分類方法,它的基本模型是定義在特徵空間上的間隔最大的線性分類器。對於不是線性可分的,還可以加入核函數。
支持向量機可以較好的處理高維數據集,泛化能力較強。但是支持向量機對於缺失數據敏感。
貝葉斯方法
貝葉斯分類是一系列分類演算法的總稱,這類演算法均以貝葉斯定理為基礎,故統稱為貝葉斯分類。樸素貝葉斯分類器基於一個簡單的假定:給定目標值時屬性之間相互條件獨立。樸素貝葉斯的基本思想是對於給出的待分類項,求解在此項出現的條件下各個類別出現的概率,哪個最大,就認為此待分類項屬於哪個類別。
樸素貝葉斯模型有穩定的分類效率,對小規模的數據表現很好,能個處理多分類任務,對缺失數據不太敏感,演算法也比較簡單。但樸素貝葉斯在屬性個數比較多或者屬性之間相關性較大時,分類效果不好。由於是通過先驗和數據來決定後驗的概率從而決定分類,所以分類決策存在一定的錯誤率,對輸入數據的表達形式也較為敏感。
集成學習方法
集成學校方法是一種迭代演算法,其核心思想是針對同一個訓練集訓練不同的弱分類器,然後把這些弱分類器集合起來,構成一個強分類器。常見的集成學校方法有Bagging, AdaBoost, Random Forest, Gradient Boosting等。
集成學習方法中單個弱分類器雖然效果可能不佳,但是多個整合學習後表現效果可能較好。此外弱分類器往往結構簡單,易於實現,處理速度快。不過,對於異常樣本會比較敏感。
下面是我學習參考的一些資料:
https://www.leiphone.com/news/201704/w6SbD8XGrvQ9IQTB.html
http://www.cnblogs.com/ysjxw/articles/1149004.html
http://blog.csdn.net/u011067360/article/details/24735415
https://m.aliyun.com/yunqi/articles/154923?utm_content=m_27527
http://blog.csdn.net/suipingsp/article/details/41927247
http://kb.cnblogs.com/page/76196/
http://blog.csdn.net/xbinworld/article/details/44660339
http://www.csuldw.com/2015/05/08/2015-05-08-decision%20tree/
https://deeplearning4j.org/cn/neuralnet-overview
https://hit-scir.gitbooks.io/neural-networks-and-deep-learning-zh_cn/content/chap1/c1s3.html
https://www.zhihu.com/question/22553761
https://vimsky.com/article/917.html
http://blog.csdn.net/v_july_v/article/details/7624837
http://blog.pluskid.org/?page_id=683
http://www.cnblogs.com/pinard/p/6069267.html
http://blog.sina.com.cn/s/blog_830e44d40101c7bx.html
推薦閱讀: