面向機器學習的特徵工程 一、引言

面向機器學習的特徵工程 一、引言

來自專欄信數據得永生6 人贊了文章

來源:ApacheCN《面向機器學習的特徵工程》翻譯項目

譯者:@ZhipengYe

校對:(虛位以待)

機器學習將數據擬合到數學模型中來獲得結論或者做出預測。這些模型吸納特徵作為輸入。特徵就是原始數據某方面的數學表現。在機器學習流水線中特徵位於數據和模型之間。特徵工程是一項從數據中提取特徵,然後轉換成適合機器學習模型的格式的藝術。這是機器學習流水線關鍵的一步,因為正確的特徵可以減輕建模的難度,並因此使流水線能輸出更高質量的結果。從業者們認為構建機器學習流水線的絕大多數時間都花在特徵工程和數據清洗上。然後,儘管它很重要,這個話題卻很少單獨討論。也許是因為正確的特徵只能在模型和數據的背景中定義。由於數據和模型如此多樣化,所以很難概括項目中特徵工程的實踐。

儘管如此,特徵工程不僅僅是一種臨時實踐。工作中有更深層的原則,最好就地進行說明。本書的每一章都針對一個數據問題:如何表示文本數據或圖像數據,如何降低自動生成的特徵的維度,何時以及如何規範化等等。把它看作是一個相互聯繫的短篇小說集,而不是一本長篇小說。每章都提供了大量現有特徵工程技術的插圖。它們一起闡明了總體原則。

掌握主題不僅僅是了解定義並能夠推導出公式。僅僅知道這個機制是如何工作的以及它可以做什麼是不夠的。它還必須包括理解為什麼要這樣設計,它如何與其他技術相關聯,以及每種方法的優缺點是什麼。掌握就是要準確地知道如何完成某件事,對底層原則有一個感覺,並將其整合到我們已知的知識網路中。一個人通過讀一本相關的書並不會成為某個東西的主人,儘管一本好書可以打開新的門。它必須涉及實踐——將想法用於實踐,這是一個反覆的過程。隨著每一次迭代,我們都會更好地了解這些想法,並在應用這些想法時變得越來越嫻熟和富有創造性。本書的目標是促進其思想的應用。

本書首先嘗試傳授感覺,其次是數學。我們不是只討論如何完成某些事情,而是試圖引導發現原因。我們的目標是提供觀點背後的感覺,以便讀者了解如何以及何時應用它們。對於以不同方式學習的人們來說,有大量的描述和圖片。提出數學公式是為了使感覺更加精確,並且還可以將本書與其他現有的知識結合起來。

本書中的代碼示例在 Python 中給出,使用各種免費和開源軟體包。NumPy 庫提供數字向量和矩陣操作。Pandas 是一個強大的數據框架,是 Python 中數據科學的基石。Scikit-learn 是一個通用機器學習軟體包,涵蓋了廣泛的模型和特徵變換器。Matplotlib 和 Seaborn 的樣式庫提供了繪圖和可視化。你可以在我們的 github 倉庫中找到這些例子作為 Jupyter notebooks。

前幾章開始較緩慢,為剛剛開始使用數據科學和機器學習的人們提供了一個橋樑。第 1 章從數字數據的基本特徵工程開始:過濾,合併,縮放,日誌轉換和能量轉換以及交互功能。第 2 章和第 3 章深入探討了自然文本的特徵工程:bag-of-words,n-gram 和短語檢測。第 4 章將 tf-idf 作為特徵縮放的例子,並討論它的工作原理。圍繞第 5 章討論分類變數的高效編碼技術,包括特徵哈希和 bin-counting,步伐開始加速。當我們在第 6 章中進行主成分分析時,我們深入機器學習的領域。第 7 章將 k-means 看作一種特徵化技術,它說明了模型堆疊的有效理論。第 8 章都是關於圖像的,在特徵提取方面比文本數據更具挑戰性。在得出深度學習是最新圖像特徵提取技術的解釋之前,我們著眼於兩種手動特徵提取技術 SIFT 和 HOG。我們在第 9 章中完成了一個端到端示例中的幾種不同技術,為學術論文數據集創建了一個推薦器。

閱讀全文?

github.com圖標
推薦閱讀:

機器人解密:「波動率」是個磨人的小妖精
【3】談談激活函數?
斯坦福大學《機器學習》- 核心內容(2.2)

TAG:機器學習 | 特徵工程 |