機器學習(2021年機械工業出版社出版的圖書)

機器學習(2021年機械工業出版社出版的圖書)

本詞條是多義詞,共7個義項
更多義項 ▼ 收起列表 ▲

《機器學習》是2021年機械工業出版社出版的圖書。

基本介紹

  • 中文名:機器學習
  • 作者:(印)阿迪蒂亞·夏爾馬、(印)維什韋什·拉維·什里馬利、(美)麥可·貝耶勒
  • 出版時間:2021年
  • 出版社:機械工業出版社
  • ISBN:9787111668268
內容簡介,圖書目錄,作者簡介,

內容簡介

  《機器學習:使用OpenCV、Python和scikit-learn進行智慧型圖像處理(原書第2版)》是一本基於OpenCV4和Python的機器學習實戰手冊,既詳細介紹機器學習及OpenCV相關的基礎知識,又通過具體實例展示如何使用OpenCV和Python實現各種機器學習算法,並提供大量示例代碼,可以幫助你掌握機器學習實用技巧,解決各種不同的機器學習和圖像處理問題。
  《機器學習:使用OpenCV、Python和scikit-learn進行智慧型圖像處理(原書第2版)》共13章:第1章簡要介紹機器學習基礎知識,並講解如何安裝OpenCV和Python工具;第2章介紹基本的OpenCV函式;第3章討論監督學習算法,以及如何使用OpenCV和scikit-learn實現這些算法;第4章討論數據表示和特徵工程,並介紹OpenCV中提供的用於處理圖像數據的常見特徵提取技術;第5章展示如何使用OpenCV構建決策樹進行醫療診斷;第6章討論如何使用OpenCV構建支持向量機檢測行人;第7章討論樸素貝葉斯算法、多項式樸素貝葉斯等技術及實現,並展示如何使用貝葉斯學習實現垃圾郵件過濾;第8章討論一些無監督學習算法;第9章詳細講解如何構建深度神經網路來分類手寫數字;第10章介紹用於分類的隨機森林、bagging方法和boosting方法等;第11章討論如何通過模型選擇和超參數調優來比較各種分類器的結果;第12章介紹OpenCV4.0中引入的OpenVINO工具包;第13章給出一些處理實際機器學習問題的提示和技巧。
  OpenCV是用於構建計算機視覺應用程式的一個開源庫。《機器學習:使用OpenCV、Python和scikit-learn進行智慧型圖像處理(原書第2版)》將全面介紹新發布的OpenCV4版本所提供的大量新特性和平台改進。
  首先,你將了解OpenCV4的新特性並安裝OpenCV4來構建計算機視覺應用程式。然後,你將探索機器學習的基礎知識,學習設計用於圖像處理的各種算法,循序漸進地掌握監督學習和無監督學習,並將獲得使用Python中的scikit-learn開發各種機器學習應用程式的實踐經驗。接著,你將學習決策樹、支持向量機(SVM)、貝葉斯學習等各種機器學習算法,以及如何將這些算法套用於目標檢測等計算機視覺操作。之後,你將深入研究深度學習和集成學習,並探索它們在現實世界中的套用,如手寫數字分類和手勢識別等。最後,你將學習用於構建圖像處理系統的英特爾OpenVINO工具包。
  學習完《機器學習:使用OpenCV、Python和scikit-learn進行智慧型圖像處理(原書第2版)》,你將掌握使用OpenCV4構建智慧型計算機視覺應用程式所需要的機器學習技能。

圖書目錄

