本書將帶你了解特征工程的完整過程,使機器學(xué)習(xí)更加系統(tǒng)、高效。你會從理解數(shù)據(jù)開始學(xué)習(xí),機器學(xué)習(xí)模型的成功正是取決于如何利用不同類型的特征,例如連續(xù)特征、分類特征等。你將了解何時納入一項特征、何時忽略一項特征,以及其中的原因。你還會學(xué)習(xí)如何將問題陳述轉(zhuǎn)換為有用的新特征,如何提供由商業(yè)需求和數(shù)學(xué)見解驅(qū)動的特征,以及如何在自己的機器上進行機器學(xué)習(xí),從而自動學(xué)習(xí)數(shù)據(jù)中的特征。
特征工程是數(shù)據(jù)科學(xué)和機器學(xué)習(xí)流水線上的重要一環(huán),包括識別、清洗、構(gòu)建和發(fā)掘數(shù)據(jù)的特征,為進一步解釋數(shù)據(jù)并進行預(yù)測性分析做準(zhǔn)備。
本書囊括了特征工程的全流程,從數(shù)據(jù)檢查到可視化,再到轉(zhuǎn)換和進一步處理等,并給出了大量數(shù)學(xué)工具,幫助讀者掌握如何將數(shù)據(jù)處理、轉(zhuǎn)換成適當(dāng)?shù)男问,以便送入計算機和機器學(xué)習(xí)流水線中進行處理。后半部分的特征工程實踐用Python作為示例語言,循序漸進,通俗易懂。
- 識別和利用不同類型的特征
- 清洗數(shù)據(jù)中的特征,提升預(yù)測能力
- 為何、如何進行特征選擇和模型誤差分析
- 利用領(lǐng)域知識構(gòu)建新特征
- 基于數(shù)學(xué)知識交付特征
- 使用機器學(xué)習(xí)算法構(gòu)建特征
- 掌握特征工程與特征優(yōu)化
- 在現(xiàn)實應(yīng)用中利用特征工程
錫南·厄茲代米爾(Sinan Ozdemir)
數(shù)據(jù)科學(xué)家、數(shù)學(xué)家、約翰·霍普金斯大學(xué)講師,Kylie.ai公司聯(lián)合創(chuàng)始人、CTO,在應(yīng)用數(shù)據(jù)挖掘、功能分析和算法開發(fā)做出基于數(shù)據(jù)和知識的決策方面擁有豐富的經(jīng)驗。
迪夫婭·蘇薩拉(Divya Susarla)
在利用數(shù)據(jù)方面經(jīng)驗豐富,在包括投資管理、社會企業(yè)咨詢和紅9營銷的各個產(chǎn)業(yè)和領(lǐng)域里實現(xiàn)并應(yīng)用過相應(yīng)的策略。Kylie.ai公司產(chǎn)品經(jīng)理,目前專注于自然語言處理和生成技術(shù)。
第 1章 特征工程簡介 1
1.1 激動人心的例子:AI驅(qū)動的聊天 1
1.2 特征工程的重要性 2
1.3 特征工程是什么 5
1.4 機器學(xué)習(xí)算法和特征工程的評估 9
1.4.1 特征工程的例子:真的有人能預(yù)測天氣嗎 10
1.4.2 特征工程的評估步驟 10
1.4.3 評估監(jiān)督學(xué)習(xí)算法 11
1.4.4 評估無監(jiān)督學(xué)習(xí)算法 11
1.5 特征理解:我的數(shù)據(jù)集里有什么 12
1.6 特征增強:清洗數(shù)據(jù) 13
1.7 特征選擇:對壞屬性說不 14
1.8 特征構(gòu)建:能生成新特征嗎 14
1.9 特征轉(zhuǎn)換:數(shù)學(xué)顯神通 15
1.10 特征學(xué)習(xí):以AI促AI 16
1.11 小結(jié) 17
第 2章 特征理解:我的數(shù)據(jù)集里有什么 19
2.1 數(shù)據(jù)結(jié)構(gòu)的有無 19
2.2 定量數(shù)據(jù)和定性數(shù)據(jù) 20
2.3 數(shù)據(jù)的4個等級 25
2.3.1 定類等級 26
2.3.2 定序等級 27
2.3.3 定距等級 30
2.3.4 定比等級 36
2.4 數(shù)據(jù)等級總結(jié) 38
2.5 小結(jié) 40
第3章 特征增強:清洗數(shù)據(jù) 41
3.1 識別數(shù)據(jù)中的缺失值 41
3.1.1 皮馬印第安人糖尿病預(yù)測數(shù)據(jù)集 42
3.1.2 探索性數(shù)據(jù)分析 42
3.2 處理數(shù)據(jù)集中的缺失值 48
3.2.1 刪除有害的行 50
3.2.2 填充缺失值 54
3.2.3 在機器學(xué)習(xí)流水線中填充值 57
3.3 標(biāo)準(zhǔn)化和歸一化 61
3.3.1 z分?jǐn)?shù)標(biāo)準(zhǔn)化 63
3.3.2 min-max標(biāo)準(zhǔn)化 67
3.3.3 行歸一化 68
3.3.4 整合起來 69
3.4 小結(jié) 70
第4章 特征構(gòu)建:我能生成新特征嗎 71
4.2 填充分類特征 72
4.2.1 自定義填充器 74
4.2.2 自定義分類填充器 74
4.2.3 自定義定量填充器 76
4.3 編碼分類變量 77
4.3.1 定類等級的編碼 77
4.3.2 定序等級的編碼 79
4.3.3 將連續(xù)特征分箱 80
4.3.4 創(chuàng)建流水線 82
4.4 擴展數(shù)值特征 83
4.4.1 根據(jù)胸部加速度計識別動作的數(shù)據(jù)集 83
4.4.2 多項式特征 86
4.5 針對文本的特征構(gòu)建 89
4.5.1 詞袋法 89
4.5.2 CountVectorizer 90
4.5.3 TF-IDF向量化器 94
4.5.4 在機器學(xué)習(xí)流水線中使用文本 95
4.6 小結(jié) 97
第5章 特征選擇:對壞屬性說不 98
5.1 在特征工程中實現(xiàn)更好的性能 99
5.2 創(chuàng)建基準(zhǔn)機器學(xué)習(xí)流水線 103
5.3 特征選擇的類型 106
5.3.1 基于統(tǒng)計的特征選擇 106
5.3.2 基于模型的特征選擇 117
5.4 選用正確的特征選擇方法 125
5.5 小結(jié) 125
第6章 特征轉(zhuǎn)換:數(shù)學(xué)顯神通 127
6.1 維度縮減:特征轉(zhuǎn)換、特征選擇與特征構(gòu)建 129
6.2 主成分分析 130
6.2.1 PCA的工作原理 131
6.2.2 鳶尾花數(shù)據(jù)集的PCA——手動處理 131
6.2.3 scikit-learn的PCA 137
6.2.4 中心化和縮放對PCA的影響 144
6.3 線性判別分析 148
6.3.1 LDA的工作原理 149
6.3.2 在scikit-learn中使用LDA 152
6.4 LDA與PCA:使用鳶尾花數(shù)據(jù)集 157
6.5 小結(jié) 160
第7章 特征學(xué)習(xí):以AI促AI 161
7.1 數(shù)據(jù)的參數(shù)假設(shè) 161
7.1.1 非參數(shù)謬誤 163
7.1.2 本章的算法 163
7.2 受限玻爾茲曼機 163
7.2.1 不一定降維 164
7.2.2 受限玻爾茲曼機的圖 164
7.2.3 玻爾茲曼機的限制 166
7.2.4 數(shù)據(jù)重建 166
7.2.5 MNIST數(shù)據(jù)集 167
7.3 伯努利受限玻爾茲曼機 169
7.3.1 從MNIST中提取PCA主成分 170
7.3.2 從MNIST中提取RBM特征 177
7.4.1 對原始像素值應(yīng)用線性模型 178
7.4.3 對提取的RBM特征應(yīng)用線性模型 179
7.5 學(xué)習(xí)文本特征:詞向量 180
7.5.1 詞嵌入 180
7.5.2 兩種詞嵌入方法:Word2vec和GloVe 182
7.5.3 Word2vec:另一個淺層神經(jīng)網(wǎng)絡(luò) 182
7.5.4 創(chuàng)建Word2vec詞嵌入的gensim包 183
7.5.5 詞嵌入的應(yīng)用:信息檢索 186
7.6 小結(jié) 190
第8章 案例分析 191
8.1 案例1:面部識別 191
8.1.1 面部識別的應(yīng)用 191
8.1.2 數(shù)據(jù) 192
8.1.3 數(shù)據(jù)探索 193
8.1.4 應(yīng)用面部識別 195
8.2 案例2:預(yù)測酒店評論數(shù)據(jù)的主題 200
8.2.1 文本聚類的應(yīng)用 200
8.2.2 酒店評論數(shù)據(jù) 200
8.2.3 數(shù)據(jù)探索 201
8.2.4 聚類模型 203
8.2.5 SVD與PCA主成分 204
8.2.6 潛在語義分析 206
8.3 小結(jié) 210