國際知名高校CS專業機器學習課程的四本書,入行必備

國際知名高校CS專業機器學習課程的四本書,入行必備

入門機器學習書籍

介紹一下大學課程中常用的四本有關機器學習的教科書。透過的權威定義,為我們對該主題進行更深入的思考奠定基礎,以突出顯示該領域的一些有用且多樣化的內容,並瞭解到該領域實用的方法,而且基於不同視角看待是取得進步的關鍵。

Mitchell’s Machine Learning(米切爾的機器學習)

國際知名高校CS專業機器學習課程的四本書,入行必備

湯姆·米切爾(Tom Mitchell)的《Machine Learning》有著簡短而甜美的定義:機器學習領域涉及如何構建隨經驗而自動改進的計算機程式的問題。計算機程式 和 自動化改進 是比較核心的思想。

A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E。

不要被形式主義的術語的定義嚇到。簡單來說即使用這種模式作為模板,將E、T和P作為資料欄位,用列聯表的方式展現複雜的問題。可以透過設計表單明確需要蒐集的自變數元素資料(E),以及對應該條資料做出的因變數決策(T)以及評估結果(P)。這就是為什麼經常被重複作為標準定義的原因。

Elements of Statistical Learning(統計學習的要素)

國際知名高校CS專業機器學習課程的四本書,入行必備

資料探勘,推理和預測是由三位斯坦福統計學家撰寫的組織其研究領域的統計框架。

Vast amounts of data are being generated in many fields, and the statisticians’s job is to make sense of it all: to extract important patterns and trends, and to understand “what the data says”。 We call this learning from data。

我理解統計學家的工作是使用統計工具來解釋域上下文中的資料。將機器學習的所有領域都包括在內以實現這一目標。不僅統計人員可以從資料中學習,軟體也是可以的,並且我們也能從軟體中學習到的內容學習。透過各種機器學習方法做出的決策和獲得的結果。

Pattern Recognition(模式識別)

國際知名高校CS專業機器學習課程的四本書,入行必備

Pattern recognition has its origins in engineering, whereas machine learning grew out of computer science。 However, these activities can be viewed as two facets of the same field…

模式識別是工程或訊號處理術語。Bishop從工程學來到該領域,學習並利用了計算機科學的相同方法。應該效仿這種成熟的方法,無論什麼領域提出的何種方法,透過觀察資料的積累滿足需求,或者從資料學習中滿足需求,這統稱為機器學習。

An Algorithmic Perspective(演算法觀點)

國際知名高校CS專業機器學習課程的四本書,入行必備

One of the most interesting features of machine learning is that it lies on the boundary of several different academic disciplines, principally computer science, statistics, mathematics, and engineering。 …machine learning is usually studied as part of artificial intelligence, which puts it firmly into computer science …understanding why these algorithms work requires a certain amount of statistical and mathematical sophistication that is often missing from computer science undergraduates。

強調了該領域的多學科性質,機器學習來自各種形式的資訊科學。理論和工程實踐二者缺一不可,有理論不能付之於實踐應用的理論就是空談,有很大的侷限性,所以需要工程人員實現該項業務。

Venn Diagram(維恩圖)

國際知名高校CS專業機器學習課程的四本書,入行必備

機器學習 = 駭客 + 數學與統計

擁有理論和技術的人員如 駭客技術 + 專門知識 ,可以訪問和構造資料,基於瞭解的業務領域,透過工程實現結果,但很多時候不瞭解結果的含義。

開發人員理解的機器學習

複雜問題

作為開發人員,很多時候需要用邏輯和程式解決實際業務中的問題提供解決方案。

以將垃圾郵件與非垃圾郵件區分開來。這是引入機器學習時一直使用的示例。當電子郵件進入您的電子郵件帳戶時,如何編寫程式來過濾電子郵件,並決定將其放入垃圾郵件資料夾或收件箱資料夾中?

可能先會收集一些示例,然後對它們進行研究並對其進行深入的思考。並會在垃圾郵件和非垃圾郵件中查詢並考慮將這些模式抽象化,使用自定義的規則忽略那些無用的郵件,然後透過抽象化的內容不算的完善最終達到全部過濾的效果。

如果採用原始編碼解決這種問題的話,不僅會消耗大量的工程師資源而且維護成本也相當高。

機器學習

如果從機器學習的角度思考這個問題,人工不停地進行篩選,透過基礎編碼的方式進行區分,使用統計學的演算法不斷完善的過程,這種增量不斷改善的方式就是機器學習中的一種演算法,機器學習方法就是這種自動化過程。

在垃圾郵件/非垃圾郵件示例中,示例(E)是我們收集的電子郵件。任務(T)是一個決策問題(稱為分類),即將每封電子郵件標記為垃圾郵件或不將其標記為垃圾郵件,並將其放置在正確的資料夾中。我們的績效指標(P)類似於0%(最差)至100%(最佳)之間的百分比準確率(正確決策除以總決策乘以100)。

準備這樣的決策程式通常稱為訓練,其中將收集的示例稱為訓練集,而將該程式稱為模型,就像將垃圾郵件從非垃圾郵件分類的模型一樣。作為開發人員喜歡這種術語,模型具有狀態並且需要持久化,訓練是一次執行的過程,可以根據需要重新執行,分類是執行的任務。從技術上講編寫的所有程式都是自動化程式。

機器學習(MachineLearning)是從資料中對模型進行的培訓,該模型根據效能度量來概括決策。

訓練模型可以提供訓練示例。一個模型表明了透過經驗獲得的狀態。概括決策有能力根據輸入進行決策,並在將來需要做出決策的情況下預測看不見的輸入。最後,根據評估標準衡量,提出了針對所準備模型的目標需求和質量指導。

國際知名高校CS專業機器學習課程的四本書,入行必備