機器學(xué)習(xí)算法入門與編程實踐(基于Python·微課視頻版)
定 價:69.8 元
- 作者:唐四薪 等
- 出版時間:2021/11/1
- ISBN:9787111693543
- 出 版 社:機械工業(yè)出版社
- 中圖法分類:TP311.561
- 頁碼:
- 紙張:膠版紙
- 版次:
- 開本:16開
本書對機器學(xué)習(xí)算法的基本原理和Python程序?qū)崿F(xiàn)進行了系統(tǒng)的介紹,每種算法都采用Sklearn程序?qū)崿F(xiàn)并用Matplotlib進行數(shù)據(jù)可視化。為了幫助讀者更加高效、直觀地學(xué)習(xí),作者為本書錄制了13個微課視頻,讀者可以用手機掃描書中的二維碼進行觀看,也可以將視頻下載后進行觀看。
本書共8章,包括機器學(xué)習(xí)概述、Python機器學(xué)習(xí)與可視化、關(guān)聯(lián)規(guī)則與推薦算法、聚類算法、分類算法、回歸與邏輯回歸、人工神經(jīng)網(wǎng)絡(luò)、支持向量機等內(nèi)容。
本書可以作為高等院校機器學(xué)習(xí)和人工智能概論等課程的教材,也可作為機器學(xué)習(xí)算法入門讀者的自學(xué)用書,還可以作為人工智能等領(lǐng)域機器學(xué)習(xí)研究者和應(yīng)用人員的參考書。
隨著人工智能技術(shù)的興起,機器學(xué)習(xí)在各行各業(yè)的應(yīng)用越來越廣。工信部印發(fā)的《促進新一代人工智能產(chǎn)業(yè)發(fā)展三年行動計劃(2018—2020年)》中指出:當(dāng)前,新一輪科技革命和產(chǎn)業(yè)變革正在萌發(fā),大數(shù)據(jù)的形成、理論算法的革新、計算能力的提升及網(wǎng)絡(luò)設(shè)施的演進驅(qū)動人工智能發(fā)展進入新階段,智能化成為技術(shù)和產(chǎn)業(yè)發(fā)展的重要方向。人工智能具有顯著的溢出效應(yīng),將進一步帶動其他技術(shù)的進步,推動戰(zhàn)略性新興產(chǎn)業(yè)總體突破,正在成為推進供給側(cè)結(jié)構(gòu)性改革的新動能、振興實體經(jīng)濟的新機遇、建設(shè)制造強國和網(wǎng)絡(luò)強國的新引擎。
對于初學(xué)者而言,機器學(xué)習(xí)是一門難度較大的學(xué)科,其難點大致體現(xiàn)在以下三個方面:
首先,機器學(xué)習(xí)的大部分算法復(fù)雜難懂,這些算法對于初學(xué)者來說結(jié)構(gòu)復(fù)雜,概念抽象,特別是一些大型機器學(xué)習(xí)模型(如人工神經(jīng)網(wǎng)絡(luò)),很難將模型的所有細節(jié)一一呈現(xiàn),學(xué)習(xí)難度較大,學(xué)習(xí)門檻較高。因此學(xué)術(shù)界認為,隨著模型越來越復(fù)雜,機器學(xué)習(xí)模型的可解釋性(Interpretability)也會越來越差。例如,很多深度神經(jīng)網(wǎng)絡(luò)模型人類已無法完全理解,需要讀者從黑盒的層面進行理解。
其次,用機器學(xué)習(xí)方法解決某個實際應(yīng)用的過程是煩瑣且枯燥的。如收集數(shù)據(jù)、特征提取、數(shù)據(jù)標(biāo)準(zhǔn)化和數(shù)據(jù)降維等,這些數(shù)據(jù)預(yù)處理工作都很煩瑣且耗時,初學(xué)者如果對機器學(xué)習(xí)理解得不透徹,就很難堅持下去。
再次,模型的選擇、訓(xùn)練和評估需要考慮影響實際問題的各種因素,并要調(diào)整參數(shù),避免欠擬合和過擬合,這使得整個操作過程非常復(fù)雜。如果初學(xué)者對涉及的理論和方法掌握不到位,理解不透徹,就很容易出現(xiàn)問題,導(dǎo)致得到的機器學(xué)習(xí)模型性能太差而無法使用。
目前市面上有很多機器學(xué)習(xí)類圖書,這些圖書根據(jù)側(cè)重點不同大致可以分為兩類:類以講解機器學(xué)習(xí)的算法理論為主,而對機器學(xué)習(xí)的編程實現(xiàn)講述較少;第二類以講解機器學(xué)習(xí)編程為主,而對機器學(xué)習(xí)的算法理論講述較少。由于機器學(xué)習(xí)模型比較復(fù)雜,讀者如果不了解編程實現(xiàn),往往在將理論應(yīng)用于實踐去解決實際問題時會有困難;相應(yīng)地,讀者如果不了解機器學(xué)習(xí)的理論,那么對編程思想及各種參數(shù)的含義就很難理解,從而導(dǎo)致難以獨立編寫程序去解決實際問題。為了解決這些問題,讓機器學(xué)習(xí)變得更加通俗易懂,筆者編寫了本書。本書將機器學(xué)習(xí)的算法原理與編程實現(xiàn)結(jié)合起來講述,可以幫助讀者在理解算法的基礎(chǔ)上動手實踐,從而降低學(xué)習(xí)的門檻。
本書特色
* 提供微課視頻:筆者為本書的重點內(nèi)容錄制了11段微課配套教學(xué)視頻,幫助讀者高效、直觀地學(xué)習(xí)。讀者可以用手機或其他終端設(shè)備掃描書中的二維碼進行在線觀看,也可以直接將視頻下載到本地計算機上觀看。
* 立體化教學(xué)支持:本書各章都設(shè)置了大量的習(xí)題,涵蓋選擇題、填空題、問答題和實踐題等,并提供源代碼、教學(xué)PPT、習(xí)題參考答案、考試試卷、教學(xué)大綱和實驗指導(dǎo)等完善的立體化教學(xué)資料。
* 注重案例教學(xué):本書第3~8章各提供一個綜合案例,幫助讀者了解機器學(xué)習(xí)算法是如何處理各種細節(jié)問題的。掌握機器學(xué)習(xí)的目的是解決實際問題,因此要將相關(guān)算法用于實際案例。雖然人們開發(fā)了一些機器學(xué)習(xí)算法庫,即便不了解算法的具體細節(jié),也能編寫機器學(xué)習(xí)程序,但是要用這些算法解決實際問題,如果不了解算法細節(jié),則很難編寫出有實用價值的程序。
* 內(nèi)容重點突出:本書以面向初學(xué)者的視角詳細講述機器學(xué)習(xí)算法原理,展現(xiàn)機器學(xué)習(xí)的難點,注重解決讀者學(xué)習(xí)時容易“掉坑”的問題。
* 降低學(xué)習(xí)門檻:本書詳細介紹如何使用sklearn編寫機器學(xué)習(xí)程序。sklearn是一個封裝好的機器學(xué)習(xí)算法庫,簡單易學(xué),學(xué)習(xí)該算法庫可以幫助讀者加深對機器學(xué)習(xí)相關(guān)概念和模型的理解,為進一步學(xué)習(xí)TensorFlow深度學(xué)習(xí)算法打下基礎(chǔ)。
* 內(nèi)容實用性強:本書對所有的sklearn程序均使用Matplotlib庫實現(xiàn)數(shù)據(jù)分析的可視化,這使得本書內(nèi)容具有較強的實用性。
本書內(nèi)容
本書共8章,包括機器學(xué)習(xí)概述、Python機器學(xué)習(xí)與可視化、關(guān)聯(lián)規(guī)則與推薦算法、聚類、分類、回歸與邏輯回歸、人工神經(jīng)網(wǎng)絡(luò)、支持向量機。
本書讀者對象
本書既可作為高等院校相關(guān)專業(yè)機器學(xué)習(xí)和人工智能概論等課程的教材,也可作為機器學(xué)習(xí)算法入門讀者的自學(xué)讀物,還可作為人工智能、機器學(xué)習(xí)研究者和從業(yè)者的參考書。
配套教學(xué)資料獲取
本書涉及的源代碼、微課教學(xué)視頻、教學(xué)PPT、習(xí)題參考答案、考試試卷、教學(xué)大綱和實驗指導(dǎo)等配套資料的下載網(wǎng)址為https://mooc1.chaoxing.com/course/218580397.html。讀者也可以在華章公司的網(wǎng)站(www.hzbook.com)上搜索到本書,然后單擊“資料下載”按鈕,即可在本書頁面上找到下載鏈接進行下載。
本書作者
本書是湖南省普通高等學(xué)校教學(xué)改革研究項目(HNJG-2020-0687)的成果。本書由唐四薪主筆編寫,唐金娟參與編寫了本書第1章。
售后支持
本書在編寫的過程中參考了其他專家、學(xué)者和機器學(xué)習(xí)愛好者的相關(guān)資料,筆者已盡可能地在參考文獻中列出,在此表示感謝!有部分資料未能查到原作者而沒有羅列,在此表示歉意,但同時
編輯推薦
每種算法都采用sklearn程序?qū)崿F(xiàn)并用Matplotlib進行數(shù)據(jù)可視化
提供11個微課配套教學(xué)視頻,讀者可以掃碼在線觀看
11個微課教學(xué)視頻+89個示例+6個綜合案例+156個示意圖+131個習(xí)題
前言
第1章 機器學(xué)習(xí)概述1
1.1 機器學(xué)習(xí)的概念和步驟1
1.1.1 機器學(xué)習(xí)的一般過程2
1.1.2 機器學(xué)習(xí)的定義4
1.1.3 機器學(xué)習(xí)的過程舉例4
1.1.4 評估機器學(xué)習(xí)模型的效果7
1.2 機器學(xué)習(xí)的預(yù)處理環(huán)節(jié)9
1.2.1 收集相關(guān)樣本10
1.2.2 數(shù)據(jù)預(yù)處理10
1.2.3 數(shù)據(jù)標(biāo)準(zhǔn)化12
1.2.4 數(shù)據(jù)降維14
1.3 機器學(xué)習(xí)的類型15
1.3.1 按完成的任務(wù)分類15
1.3.2 按學(xué)習(xí)的過程分類16
1.4 機器學(xué)習(xí)的發(fā)展歷史和應(yīng)用領(lǐng)域17
1.4.1 機器學(xué)習(xí)的發(fā)展歷史17
1.4.2 機器學(xué)習(xí)的應(yīng)用領(lǐng)域20
1.5 習(xí)題22
第2章 Python機器學(xué)習(xí)與可視化24
2.1 Python程序入門24
2.1.1 一些簡單的Python程序24
2.1.2 序列數(shù)據(jù)結(jié)構(gòu)26
2.1.3 序列處理函數(shù)28
2.1.4 函數(shù)和類29
2.2 Python數(shù)據(jù)分析工具32
2.2.1 Anaconda的使用32
2.2.2 Spyder集成開發(fā)環(huán)境33
2.2.3 NumPy庫34
2.3 數(shù)據(jù)可視化——基于Matplotlib庫37
2.3.1 繪制曲線圖38
2.3.2 繪制散點圖等其他圖形43
2.4 SciPy庫47
2.5 sklearn庫49
2.5.1 樣本及樣本的劃分49
2.5.2 導(dǎo)入或創(chuàng)建數(shù)據(jù)集53
2.5.3 數(shù)據(jù)預(yù)處理56
2.5.4 數(shù)據(jù)的降維59
2.5.5 調(diào)用機器學(xué)習(xí)模型61
2.6 習(xí)題63
第3章 關(guān)聯(lián)規(guī)則與推薦算法65
3.1 關(guān)聯(lián)規(guī)則挖掘65
3.1.1 基本概念65
3.1.2 Apriori算法68
3.1.3 Apriori算法的程序?qū)崿F(xiàn)72
3.1.4 FP-Growth算法73
3.2 推薦系統(tǒng)及算法77
3.2.1 協(xié)同過濾推薦算法78
3.2.2 協(xié)同過濾推薦算法應(yīng)用實例81
3.3 利用協(xié)同過濾推薦算法實現(xiàn)電影節(jié)目推薦85
3.4 習(xí)題87
第4章 聚類89
4.1 聚類的原理與實現(xiàn)89
4.1.1 聚類的概念和類型89
4.1.2 如何度量距離89
4.1.3 聚類的基本步驟93
4.2 層次聚類算法97
4.2.1 層次聚類法舉例98
4.2.2 層次聚類法的sklearn實現(xiàn)99
4.3 K-means聚類算法103
4.3.1 K-means聚類算法的原理和實例104
4.3.2 K-means聚類算法的k值的確定110
4.3.3 K-means聚類算法的sklearn實現(xiàn)111
4.4 K-medoids聚類算法112
4.4.1 K-medoids聚類算法的原理和實例112
4.4.2 K-medoids聚類算法的sklearn實現(xiàn)118
4.5 DBSCAN聚類算法119
4.5.1 DBSCAN聚類算法的原理和實例119
4.5.2 DBSCAN聚類算法的sklearn實現(xiàn)124
4.6 利用聚類算法實現(xiàn)車牌識別126
4.7 習(xí)題129
第5章 分類130
5.1 分類的基本原理130
5.1.1 分類與聚類的區(qū)別131
5.1.2 分類的步驟132
5.1.3 分類模型預(yù)測結(jié)果評估134
5.1.4 sklearn庫的常用分類算法135
5.2 K-近鄰算法136
5.2.1 K-近鄰算法的原理和實例136
5.2.2 sklearn中分類模型的編程步驟140
5.2.3 K-近鄰算法的sklearn實現(xiàn)142
5.2.4 繪制分類邊界圖144
5.2.5 確定的k值146
5.3 樸素貝葉斯分類算法147
5.3.1 樸素貝葉斯的原理與實例148
5.3.2 樸素貝葉斯分類的常見問題152
5.3.3 樸素貝葉斯分類算法的sklearn實現(xiàn)154
5.4 決策樹分類算法156
5.4.1 信息論基礎(chǔ)157
5.4.2 ID3算法162
5.4.3 C4.5算法167
5.4.4 CART算法171
5.4.5 決策樹分類算法的sklearn實現(xiàn)173
5.5 隨機森林分類算法175
5.5.1 集成學(xué)習(xí)理論175
5.5.2 隨機森林分類算法的理論與實例177
5.5.3 隨機森林分類算法的sklearn實現(xiàn)183
5.6 利用運動手環(huán)數(shù)據(jù)預(yù)測身體姿態(tài)186
5.7 習(xí)題191
第6章 回歸與邏輯回歸193
6.1 線性回歸193
6.1.1 相關(guān)與回歸193
6.1.2 線性回歸分析194
6.1.3 線性回歸方程參數(shù)的求法196
6.1.4 線性回歸模型的sklearn實現(xiàn)201
6.2 邏輯回歸206
6.2.1 線性分類模型的原理206
6.2.2 邏輯回歸模型及實例209
6.3 邏輯回歸模型的sklearn實現(xiàn)212
6.3.1 sklearn中的邏輯回歸模型212
6.3.2 利用邏輯回歸模型預(yù)測是否錄取學(xué)生214
6.4 利用邏輯回歸模型預(yù)測貸款違約行為218
6.5 習(xí)題222
第7章 人工神經(jīng)網(wǎng)絡(luò)223
7.1 神經(jīng)元與感知機223
7.1.1 人工神經(jīng)元與邏輯回歸模型224
7.1.2 感知機模型225
7.1.3 感知機模型的Python實現(xiàn)227
7.1.4 多層感知機模型228
7.2 人工神經(jīng)網(wǎng)絡(luò)的核心要素231
7.2.1 神經(jīng)元的激活函數(shù)231
7.2.2 損失函數(shù)233
7.2.3 網(wǎng)絡(luò)結(jié)構(gòu)235
7.2.4 反向傳播236
7.3 人工神經(jīng)網(wǎng)絡(luò)的sklearn實現(xiàn)239
7.3.1 sklearn人工神經(jīng)網(wǎng)絡(luò)模塊239
7.3.2 利用人工神經(jīng)網(wǎng)絡(luò)預(yù)測二手房銷售數(shù)據(jù)240
7.4 深度學(xué)習(xí)與深度神經(jīng)網(wǎng)絡(luò)242
7.4.1 深度學(xué)習(xí)的概念和原理243
7.4.2 TensorFlow概述244
7.4.3