譯者序
前言
作者簡介
審校者簡介
第一部分 機器學習與OpenCV的基礎知識
第1章 機器學習體驗2
11 技術需求3
12 開始機器學習3
13 機器學習可以解決的問題4
14 開始使用Python5
15 開始使用OpenCV6
16 安裝6
161 獲取本書的最新代碼7
162 了解Python的Anaconda發行版8
163 在conda環境中安裝OpenCV9
164 安裝驗證10
165 OpenCV的ml模組概覽12
17 機器學習的套用13
18 OpenCV 40的新功能13
19 本章小結14
第2章 用OpenCV處理數據15
21 技術需求15
22 理解機器學習的工作流程16
23 使用OpenCV和Python處理數據18
231 開始一個新的IPython或Jupyter會話18
232 使用Python的NumPy包處理數據20
233 用Python載入外部數據集24
234 使用Matplotlib可視化數據25
235 使用C++中的OpenCV TrainData容器處理數據29
24 本章小結30
第3章 監督學習的第一步31
31 技術需求31
32 理解監督學習32
321 看看OpenCV中的監督學習33
322 用評分函式度量模型性能33
33 使用分類模型預測類標籤39
331 理解k-NN算法40
332 用OpenCV實現k-NN40
34 使用回歸模型預測連續的結果47
341 理解線性回歸47
342 OpenCV中的線性回歸48
343 使用線性回歸預測波士頓房價51
344 Lasso回歸和嶺回歸的套用54
35 使用邏輯回歸分類鳶尾花的種類55
351 理解邏輯回歸55
352 載入訓練數據56
353 使其成為一個二值分類問題57
354 數據檢查57
355 將數據拆分成訓練集和測試集58
356 訓練分類器58
357 測試分類器59
36 本章小結59
第4章 數據表示和特徵工程60
41 技術需求61
42 理解特徵工程61
43 數據預處理62
431 特徵標準化62
432 特徵歸一化63
433 將特徵縮放到一個範圍64
434 特徵二值化64
435 缺失數據的處理65
44 理解降維66
441 用OpenCV實現主成分分析67
442 實現獨立成分分析70
443 實現非負矩陣分解71
444 使用t-分布隨機鄰域嵌入可視化降維72
45 類別變數的表示74
46 文本特徵的表示75
47 圖像的表示77
471 使用顏色空間77
472 檢測圖像中的角點79
473 使用star檢測器和BRIEF描述符82
474 使用面向FAST和可旋轉的BRIEF84
48 本章小結85
第二部分 基於OpenCV的運算
第5章 基於決策樹進行醫療診斷88
51 技術需求88
52 理解決策樹89
521 構建我們的第一棵決策樹91
522 可視化一棵經過訓練的決策樹97
523 探究決策樹的內部工作原理99
524 評估特徵的重要性100
525 理解決策規則101
526 控制決策樹的複雜度102
53 使用決策樹診斷乳腺癌102
531 載入數據集103
532 構建決策樹104
54 使用決策樹進行回歸108
55 本章小結111
第6章 利用支持向量機進行行人檢測112
61 技術需求113
62 理解線性SVM113
621 學習最優決策邊界113
622 實現我們的第一個SVM115
63 處理非線性決策邊界120
631 理解核技巧121
632 了解我們的核121
633 實現非線性SVM122
64 檢測自然場景中的行人123
641 獲取數據集124
642 面向梯度的直方圖概述126
643 生成負樣本127
644 實現SVM128
645 bootstrapping模型129
646 檢測更大圖像中的行人130
647 進一步完善模型132
65 使用SVM的多類分類133
651 關於數據134
652 屬性信息134
66 本章小結136
第7章 利用貝葉斯學習實現一個垃圾郵件過濾器137
71 技術需求138
72 理解貝葉斯推理138
721 機率理論概述138
722 理解貝葉斯定理139
723 理解樸素貝葉斯分類器142
73 實現第一個貝葉斯分類器143
731 創建一個玩具數據集143
732 使用普通貝葉斯分類器對數據進行分類144
733 使用樸素貝葉斯分類器對數據進行分類147
734 可視化條件機率147
74 使用樸素貝葉斯分類器分類郵件149
741 載入數據集150
742 使用pandas建立一個數據矩陣152
743 數據預處理153
744 訓練一個普通貝葉斯分類器153
745 在完整數據集上訓練154
746 使用n-grams提升結果154
747 使用TF-IDF提升結果155
75 本章小結156
第8章 利用無監督學習發現隱藏結構157
81 技術需求157
82 理解無監督學習158
83 理解k-均值聚類158
84 理解最大期望161
841 實現最大期望解決方案162
842 了解最大期望的局限性164
85 使用k-均值壓縮顏色空間169
851 可視化真彩色調色板170
852 使用k-均值減少調色板的顏色172
86 使用k-均值分類手寫數字174
861 載入數據集175
862 運行k-均值175
87 將聚類組織為層次樹176
871 理解層次聚類177
872 實現凝聚層次聚類178
873 聚類算法比較179
88 本章小結180
第三部分 基於OpenCV的高級機器學習
第9章 使用深度學習分類手寫數字182
91 技術需求182
92 理解McCulloch-Pitts神經元183
93 理解感知器185
94 實現第一個感知器187
941 生成一個玩具數據集188
942 擬合感知器和數據189
943 評估感知器分類器190
944 將感知器套用於非線性可分的數據191
95 理解多層感知器193
951 理解梯度下降194
952 基於反向傳播訓練多層感知器196
953 用OpenCV實現一個多層感知器197
96 結識深度學習202
97 分類手寫數字205
971 載入MNIST數據集205
972 預處理MNIST數據集206
973 使用OpenCV訓練一個多層感知器207
974 使用Keras訓練深度神經網路208
98 本章小結211
第10章 集成分類方法212
101 技術需求213
102 理解集成方法213
1021 理解平均集成214
1022 理解boosting集成217
1023 理解疊加集成219
103 將決策樹組合成隨機森林220
1031 理解決策樹的缺點220
1032 實現第一個隨機森林224
1033 用scikit-learn實現一個隨機森林225
1034 實現超隨機樹226
104 利用隨機森林進行人臉識別228
1041 載入數據集228
1042 預處理數據集229
1043 隨機森林的訓練和測試230
105 實現AdaBoost232
1051 用OpenCV實現AdaBoost232
1052 用scikit-learn實現AdaBoost233
106 把各種模型組合成一個投票分類器234
1061 理解各種投票方案234
1062 實現一個投票分類器235
1063 簡單多數236
107 本章小結237
第11章 選擇正確的模型與超參數調優238
111 技術需求239
112 模型評估239
1121 模型評估的錯誤方式239
1122 模型評估的正確方式240
1123 選擇最佳模型241
113 理解交叉驗證244
1131 用OpenCV手動實現交叉驗證246
1132 用scikit-learn進行k折交叉驗證247
1133 實現留一法交叉驗證247
114 利用bootstrapping評估魯棒性248
115 評估結果的顯著性250
1151 實現Student t-檢驗251
1152 實現McNemar檢驗252
116 基於格線搜尋的超參數調優253
1161 實現一個簡單的格線搜尋254
1162 理解驗證集的值255
1163 格線搜尋與交叉驗證結合256
1164 格線搜尋與嵌套交叉驗證結合258
117 利用各種評估指標對模型評分259
1171 選擇正確的分類器評估指標259
1172 選擇正確的回歸評估指標260
118 將算法連結起來形成管道260
1181 用scikit-learn實現管道261
1182 在格線搜尋中使用管道262
119 本章小結263
第12章 使用基於OpenCV的OpenVINO264
121 技術需求264
122 OpenVINO簡介265
123 OpenVINO工具包安裝265
124 互動式人臉檢測演示266
125 使用基於OpenCV的OpenVINO推理引擎267
126 使用基於OpenCV的OpenVINO模型組268
127 使用OpenCV和OpenVINO推理引擎進行圖像分類269
1271 利用OpenVINO進行圖像分類270
1272 利用OpenCV和OpenVINO進行圖像分類271
128 本章小結273
第13章 尾聲274
131 技術需求274
132 機器學習問題的解決方案275
133 構建自己的估計器276
1331 用C++編寫自己的基於OpenCV的分類器276
1332 用Python編寫自己的基於scikit-learn的分類器278
134 接下來要做的工作280
135 本章小結281

