機器學習算法與實現 — Python 編程與應用實例

布樹輝 等

  • 出版商: 電子工業
  • 出版日期: 2022-11-01
  • 定價: $534
  • 售價: 8.0$427
  • 語言: 簡體中文
  • 頁數: 344
  • ISBN: 7121443899
  • ISBN-13: 9787121443893
  • 相關分類: Python程式語言Machine Learning
  • 立即出貨 (庫存 < 4)

買這商品的人也買了...

商品描述

機器學習是人工智能的重要方向之一,對提升各行業的智能化程度正在起越來越大的作用。本書通過凝練機器學習的核心思想與方法,綜合介紹了Python、常用庫和相關工具,以及機器學習的原理與實現,囊括了機器學習與行業相結合的實例,可讓沒有深厚電腦、編程背景的讀者在有限的時間內掌握機器學習的相關知識和應用工具。本書各部分的比例適當,在講授基本Python編程、庫函數的基礎上,由淺入深地介紹了機器學習的思想、方法和實現。理論講授部分從基本的最小二乘法開始,逐步深入地介紹瞭如何使用迭代求解的方法實現邏輯斯蒂回歸、感知機、神經網絡、深度神經網絡。本書配套有完整的在線講義、在線視頻、作業和練習項目,每章的習題、練習、報告等都配有對應的二維碼,讀者可直接訪問在線教程,選擇適合自己的資料。本書可作為電腦、智能科學與技術、航空航天、電子信息、自動化等專業碩士研究生和本科生的教材,也可供相關技術人員參考。

目錄大綱

第1章緒論 1
1.1 機器學習的發展歷程 2
1.2 機器學習的基本術語 2
1.2.1 特徵 3
1.2.2 樣本 3
1.2.3 模型 3
1.2.4 回歸、分類與聚類 4
1.2.5 泛化與過擬合 4
1.3 機器學習的基本分類 5
1.3.1 監督學習 5
1.3.2 無監督學習 5
1.3.3 半監督學習 5
1.3.4 深度學習 6
1.3.5 強化學習 8
1.3.6 機器學習與人工智能 8
1.4 機器學習的應用 9
1.4.1 圖像識別與處理 9
1.4.2 語音識別與自然語言處理 10
1.4.3 環境感知與智能決策 11
1.4.4 融合物理信息的工程設計 12
1.5 機器學習應用的步驟 13
1.5.1 應用場景分析 14
1.5.2 數據處理 14
1.5.3 特徵工程 14
1.5.4 算法模型訓練與評估 15
1.5.5 應用服務 15
1.6 機器學習的評估方法 15
1.6.1 數據集劃分方法 15
1.6.2 性能度量 16
1.7 如何學習機器學習 17
1.7.1 由淺入深 17
1.7.2 行成於思 17

第2章Python語言 18
2.1 為什麼選擇Python 18
2.2 安裝Python的環境 19
2.2.1 Windows下的安裝 19
2.2.2 Linux下的安裝 19
2.2.3 設置軟件源 20
2.2.4 安裝常用Python庫 20
2.2.5 安裝PyTorch 20
2.2.6 Conda使用技巧 21
2.3 Jupyter Notebook 21
2.3.1 Jupyter Notebook的主頁面 22
2.3.2 Jupyter Notebook的快捷鍵 24
2.3.3 Magic關鍵字 25
2.4 Python基礎 25
2.4.1 變量 26
2.4.2 運算符 27
2.4.3 內置函數 28
2.5 print()函數 29
2.6 數據結構 30
2.6.1 列表 31
2.6.2 元組 38
2.6.3 集合 40
2.6.4 字符串 42
2.6.5 字典 46
2.7 控制流語句 48
2.7.1 判斷語句 48
2.7.2 循環語句 50
2.8 函數 55
2.8.1 函數的參數 55
2.8.2 返回語句 56
2.8.3 默認參數 58
2.8.4 任意數量的參數 58
2.8.5 全局變量和局部變量 59
2.8.6 lambda函數 60
2.9 類和對象 60
2.9.1 成員函數與變量 61
2.9.2 繼承 64
2.10 小結 66
2.11 練習題 66
2.12 在線練習題 67

第3章Python常用庫 68
3.1 NumPy數值計算庫 68
3.1.1 創建NumPy數組 69
3.1.2 訪問數組元素 73
3.1.3 文件讀寫 77
3.1.4 線性代數函數 79
3.1.5 數據統計 80
3.1.6 數組的操作 83
3.2 Matplotlib繪圖庫 87
3.2.1 多子圖繪製 88
3.2.2 圖像處理 89
3.3 小結 89
3.4 練習題 89
3.5 在線練習題 90

第4章k最近鄰算法 91
4.1 k最近鄰原理 91
4.1.1 特徵距離計算 92
4.1.2 算法步驟 92
4.2 機器學習的思維模型 93
4.3 數據生成 93
4.4 程序實現 95
4.5 將kNN算法封裝為類 97
4.6 基於sklearn的分類實現 98
4.7 小結 100
4.8 練習題 100
4.9 在線練習題 100

第5章k均值聚類算法 101
5.1 無監督學習思想 101
5.2 k均值聚類原理 102
5.3 k均值聚類算法 103
5.4 算法操作過程演示 103
5.5 k均值聚類算法編程實現 105
5.6 使用sklearn進行聚類 109
5.7 評估聚類性能 110
5.7.1 調整蘭德指數 110
5.7.2 輪廓係數 111
5.8 k均值圖像壓縮 112
5.9 小結 114
5.10 練習題 115
5.11 在線練習題 115

