Python機(jī)器學(xué)習(xí)手冊(cè):從數(shù)據(jù)預(yù)處理到深度學(xué)習(xí)
定 價(jià):89 元
當(dāng)前圖書(shū)已被 30 所學(xué)校薦購(gòu)過(guò)!
查看明細(xì)
- 作者:(美)Chris Albon(克里斯·阿爾本)
- 出版時(shí)間:2019/7/1
- ISBN:9787121369629
- 出 版 社:電子工業(yè)出版社
- 中圖法分類(lèi):TP311.561
- 頁(yè)碼:
- 紙張:膠版紙
- 版次:
- 開(kāi)本:16開(kāi)
這是一本關(guān)于Python的圖書(shū),采用基于任務(wù)的方式來(lái)介紹如何在機(jī)器學(xué)習(xí)中使用Python。書(shū)中有近200個(gè)獨(dú)立的解決方案(并提供了相關(guān)代碼,讀者可以復(fù)制并粘貼這些代碼,用在自己的程序中),針對(duì)的都是數(shù)據(jù)科學(xué)家或機(jī)器學(xué)習(xí)工程師在構(gòu)建模型時(shí)可能遇到的*常見(jiàn)任務(wù),涵蓋*簡(jiǎn)單的矩陣和向量運(yùn)算到特征工程以及神經(jīng)網(wǎng)絡(luò)的構(gòu)建。本書(shū)不是機(jī)器學(xué)習(xí)的入門(mén)書(shū),適合熟悉機(jī)器學(xué)習(xí)的理論和概念的讀者擺在案頭作為參考,他們可以借鑒書(shū)中的代碼,快速解決在機(jī)器學(xué)習(xí)的日常開(kāi)發(fā)中遇到的挑戰(zhàn)。
采用基于任務(wù)的方式介紹機(jī)器學(xué)習(xí)
涵蓋在構(gòu)建機(jī)器學(xué)習(xí)模型時(shí)可能遇到的常見(jiàn)任務(wù)
提供近200個(gè)小任務(wù)的解決方案,以及代碼
在代碼中加深對(duì)理論的理解
序
在過(guò)去幾年中,機(jī)器學(xué)習(xí)已經(jīng)滲透到企業(yè)、非營(yíng)利組織和政府的日常運(yùn)作中。隨著機(jī)器學(xué)習(xí)熱度的增長(zhǎng),在對(duì)機(jī)器學(xué)習(xí)從業(yè)者的指導(dǎo)方面上,涌現(xiàn)了一批高質(zhì)量的文獻(xiàn)。這類(lèi)文獻(xiàn)培養(yǎng)了整整一代的數(shù)據(jù)科學(xué)家和機(jī)器學(xué)習(xí)工程師。這類(lèi)文獻(xiàn)從提供學(xué)習(xí)資源的角度來(lái)探討機(jī)器學(xué)習(xí),為人們講解機(jī)器學(xué)習(xí)是什么以及它的工作原理。盡管這種方法富有成效,但卻遺漏了一部分內(nèi)容:機(jī)器學(xué)習(xí)日常開(kāi)發(fā)中的細(xì)節(jié)。這就是筆者寫(xiě)本書(shū)的動(dòng)機(jī)本書(shū)不是寫(xiě)給學(xué)生讀者的學(xué)習(xí)機(jī)器學(xué)習(xí)理論的大部頭,而是寫(xiě)給專(zhuān)業(yè)人士的扳手型工具書(shū)。我希望你把它放在書(shū)桌上,把你感興趣的某些頁(yè)折起來(lái),在日常開(kāi)發(fā)中需要解決實(shí)際問(wèn)題時(shí)就拿過(guò)來(lái)翻一翻。
更具體地說(shuō),本書(shū)采用基于任務(wù)的方式來(lái)介紹機(jī)器學(xué)習(xí),有近200個(gè)獨(dú)立的解決方案(你可以復(fù)制并粘貼這些代碼,而它們將正常運(yùn)行),針對(duì)的都是數(shù)據(jù)科學(xué)家或機(jī)器學(xué)習(xí)工程師在構(gòu)建模型時(shí)可能遇到的最常見(jiàn)的任務(wù)。
本書(shū)的最終目標(biāo)是成為人們?cè)跇?gòu)建真實(shí)的機(jī)器學(xué)習(xí)系統(tǒng)時(shí)的參考書(shū)。例如,假設(shè)你有一個(gè)JSON文件,其中包含1000個(gè)具有缺失值的分類(lèi)特征和數(shù)值型特征,并且目標(biāo)向量的分類(lèi)不均衡,你想得到一個(gè)可解釋的模型。本書(shū)提供的解決方案可以幫助你解決如下問(wèn)題:
? 加載JSON文件(2.5 節(jié))
? 特征的標(biāo)準(zhǔn)化(4.2 節(jié))
? 對(duì)特征字典編碼(5.3節(jié))
? 填充缺失的分類(lèi)值(5.4節(jié))
? 使用主成分進(jìn)行特征降維(9.1節(jié))
? 使用隨機(jī)搜索選擇最佳模型(12.2節(jié))
? 訓(xùn)練隨機(jī)森林分類(lèi)器(14.4節(jié))
? 選擇隨機(jī)森林中的重要特征(14.7節(jié))
目標(biāo)是讓你:
1. 復(fù)制/粘貼代碼,并確信它能很好地運(yùn)行在玩具數(shù)據(jù)集(toy dataset) 上。
2. 閱讀每一節(jié)后面的討論以增進(jìn)對(duì)代碼背后的理論的理解,并了解哪些參數(shù)是需要重點(diǎn)考慮的因素。
3. 對(duì)書(shū)中的代碼進(jìn)行各種組合與修改,以構(gòu)建實(shí)際的應(yīng)用。
哪些人適合閱讀本書(shū)
本書(shū)不是機(jī)器學(xué)習(xí)的入門(mén)書(shū)。如果你對(duì)機(jī)器學(xué)習(xí)的基本概念還不太了解,或者從未花時(shí)間學(xué)習(xí)過(guò)機(jī)器學(xué)習(xí),請(qǐng)不要購(gòu)買(mǎi)本書(shū)。本書(shū)適合機(jī)器學(xué)習(xí)的實(shí)踐者閱讀,他們熟悉機(jī)器學(xué)習(xí)的理論和概念,可以參考書(shū)中的代碼快速解決在日常開(kāi)發(fā)中遇到的挑戰(zhàn)。
另外,本書(shū)假定讀者熟悉Python編程語(yǔ)言和包管理。
哪些人不適合閱讀本書(shū)
如前所述,本書(shū)不是機(jī)器學(xué)習(xí)的入門(mén)書(shū)。因此,它不應(yīng)該是你的第一本機(jī)器學(xué)習(xí)書(shū)。如果你還不熟悉交叉驗(yàn)證、隨機(jī)森林和梯度下降等概念,那么相比那些專(zhuān)門(mén)介紹這些主題的書(shū)來(lái)說(shuō),本書(shū)可能不會(huì)為你帶來(lái)收獲。建議你先閱讀一本入門(mén)類(lèi)機(jī)器學(xué)習(xí)圖書(shū),再閱讀本書(shū)來(lái)學(xué)習(xí)機(jī)器學(xué)習(xí)的實(shí)用解決方案。
書(shū)中用到的術(shù)語(yǔ)
機(jī)器學(xué)習(xí)利用了很多領(lǐng)域的技術(shù),包括計(jì)算機(jī)科學(xué)、統(tǒng)計(jì)學(xué)和數(shù)學(xué)。因此,在關(guān)于機(jī)器學(xué)習(xí)的討論中會(huì)使用各種各樣的術(shù)語(yǔ):
觀察值 (observation)
我們觀察到的單個(gè)單位例如一個(gè)人、一次銷(xiāo)售或一條記錄。
學(xué)習(xí)算法(learning algorithm)
用來(lái)學(xué)習(xí)模型的最佳參數(shù)的算法例如線性回歸、樸素貝葉斯或決策樹(shù)。
模型(model)
學(xué)習(xí)算法的輸出。學(xué)習(xí)算法訓(xùn)練出的模型可以用來(lái)做預(yù)測(cè)。
參數(shù)(parameter)
一個(gè)模型在訓(xùn)練過(guò)程中學(xué)習(xí)到的權(quán)重或系數(shù)。
超參數(shù)(hyperparameter)
一個(gè)學(xué)習(xí)算法在訓(xùn)練前需要設(shè)置的一組參數(shù)。
性能(performance)
用來(lái)評(píng)估模型的指標(biāo)。
損失(loss)
一個(gè)需要在訓(xùn)練中最小化或最大化的指標(biāo)。
訓(xùn)練(train)
使用類(lèi)似于梯度下降之類(lèi)的數(shù)學(xué)方法將一個(gè)學(xué)習(xí)算法應(yīng)用到數(shù)據(jù)上。
擬合(fit)
使用分析方法將一個(gè)機(jī)器學(xué)習(xí)算法應(yīng)用到數(shù)據(jù)上。
數(shù)據(jù)(data)
一組觀察值。
致謝
沒(méi)有一些朋友和陌生人的幫助,這本書(shū)是不可能完成的。很難列出提供過(guò)幫助的所有人的名字,但我想至少提一下這些人:Angela Bassa、Teresa Borcuch、Justin Bozonier、Andre deBruin、Numa Dhamani、Dan Friedman、Joel Grus、Sarah Guido、Bill Kam-bouroglou、Mat Kelcey、Lizzie Kumar、Hilary Parker、Niti Paudyal、Sebastian Raschka和Shreya Shankar。
我欠他們所有人一瓶啤酒,或者五瓶。
Chris Albon是一位有十年經(jīng)驗(yàn)的數(shù)據(jù)科學(xué)家和政治學(xué)家,他將統(tǒng)計(jì)學(xué)習(xí)、人工智能和軟件工程應(yīng)用到政治和社會(huì)活動(dòng)以及人道主義活動(dòng)中,譬如監(jiān)查選舉情況、災(zāi)難救助等。目前,Chris是肯尼亞創(chuàng)業(yè)公司BRCK的首席數(shù)據(jù)科學(xué)家。這家公司致力于為前沿市場(chǎng)的互聯(lián)網(wǎng)用戶構(gòu)建一個(gè)穩(wěn)健的網(wǎng)絡(luò)。
韓慧昌,畢業(yè)于北京科技大學(xué),ThoughtWorks高級(jí)咨詢師,有多個(gè)大型企業(yè)AI項(xiàng)目經(jīng)驗(yàn)。林然,有6年多的開(kāi)發(fā)經(jīng)驗(yàn)、4年多Python開(kāi)發(fā)經(jīng)驗(yàn),在航空、零售、物流、汽車(chē)、通訊等多個(gè)行業(yè)應(yīng)用過(guò)機(jī)器學(xué)習(xí)算法。徐江,畢業(yè)于瑞典皇家理工學(xué)院的系統(tǒng)生物學(xué)專(zhuān)業(yè),曾就職于Thoughtworks軟件技術(shù)有限公司。
第1章 向量、矩陣和數(shù)組
1.0 簡(jiǎn)介
1.1 創(chuàng)建一個(gè)向量
問(wèn)題描述
解決方案
討論
延伸閱讀
1.2 創(chuàng)建一個(gè)矩陣
問(wèn)題描述
解決方案
討論
延伸閱讀
1.3 創(chuàng)建一個(gè)稀疏矩陣
問(wèn)題描述
解決方案
討論
延伸閱讀
1.4 選擇元素
問(wèn)題描述
解決方案
討論
1.5 展示一個(gè)矩陣的屬性
問(wèn)題描述
解決方案
討論
1.6 對(duì)多個(gè)元素同時(shí)應(yīng)用某個(gè)操作
問(wèn)題描述
解決方案
討論
1.7 找到最大值和最小值
問(wèn)題描述
解決方案
討論
1.8 計(jì)算平均值、方差和標(biāo)準(zhǔn)差
問(wèn)題描述
解決方案
討論
1.9 矩陣變形
問(wèn)題描述
解決方案
討論
1.10 轉(zhuǎn)置向量或矩陣
問(wèn)題描述
解決方案
討論
1.11 展開(kāi)一個(gè)矩陣
問(wèn)題描述
解決方案
討論
1.12 計(jì)算矩陣的秩
問(wèn)題描述
解決方案
討論
延伸閱讀
1.13 計(jì)算行列式
問(wèn)題描述
解決方案
討論
延伸閱讀
1.14 獲取矩陣的對(duì)角線元素
問(wèn)題描述
解決方案
討論
1.15 計(jì)算矩陣的跡
延伸閱讀
1.16 計(jì)算特征值和特征向量
問(wèn)題描述
解決方案
討論
延伸閱讀
1.17 計(jì)算點(diǎn)積
問(wèn)題描述
解決方案
討論
延伸閱讀
1.18 矩陣的加/減
問(wèn)題描述
解決方案
討論
1.19 矩陣的乘法
問(wèn)題描述
解決方案
討論
延伸閱讀
1.20 計(jì)算矩陣的逆
問(wèn)題描述
解決方案
討論
1.21 生成隨機(jī)數(shù)
問(wèn)題描述
解決方案
討論
第2章 加載數(shù)據(jù)
2.0 簡(jiǎn)介
2.1 加載樣本數(shù)據(jù)集
問(wèn)題描述
解決方案
討論
延伸閱讀
2.2 創(chuàng)建仿真數(shù)據(jù)集
問(wèn)題描述
解決方案
討論
延伸閱讀
2.3 加載CSV文件
問(wèn)題描述
解決方案
討論
2.4 加載一個(gè)Excel文件
問(wèn)題描述
解決方案
討論
2.5 加載JSON文件
問(wèn)題描述
解決方案
討論
延伸閱讀
2.6 查詢SQL數(shù)據(jù)庫(kù)
問(wèn)題描述
解決方案
討論
延伸閱讀
第3章 數(shù)據(jù)整理
3.0 簡(jiǎn)介
3.1 創(chuàng)建一個(gè)數(shù)據(jù)幀
問(wèn)題描述
解決方案
討論
3.2描述數(shù)據(jù)
問(wèn)題描述
解決方案
討論
3.3 瀏覽數(shù)據(jù)幀
問(wèn)題描述
解決方案
討論
3.4 根據(jù)條件語(yǔ)句來(lái)選擇行
問(wèn)題描述
解決方案
討論
3.5 替換值
問(wèn)題描述
解決方案
討論
3.6 重命名列
問(wèn)題描述
解決方案
討論
3.7 計(jì)算最小值、最大值、總和、平均值與計(jì)數(shù)值
問(wèn)題描述
解決方案
討論
3.8 查找唯一值
問(wèn)題描述
解決方案
討論
3.9 處理缺失值
問(wèn)題描述
解決方案
討論
3.10 刪除一列
問(wèn)題描述
解決方案
討論
3.11 刪除一行
問(wèn)題描述
解決方案
討論
3.12 刪除重復(fù)行
問(wèn)題描述
解決方案
討論
3.13 根據(jù)值對(duì)行進(jìn)行分組
問(wèn)題描述
解決方案
討論
3.14 按時(shí)間段對(duì)行進(jìn)行分組
問(wèn)題描述
解決方案
討論
延伸閱讀
3.15 遍歷一個(gè)列的數(shù)據(jù)
問(wèn)題描述
解決方案
討論
3.16 對(duì)一列的所有元素應(yīng)用某個(gè)函數(shù)
問(wèn)題描述
討論
3.17 對(duì)所有分組應(yīng)用一個(gè)函數(shù)
問(wèn)題描述
解決方案
討論
3.18 連接多個(gè)數(shù)據(jù)幀
問(wèn)題描述
解決方案
討論
3.19 合并兩個(gè)數(shù)據(jù)幀
問(wèn)題描述
解決方案
討論
延伸閱讀
第4章 處理數(shù)值型數(shù)據(jù)
4.0 簡(jiǎn)介
4.1 特征的縮放
問(wèn)題描述
解決方案
討論
延伸閱讀
4.2 特征的標(biāo)準(zhǔn)化
問(wèn)題描述
解決方案
討論
4.3 歸一化觀察值
問(wèn)題描述
解決方案
討論
4.4 生成多項(xiàng)式和交互特征
問(wèn)題描述
解決方案
討論
4.5 轉(zhuǎn)換特征
問(wèn)題描述
解決方案
討論
4.6 識(shí)別異常值
問(wèn)題描述
解決方案
討論
延伸閱讀
4.7 處理異常值
問(wèn)題描述
解決方案
討論
延伸閱讀
4.8 將特征離散化
問(wèn)題描述
解決方案
討論
延伸閱讀
4.9 使用聚類(lèi)的方式將觀察值分組
問(wèn)題描述
解決方案
討論
4.10 刪除帶有缺失值的觀察值
問(wèn)題描述
解決方案
討論
延伸閱讀
4.11 填充缺失值
問(wèn)題描述
解決方案
討論
延伸閱讀
第5章 處理分類(lèi)數(shù)據(jù)
5.0 簡(jiǎn)介
5.1 對(duì)nominal型分類(lèi)特征編碼
問(wèn)題描述
解決方案
討論
延伸閱讀
5.2 對(duì)ordinal分類(lèi)特征編碼
問(wèn)題描述
解決方案
討論
5.3 對(duì)特征字典編碼
問(wèn)題描述
解決方案
討論
延伸閱讀
5.4 填充缺失的分類(lèi)值
問(wèn)題描述
解決方案
討論
延伸閱讀
5.5 處理不均衡分類(lèi)
問(wèn)題描述
解決方案
討論
第6章 處理文本
6.0 簡(jiǎn)介
6.1 清洗文本
問(wèn)題描述
解決方案
討論
延伸閱讀
6.2 解析并清洗HTML
問(wèn)題描述
解決方案
討論
延伸閱讀
6.3 移除標(biāo)點(diǎn)
問(wèn)題描述
解決方案
討論
6.4 文本分詞
問(wèn)題描述
解決方案
討論
6.5 刪除停止詞(stop word)
問(wèn)題描述
解決方案
討論
6.6 提取詞干
問(wèn)題描述
解決方案
討論
延伸閱讀
6.7 標(biāo)注詞性
問(wèn)題描述
解決方案
討論
延伸閱讀
6.8 將文本編碼成詞袋(Bag of Words)
問(wèn)題描述
解決方案
討論
延伸閱讀
6.9 按單詞的重要性加權(quán)
問(wèn)題描述
解決方案
討論
延伸閱讀
第7章 處理日期和時(shí)間
7.0 簡(jiǎn)介
7.1 把字符串轉(zhuǎn)換成日期
問(wèn)題描述
解決方案
討論
延伸閱讀
7.2 處理時(shí)區(qū)
問(wèn)題描述
解決方案
討論
7.3 選擇日期和時(shí)間
問(wèn)題描述
解決方案
討論
7.4 將日期數(shù)據(jù)切分成多個(gè)特征
問(wèn)題描述
解決方案
討論
7.5 計(jì)算兩個(gè)日期之間的時(shí)間差
問(wèn)題描述
解決方案
討論
延伸閱讀
7.6 對(duì)一周內(nèi)的各天進(jìn)行編碼
問(wèn)題描述
解決方案
討論
延伸閱讀
7.7 創(chuàng)建一個(gè)滯后的特征
問(wèn)題描述
解決方案
討論
7.8 使用滾動(dòng)時(shí)間窗口
問(wèn)題描述
解決方案
討論
延伸閱讀
7.9 處理時(shí)間序列中的缺失值
問(wèn)題描述
解決方案
討論
第8章 圖像處理
8.0 簡(jiǎn)介
8.1 加載圖像
問(wèn)題描述
解決方案
討論
延伸閱讀
8.2保存圖像
問(wèn)題描述
解決方案
討論
8.3縮放圖像
問(wèn)題描述
解決方案
討論
8.4裁剪圖像
問(wèn)題描述
解決方案
討論
延伸閱讀
8.5 圖像平滑
問(wèn)題描述
解決方案
討論
延伸閱讀
8.6 圖像銳化
問(wèn)題描述
解決方案
討論
8.7 提升對(duì)比度
問(wèn)題描述
解決方案
討論
8.8 顏色分離
問(wèn)題描述
解決方案
討論
8.9 圖像二值化
問(wèn)題描述
解決方案
討論
8.10 移除背景
問(wèn)題描述
解決方案
討論
8.11 邊緣檢測(cè)
問(wèn)題描述
解決方案
討論
8.12 角點(diǎn)檢測(cè)
問(wèn)題描述
解決方案
討論
延伸閱讀
8.13 為機(jī)器學(xué)習(xí)創(chuàng)建特征
問(wèn)題描述
解決方案
討論
8.14 將顏色平均值編碼成特征
問(wèn)題描述
解決方案
討論
8.15 將色彩直方圖編碼成特征
問(wèn)題描述
解決方案
討論
延伸閱讀
第9章 利用特征提取進(jìn)行特征降維
9.0 簡(jiǎn)介
9.1 使用主成分進(jìn)行特征降維
問(wèn)題描述
解決方案
討論
延伸閱讀
9.2 對(duì)線性不可分?jǐn)?shù)據(jù)進(jìn)行特征降維
問(wèn)題描述
解決方案
討論
延伸閱讀
9.3 通過(guò)最大化類(lèi)間可分性進(jìn)行特征降維
問(wèn)題描述
解決方案
討論
延伸閱讀
9.4 使用矩陣分解法進(jìn)行特征降維
問(wèn)題描述
解決方案
討論
延伸閱讀
9.5 對(duì)稀疏數(shù)據(jù)進(jìn)行特征降維
問(wèn)題描述
解決方案
討論
延伸閱讀
第10章 使用特征選擇進(jìn)行降維
10.0 簡(jiǎn)介
10.1 數(shù)值型特征方差的閾值化
問(wèn)題描述
解決方案
討論
10.2 二值特征的方差閾值化
問(wèn)題描述
解決方案
討論
10.3 處理高度相關(guān)性的特征
問(wèn)題描述
解決方案
討論
10.4 刪除與分類(lèi)任務(wù)不相關(guān)的特征
問(wèn)題描述
解決方案
討論
10.5 遞歸式特征消除
問(wèn)題描述
解決方案
討論
延伸閱讀
第11章 模型評(píng)估
11.0 簡(jiǎn)介
11.1 交叉驗(yàn)證模型
問(wèn)題描述
解決方案
討論
延伸閱讀
11.2 創(chuàng)建一個(gè)基準(zhǔn)回歸模型
問(wèn)題描述
解決方案
討論
11.3 創(chuàng)建一個(gè)基準(zhǔn)分類(lèi)模型
問(wèn)題描述
解決方案
討論
延伸閱讀
11.4 評(píng)估二元分類(lèi)器
問(wèn)題描述
解決方案
討論
延伸閱讀
11.5 評(píng)估二元分類(lèi)