機器學習基礎——原理、算法與實踐( 簡體 字) | |
作者:袁梅宇 | 類別:1. -> 程式設計 -> 機器學習 |
出版社:清華大學出版社 | 3dWoo書號: 49681 詢問書籍請說出此書號! 有庫存 NT售價: 345 元 |
出版日:8/1/2018 | |
頁數:293 | |
光碟數:0 | |
站長推薦: | |
印刷:黑白印刷 | 語系: ( 簡體 字 ) |
ISBN:9787302500148 | 加入購物車 │加到我的最愛 (請先登入會員) |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社) | |
第1章機器學習介紹 1
1.1機器學習簡介 2 1.1.1什么是機器學習 2 1.1.2機器學習與日常生活 3 1.1.3如何學習機器學習 4 1.1.4MATLAB優勢 5 1.2基本概念 5 1.2.1機器學習的種類 6 1.2.2有監督學習 6 1.2.3無監督學習 7 1.2.4機器學習術語 7 1.2.5預處理 9 1.3MATLAB數據格式 10 1.3.1標稱數據 10 1.3.2序數數據 11 1.3.3分類數據 11 1.4示例數據集 12 1.4.1天氣問題 12 1.4.2鳶尾花 15 1.4.3其他數據集 16 1.5了解你的數據 16 習題 20 第2章線性回歸 21 2.1從一個實際例子說起 22 2.1.1模型定義 23 2.1.2模型假設 23 2.1.3模型評估 24 2.2最小二乘法 24 2.2.1最小二乘法求解參數 25 2.2.2用最小二乘法來擬合奧運會數據 26 2.2.3預測比賽結果 27 2.3梯度下降 27 2.3.1基本思路 28 2.3.2梯度下降算法 29 2.3.3梯度下降求解線性回歸問題 30 2.4多變量線性回歸 32 2.4.1多變量線性回歸問題 33 2.4.2多變量梯度下降 34 2.4.3隨機梯度下降 38 2.4.4正規方程 40 2.5多項式回歸 42 2.5.1多項式回歸算法 42 2.5.2正則化 45 習題 47 第3章邏輯回歸 49 3.1邏輯回歸介紹 50 3.1.1線性回歸用于分類 50 3.1.2假設函數 51 3.1.3決策邊界 52 3.2邏輯回歸算法 53 3.2.1代價函數 53 3.2.2梯度下降算法 54 3.2.3MATLAB優化函數 56 3.2.4多項式邏輯回歸 58 3.3多元分類 60 3.3.1一對多 60 3.3.2一對一 62 3.3.3Softmax回歸 64 習題 66 第4章貝葉斯分類器 67 4.1簡介 68 4.1.1概述 68 4.1.2判別模型和生成模型 68 4.1.3極大似然估計 69 4.2高斯判別分析 72 4.2.1多元高斯分布 72 4.2.2高斯判別模型 73 4.3樸素貝葉斯 75 4.3.1樸素貝葉斯算法 76 4.3.2文本分類 81 習題 86 第5章模型評估與選擇 87 5.1簡介 88 5.1.1訓練誤差與泛化誤差 88 5.1.2偏差和方差 89 5.2評估方法 90 5.2.1訓練集、驗證集和測試集的劃分 91 5.2.2交叉驗證 92 5.3性能度量 95 5.3.1常用性能度量 95 5.3.2查準率和查全率 96 5.3.3ROC和AUC 98 5.4偏差與方差折中 100 5.4.1偏差與方差診斷 101 5.4.2正則化與偏差方差 102 5.4.3學習曲線 103 習題 104 第6章K-均值算法和EM算法 107 6.1聚類分析 108 6.1.1K-means算法描述 108 6.1.2K-means算法應用 112 6.1.3注意事項 113 6.2EM算法 114 6.2.1基本EM算法 114 6.2.2EM算法的一般形式 115 6.2.3混合高斯模型 118 習題 123 第7章決策樹 125 7.1決策樹介紹 126 7.2ID3算法 127 7.2.1信息熵 127 7.2.2信息增益計算示例 127 7.2.3ID3算法描述 132 7.2.4ID3算法實現 134 7.3C4.5算法 134 7.3.1基本概念 135 7.3.2剪枝處理 139 7.3.3C4.5算法描述 140 7.3.4C4.5算法實現 142 7.4CART算法 144 7.4.1CART算法介紹 144 7.4.2CART算法描述 147 7.4.3CART算法實現 149 習題 150 第8章神經網絡 151 8.1神經網絡介紹 152 8.1.1從一個實例說起 152 8.1.2神經元 153 8.1.3神經網絡結構 154 8.1.4簡化的神經網絡模型 157 8.1.5細節說明 160 8.2神經網絡學習 161 8.2.1代價函數 161 8.2.2BP算法 162 8.2.3BP算法實現 166 8.2.4平方代價函數的情形 171 習題 171 第9章隱馬爾科夫模型 173 9.1隱馬爾科夫模型基本概念 174 9.1.1離散馬爾科夫過程 174 9.1.2擴展至隱馬爾科夫模型 176 9.1.3HMM的組成和序列生成 179 9.1.4三個基本問題 181 9.2求解HMM三個基本問題 182 9.2.1評估問題 183 9.2.2解碼問題 187 9.2.3學習問題 190 習題 196 第10章支持向量機 197 10.1支持向量機介紹 198 10.2最大間隔超平面 198 10.2.1SVM問題的形式化描述 199 10.2.2函數間隔和幾何間隔 199 10.2.3最優間隔分類器 201 10.2.4使用優化軟件求解SVM 203 10.3對偶算法 204 10.3.1SVM對偶問題 204 10.3.2使用優化軟件求解對偶SVM 206 10.4非線性支持向量機 208 10.4.1核技巧 208 10.4.2常用核函數 210 10.5軟間隔支持向量機 213 10.5.1動機及原問題 213 10.5.2對偶問題 214 10.5.3使用優化軟件求解軟間隔對偶SVM 215 10.6SMO算法 218 10.6.1SMO算法描述 218 10.6.2簡化SMO算法實現 221 10.7LibSVM 226 10.7.1LibSVM的安裝 226 10.7.2LibSVM函數 228 10.7.3LibSVM實踐指南 230 習題 232 第11章推薦系統 233 11.1推薦系統介紹 234 11.1.1什么是推薦系統 234 11.1.2數據集描述 235 11.1.3推薦系統符號 236 11.2基于用戶的協同過濾 236 11.2.1相似性度量 237 11.2.2算法描述 239 11.2.3算法實現 240 11.3基于物品的協同過濾 241 11.3.1調整余弦相似度和預測 241 11.3.2SlopeOne算法描述與實現 243 11.4基于內容的協同過濾算法與實現 247 11.4.1算法描述 247 11.4.2算法實現 250 習題 251 第12章主成分分析 253 12.1主成分分析介紹 254 12.2本征值與奇異值分解 255 12.2.1本征值分解 255 12.2.2奇異值分解 256 12.3PCA算法描述 256 12.3.1PCA算法 257 12.3.2從壓縮表示中重建 258 12.3.3確定主成分數量 258 12.4PCA實現 260 12.4.1假想實例 260 12.4.2MNIST實例 264 習題 265 習題參考答案 267 符號表 294 參考文獻 295 《機器學習基礎——原理、算法與實踐》講述機器學習的基本原理,使用MATLAB實現涉及的各種機器學習算法。通過理論學習和實踐操作,使讀者了解并掌握機器學習的原理和技能,拉近理論與實踐的距離。《機器學習基礎——原理、算法與實踐》共分12章,主要內容包括:機器學習介紹、線性回歸、邏輯回歸、貝葉斯分類器、模型評估與選擇、K-均值和EM算法、決策樹、神經網絡、HMM、支持向量機、推薦系統、主成分分析。全書源碼全部在MATLAB R2015b上調試通過,每章都附有習題和習題參考答案,供讀者參考。
《機器學習基礎——原理、算法與實踐》系統講解了機器學習的原理、算法和應用,內容全面、實例豐富、可操作性強,做到理論與實踐相結合。《機器學習基礎——原理、算法與實踐》適合機器學習愛好者作為入門和提高的技術參考書使用,也適合用作計算機專業高年級本科生和研究生的教材或教學參考書。 機器學習無疑是當今最炙手可熱的領域,機器學習工程師、數據科學家和大數據工程師逐漸成為最為熱門的新興職業,各行各業的公司都在尋求具備這些技能的人才。技術職位的爆炸式增長吸引了很多在校大學生、社會IT人員將機器學習職位納入自己的職業規劃中。由于具備機器學習相關技能才更有可能在上述新興職業中獲得成功,因此一本容易上手的入門書籍肯定會對初學者有著莫大的幫助,本書就是為初學者精心編寫的。
初學者學習機器學習課程一般會面臨兩大障礙:第一大障礙是數學基礎,機器學習要求學習者具備數學基礎,書籍中大量的公式是初學者最大的噩夢,尤其是對于已經離開大學走向工作崗位的愛好者,要從頭開始去學習和理解數據分布及模型背后的數學原理需要花費很長的時間和精力,學習周期非常漫長;第二大障礙是編程實踐,并不是所有人都擅長編代碼,學習者只有自己親手用代碼實現機器學習的各種算法,親眼見到算法解決了實際問題,才能更深入地理解算法。除非想做高精尖的前沿研究,理論研究和公式推導并非是大多數人的專長,如果只是想更合理地應用機器學習來解決實際問題,必需的數學知識就可以降低到大多數人都可以理解的程度,使用MATLAB編程實現機器學習算法也比使用C++或Java等語言容易得多。 本書就是為了讓初學者順利入門而設計的。首先,本書只講述機器學習常用算法的基本原理,并不追求各種算法大而全但簡略的羅列,學習并深入理解這些精挑細選的算法后,能夠了解基本的機器學習算法,使用適合的算法來解決實際問題。其次,本書使用MATLAB R2015b實現了常用的機器學習算法,讀者能親眼看見算法的工作過程和結果,加深對抽象公式和算法的理解,逐步掌握機器學習的原理和技能,拉近理論與實踐的距離。再次,每章都附有習題和習題參考答案,其中,一部分習題是為了理解正文內容而設置的,另一部分習題是為了降低正文中的數學要求,將一些必要但枯燥的公式推導放在習題中,供讀者有選擇性地學習。最后,本書專門設有讀者QQ群,群號為278724996,歡迎讀者加群,下載書中源代碼,與作者直接對話探討書中技術問題。 本書共分12章。第1章介紹機器學習的基本概念、MATLAB的數據格式和示例數據集;第2章介紹線性回歸,主要內容包括線性回歸的模型定義及模型假設和評估、最小二乘法、梯度下降、多變量線性回歸、隨機梯度下降、正規方程、多項式回歸和正則化;第3章介紹邏輯回歸,主要內容包括邏輯回歸的假設函數、決策邊界、梯度下降算法、MATLAB優化函數、多項式邏輯回歸、多元分類、Softmax回歸;第4章介紹貝葉斯分類器,主要內容包括判別模型和生成模型的概念、極大似然估計、高斯判別分析、樸素貝葉斯和文本分類;第5章介紹模型評估與選擇,主要內容包括訓練集驗證集測試集劃分、交叉驗證、性能度量,以及偏差與方差折中;第6章介紹K-均值和EM算法,主要內容包括聚類分析的基本概念、K-means算法應用、EM算法,以及混合高斯模型;第7章介紹決策樹,主要內容包括決策樹的基本概念、ID3算法、C4.5算法,以及CART算法的原理與實現;第8章介紹神經網絡,主要內容包括神經元、神經網絡結構、反向傳播算法原理與實現;第9章介紹隱馬爾科夫模型,主要內容包括HMM的基本概念、HMM的組成和序列生成、求解HMM三個基本問題的算法,以及MATLAB代碼實現;第10章介紹支持向量機,主要內容包括支持向量機的基本概念、最大間隔超平面、對偶算法、非線性支持向量機、軟間隔支持向量機、SMO算法和LibSVM庫的使用;第11章介紹推薦系統,主要內容包括推薦系統的基本概念、基于用戶的協同過濾算法、基于物品的協同過濾算法和基于內容的協同過濾算法;第12章介紹主成分分析,主要內容包括主成分分析的基本概念、本征值分解和奇異值分解、PCA算法的計算步驟、如何從壓縮表示中重建、如何選取主成分的數量以及PCA實現。 本書的編寫異常艱難,從選題到付梓花費約兩年時間。和大多數人一樣,筆者的腦袋也是單任務處理系統,不善于同時處理多個任務,因此經常迷失在算法、代碼、習題、繪圖和文字的沼澤中不能自拔,多虧朋友和家人的支持才能堅持到最后。盡管在寫作中付出很多艱辛的勞動,限于筆者的學識、能力和精力,書中難免會存在一些缺陷,甚至錯誤,敬請各位讀者批評指正。感謝提供寶貴建議的貢獻者,昆明理工大學計算機系吳霖老師經常與筆者討論機器學習問題,并為本書的內容選取提出了很多建設性建議,感謝吳霖老師的貢獻。另外,還要感謝昆明理工大學提供的寬松的研究環境。感謝清華大學出版社的編輯老師在出版方面提出的建設性意見和給予的無私幫助。感謝購買本書的朋友,歡迎批評指正,你們的批評建議都會受到重視,并在將來再版中改進。 袁梅宇 于昆明理工大學 |