第6章邏輯斯蒂回歸 116
6.1 最小二乘法 116
6.1.1 數據生成 116
6.1.2 最小二乘法的數學原理 117
6.1.3 最小二乘法的程序實現 118
6.2 梯度下降法 119
6.2.1 梯度下降法的原理 119
6.2.2 梯度下降法的實現 121
6.2.3 迭代可視化 123
6.2.4 梯度下降法的優化 124
6.3 多元線性回歸 125
6.3.1 導彈彈道預測算法 125
6.3.2 建模與編程求解 126
6.4 使用sklearn庫進行擬合 127
6.5 邏輯斯蒂回歸的原理 128
6.5.1 數學模型 129
6.5.2 算法流程 131
6.6 邏輯斯蒂回歸的實現 131
6.6.1 邏輯斯蒂回歸示例程序 132
6.6.2 使用sklearn解決邏輯斯蒂回歸問題 134
6.6.3 多類識別問題 136
6.7 小結 140
6.8 練習題 140
6.9 在線練習題 140

第7章神經網絡 141
7.1 感知機 141
7.1.1 感知機模型 142
7.1.2 感知機學習策略 143
7.1.3 感知機學習算法 143
7.1.4 示例程序 144
7.2 多層神經網絡 147
7.2.1 神經元 147
7.2.2 神經網絡架構 148
7.2.3 神經網絡正向計算 148
7.2.4 神經網絡矩陣表示 149
7.2.5 神經網絡訓練 151
7.2.6 激活函數 155
7.2.7 神經網絡訓練算法設計 157
7.2.8 示例程序 158
7.2.9 使用類的方法封裝多層神經網絡 161
7.3 softmax函數與交叉熵代價函數 165
7.3.1 softmax函數 165
7.3.2 交叉熵代價函數 167
7.4 小結 169
7.5 練習題 169
7.6 在線練習題 170

第8章PyTorch 171
8.1 張量 171
8.1.1 Tensor的生成 171
8.1.2 Tensor的操作 173
8.1.3 Tensor的維度操作 173
8.1.4 Tensor的變形 175
8.1.5 inplace操作 175
8.2 自動求導 176
8.2.1 簡單情況下的自動求導 177
8.2.2 複雜情況下的自動求導 178
8.2.3 多次自動求導 180
8.3 神經網絡模型 180
8.3.1 邏輯斯蒂回歸與神經網絡 180
8.3.2 序列化模型 185
8.3.3 模塊化網絡定義 187
8.3.4 模型參數保存 189
8.4 神經網絡的定義與訓練 191
8.4.1 MNIST數據集 191
8.4.2 CIFAR-10數據集 192
8.4.3 多分類神經網絡 192
8.4.4 參數初始化 198
8.4.5 模型優化求解 202
8.5 綜合示例代碼 212
8.6 小結 214
8.7 練習題 215
8.8 在線練習題 215

第9章深度學習 216
9.1 卷積神經網絡 216
9.1.1 卷積網絡的基礎 217
9.1.2 卷積計算與模塊 220
9.1.3 數據預處理與批量歸一化 223
9.1.4 網絡正則化 229
9.1.5 學習率衰減 231
9.2 典型的深度神經網絡 235
9.2.1 LeNet5 235
9.2.2 AlexNet 240
9.2.3 VGG 245
9.2.4 GoogLeNet 250
9.2.5 ResNet 254
9.2.6 DenseNet 260
9.3 小結 265
9.4 練習題 265
9.5 在線練習題 265

第10章目標檢測 266
10.1 目標檢測的任務 266
10.2 目標檢測的發展歷程 267
10.3 目標檢測評估方法 269
10.3.1 交並比 269
10.3.2 精度 270
10.3.3 平均精度 271
10.3.4 平均精度均值 271
10.4 目標檢測的原理 271
10.4.1 YOLO-v1 271
10.4.2 YOLO-v2 280
10.4.3 YOLO-v3 280
10.4.4 YOLO-v4 281
10.4.5 YOLO-v5 281
10.5 YOLO-v4原理與實現 283
10.5.1 主幹特徵提取網絡 283
10.5.2 特徵金字塔 287
10.5.3 利用特徵進行預測 289
10.5.4 預測結果的解碼 290
10.5.5 在原始圖像上進行繪製 295
10.6 YOLO-v4的技巧及損失函數分析 295
10.6.1 Mosaic數據增強 295
10.6.2 CIoU 299
10.6.3 損失函數 300
10.7 訓練自己的YOLO-v4模型 307
10.7.1 數據集的準備 307
10.7.2 數據集處理 307
10.7.3 網絡訓練 308
10.7.4 訓練結果預測 310
10.8 小結 310
10.9 練習題 310
10.10 在線練習題 310

第11章深度強化學習 311
11.1 強化學習 311
11.1.1 強化學習的基本概念 312
11.1.2 馬爾可夫決策過程 313
11.1.3 Q學習算法 315
11.1.4 示例程序 317
11.2 深度強化學習 320
11.3 倒立擺的控制示例 321
11.3.1 仿真環境 322
11.3.2 第三方庫 322
11.3.3 經驗回放內存 323
11.3.4 Q網絡 324
11.3.5 輸入數據截取 324
11.3.6 超參數和工具函數 325
11.3.7 網絡訓練 327
11.4 小結 329
11.5 練習題 330
11.6 在線練習題 330
參考文獻 331
術語表 333