作者:Andriy Burkov
編輯:肖琴
【新智元導讀】這是一本只有100頁,任何只要有基礎數學知識的人都能看懂的機器學習書籍。本書將涵蓋非監督學習和監督學習、包括神經網絡,以及計算機科學、數學和統計學中最重要的一些機器學習問題。
一本100頁的機器學習書籍近日大受好評。
書名The Hundred-Page Machine Learning Book,作者Andriy Burkov是Gartner的機器學習團隊leader,人工智能專業PhD,有近20年各種計算項目的工作經驗。
作者表示,他的目標是寫一本任何有基礎數學知識的人都能看懂的機器學習書籍。
這本書的前5章已經在該書的配套網站上公開。這本書將涵蓋非監督學習和監督學習,包括神經網絡,以及計算機科學、數學和統計學中最重要的一些ML問題,並通過例子提供直觀的解釋。代碼和數據也將在網站上公開。
作者相信一本書應該“先讀後買”,不僅可以免費下載已公開的章節,你也可以在這裏訂閱即將出版的章節:
http://themlbook.com/wiki/doku.php
已發佈章節:
第1章:簡介
第一部分:監督學習
第2章:符號和定義
第3章:基本算法
第4章:剖析學習算法
第5章:基本實踐
以下是試讀:第3章:基本算法
試讀:第3章:基本算法
在本章中,我們描述了五種算法,這些算法不僅是最著名的,而且要麼自身非常有效,要麼被用作最有效的學習算法的構建塊。
3.1 線性迴歸
線性迴歸是一種常用的迴歸學習算法,它學習的模型是輸入示例特徵的線性組合。
問題陳述
我們有一個標記示例
的集合,其中N是集合的大小,
是示例i = 1的D維特徵向量,
是一個實值目標(
∈R),並且每個特徵
也是一個實數。
我們想要建立一個模型
作爲示例x的特徵的線性組合:
其中w是參數的D維向量,b*是實數,wx是點積。符號
表示模型f由兩個值參數化:w和b。
圖1:一維示例的線性迴歸。
3.2 邏輯迴歸
首先要說的是邏輯迴歸不是迴歸,而是一個分類學習算法。這個名稱來自統計學,因爲邏輯迴歸的數學公式與線性迴歸的數學公式相似。
我們將在二元分類的情況下解釋邏輯迴歸。但它也可以擴展到多元分類。
問題陳述
在邏輯迴歸中,我們仍然希望將
建模爲
的線性函數,但是對於二元
,這就不是那麼簡單了。像
這樣的特徵的線性組合是從負無窮大到正無窮大的函數,而
只有兩個可能的值。
在沒有計算機的年代,科學家們不得不手工進行計算,他們非常想找到一個線性分類模型。他們發現如果將負標籤定義爲0,將正標籤定義爲1,就只需要找到一個codomain爲(0,1)的簡單連續函數。在這種情況下,如果模型爲輸入x返回的值更接近於0,那麼我們爲x分配負標籤,否則,該示例將被標記爲正。具有這種屬性的一個函數是標準邏輯函數(也稱爲sigmoid函數):
如圖3所示。
圖3:標準邏輯函數
3.3 決策樹學習
決策樹是一個可用於做決策的非循環圖。在圖的每個分支節點中,檢查特徵向量的特定特徵j。如果特徵的值低於特定的閾值,則遵循左分支,否則,遵循右分支。當到達葉節點時,決定該示例所屬的類。
問題陳述
我們有一組帶標籤的示例;標籤屬於集合{0,1}。我們想要構建一個決策樹,允許我們在給定特徵向量的情況下預測示例的類。
圖4:決策樹構建算法的圖示。
3.4 支持向量機
關於SVM,有兩個重要問題需要回答:
- 如果數據中存在噪聲,並且沒有超平面可以將正例和負例完美分開,該怎麼辦?
- 如果數據不能使用平面分離,但可以用高階多項式分離呢?
圖5:線性不可分的情況。左:存在噪音。右:固有的非線性。
如圖5中描述的兩種情況。在左邊的示例中,如果沒有噪聲(異常值或帶有錯誤標籤的示例),數據可以用直線分隔。在正確的情況下,決策邊界是一個圓,而不是一條直線。
3.5 k-Nearest Neighbors
k-Nearest Neighbors(kNN)是一種非參數學習算法。與其他在構建模型後丟棄訓練數據的學習算法相反,kNN將所有訓練示例保存在內存中。一旦出現了一個新的、以前沒見過的示例,kNN算法會在D維空間中找到k個最接近的例子並返回多數標籤(在分類的情況下)或平均標籤(在迴歸的情況下)。
兩點的接近程度由距離函數給出。例如,上面看到的Euclidean distance在實踐中經常使用。距離函數的另一個常用選擇是負餘弦相似性。餘弦相似度的定義如下:
注:本文爲簡要介紹,全書內容請在這裏下載
http://themlbook.com/wiki/doku.php