作者簡介

  阿迪蒂亞·夏爾馬(Aditya Sharma),羅伯特·博世(Robert Bosch)公司的一名高級工程師,致力於解決真實世界的自動計算機視覺問題。曾獲得羅伯特·博世公司2019年人工智慧編程馬拉松的首名。在印度理工學院,他於2019年的ICIP和2019年的MICCAI上發表了有關深度學習醫學成像的論文。在國際信息技術學院,他的工作主要是文檔圖像超分辨。
  他還是一個積極進取的作家,曾為DataCamp和LearnOpenCV撰寫過很多有關機器學習和深度學習的文章。他不僅經營著自己的YouTube頻道,還在NCVPRIPG會議(2017)以及阿里格爾穆斯林大學(Aligarh Muslim University)的深度學習研討會上做過演講。
  
  維什韋什·拉維·什里馬利(Vishwesh Ravi Shrimali),於2018年畢業於彼拉尼博拉理工學院(BITS Pilani)機械工程專業。此後一直在BigVision LLC從事深度學習和計算機視覺方面的工作,還參與了官方OpenCV課程的創建。他對編程和人工智慧有著濃厚的興趣,並將其套用到機械工程項目中。他還在LearnOpenCV上寫了多篇有關OpenCV和深度學習的部落格。除了撰寫部落格和做項目,他喜歡散步和彈奏木吉他。
  
  麥可·貝耶勒(Michael Beyeler),是華盛頓大學神經工程和數據科學的博士後研究員,致力於仿生視覺的計算模型研究,以為盲人植入人工視網膜(仿生眼睛),改善盲人的感知體驗。他的工作屬於神經科學、計算機工程、計算機視覺和機器學習的交叉領域。他還是幾個開源軟體項目的主要貢獻者,並在Python、C/C++、CUDA、MATLAB和Android等方面擁有專業的編程經驗。麥可在加州大學歐文分校獲得計算機科學博士學位,在瑞士蘇黎世聯邦理工學院獲得生物醫學工程碩士學位和電子工程學士學位。

相關詞條

熱門詞條

聯絡我們