機器學習入門

2022-04-08 19:40:07 字數 2862 閱讀 1229

機器學習是什麼?

第乙個機器學 習的定義來自於 arthur samuel。他定義機器學習為,在進行特定程式設計的情況下,給予計算機 學習能力的領域。 上述是個有點不正式的定義,也比較古老。另乙個年代近一點 的定義,由 tom mitchell 提出,來自卡內基梅隆大學,tom 定義的機器學習是,乙個好的學 習問題定義如下,他說,乙個程式被認為能從經驗 e 中學習,解決任務 t,達到效能度量值 p,當且僅當,有了經驗 e 後,經過 p 評判,程式在處理 t 時的效能有所提公升。我認為經驗 e 就是程式上萬次的自我練習的經驗而任務 t 就是下棋。效能度量值 p 呢,就是它在與一 些新的對手比賽時,贏得比賽的概率。

機器學習演算法

- 監督學習

- 非監督學習

最常見的兩種

監督學習

監督學習指的就是我們給學習演算法乙個資料集。這個資料集由「正確答案」 組成。在房價的例子中,我們給了一系列房子的資料,我們給定資料集中每個樣本的正確價 格,即它們實際的售價然後運用學習演算法,算出更多的正確答案。比如你朋友那個新房子的 **。用術語來講,這叫做回歸問題。

讓我們來看一組資料:這個資料集中,橫軸表示腫瘤的大小,縱軸上,我標出 1 和 0 表 示是或者不是惡性腫瘤。我們之前見過的腫瘤,如果是惡性則記為 1 ,不是惡性,或者說良 性記為 0。

我有 5 個良性腫瘤樣本,在 1 的位置有 5 個惡性腫瘤樣本。現在我們有乙個朋友很不幸 檢查出乳腺腫瘤。假設說她的腫瘤大概這麼大,那麼機器學習的問題就在於,你能否估算出 腫瘤是惡性的或是良性的概率。用術語來講,這是乙個分類問題。

現在來回顧一下,這節課我們介紹了監督學習。其基本思想是,我們資料集中的每個樣 本都有相應的「正確答案」。再根據這些樣本作出**,就像房子和腫瘤的例子中做的那樣。 我們還介紹了回歸問題,即通過回歸來推出乙個連續的輸出,之後我們介紹了分類問題,其 目標是推出一組離散的結果。

無監督學習

在無監督學習中,我們已知的資料。看上去有點不一樣,不同於監督學習的資料的樣子, 即無監督學習中沒有任何的標籤或者是有相同的標籤或者就是沒標籤。所以我們已知資料 集,卻不知如何處理,也未告知每個資料點是什麼。別的都不知道,就是乙個資料集。你能 從資料中找到某種結構嗎?針對資料集,無監督學習就能判斷出資料有兩個不同的聚集簇。 這是乙個,那是另乙個,二者不同。是的,無監督學習演算法可能會把這些資料分成兩個不同 的簇。所以叫做聚類演算法。事實證明,它能被用在很多地方。

單變數線性回歸(linear regression with one variable)

我們將引入一些符號來表示我們的回歸方程

- m 代表訓練集中例項的數量

- x 代表特徵/輸入變數

- y 代表目標變數/輸出變數

- (x,y) 代表訓練集中的例項

- (x(i),y(i) ) 代表第 i 個觀察例項

- h 代表學習演算法的解決方案或函式也稱為假設(hypothesis)

代價函式h0

(x)=

θ0+θ

1∗x接下來我們會引入一些術語我們現在要做的便是為我們的模型選擇合適的引數

(parameters)θ0

和 θ1,在房價問題這個例子中便是直線的斜率和在 y 軸上的截距。 我們選擇的引數決定了我們得到的直線相對於我們的訓練集的準確程度,模型所**的

值與訓練集中實際值之間的差距(下圖中藍線所指)就是建模誤差(modeling error)。

我們的目標便是選擇出可以使得建模誤差的平方和能夠最小的模型引數。 即使得代價函式,j(

θ0,θ

1)=1

2m∑m

i=1(

hθ(x

(i))

−y(i

))2最小

代價函式的直觀理解

梯度下降演算法

梯度下降是乙個用來求函式最小值的演算法,我們將使用梯度下降演算法來求出代價函式的最小值

梯度下降背後的思想是:開始時我們隨機選擇乙個引數的組合(θ

0,θ1

,...

,θn)

,計算代價 函式,然後我們尋找下乙個能讓代價函式值下降最多的引數組合。我們持續這麼做直到到到 乙個區域性最小值(local minimum),因為我們並沒有嘗試完所有的引數組合,所以不能確定 我們得到的區域性最小值是否便是全域性最小值(global minimum),選擇不同的初始引數組合, 可能會找到不同的區域性最小值。

其中 α 是學習率(learning rate),它決定了我們沿著能讓代價函式下降程度最大的方

向向下邁出的步子有多大,在批量梯度下降中,我們每一次都同時讓所有的引數減去學習速率乘以代價函式的導數

在梯度下降演算法中,還有乙個更微妙的問題,梯度下降中,我們要更新 θ0 和 θ1 ,當 j=0 和 j=1 時,會產生更新,所以你將更新 jθ0 和 jθ1。實現梯度下降演算法的微妙之處是,在這 個表示式中,如果你要更新這個等式,你需要同時更新 θ0 和 θ1

梯度下降的直觀理解

如果 α 太小了,即我的學習速率太小,結果就是只能這樣像小寶寶一樣一點點地挪動, 去努力接近最低點,這樣就需要很多步才能到達最低點,所以如果 α 太小的話,可能會很慢 因為它會一點點挪動,它會需要很多步才能到達全域性最低點。

如果 α 太大,那麼梯度下降法可能會越過最低點,甚至可能無法收斂,下一次迭代又移

動了一大步,越過一次,又越過一次,一次次越過最低點,直到你發現實際上離最低點越來越遠,所以,如果 α 太大,它會導致無法收斂,甚至發散。

梯度下降的線性回歸

對我們之前的線性回歸問題運用梯度下降法,關鍵在於求出代價函式的導數,即:

機器學習入門

研究生考試結束了,考研通知書也在幾天前到手了,是時候安心下來考慮一下未來研究生的生活和學習了,看現在機器學習特別的火,所以我就先跟風學習一下機器學習吧。由於剛開始學習,所以對一些專有名詞不是很熟悉,所以特別做了一下總結,因為剛剛入門,所以就先整理了這些。人工智慧 一 認知和感知 區別看待 目前是在感...

機器學習入門

1.常用演算法 決策樹 隨機森林演算法 邏輯回歸 svm 樸素貝葉斯 knn演算法 k means演算法 adaboost 演算法 神經網路 馬爾可夫 2.聚類和分類的區別 分類 比如有一堆資料,你已經事先對他們做好了分類。你想要的功能就是,假如來了一條測試資料,我想知道他是哪一類,這就是分類。聚類...

機器學習入門

機器學習現在有著非常多的應用,從人臉識別到自動駕駛使用的都是機器學習的技術,機器學習在當前是乙個十分熱門的話題,也是引領下乙個技術變革的方向之一。大量的人員開始關注起機器學習,從初學者再到有經驗的技術人員,投身到機器學習中。但機器學習並不像普通的程式設計一樣,機器學習的入門有一定的門檻,因為機器學習...