機器學習Basics-第二期-什麼是機器學習

背景

機器學習Basics-第二期-什麼是機器學習

上一期已經講完了本系列所有涉及的數學部分,本期將開始給大家搭建機器學習及神經網絡的概念框架。

相信感興趣的朋友,會覺得機器學習有很多名詞,有很多疑問:

  • 什麼是機器學習,機器學習學的是什麼呢?
  • 監督學習與非監督學習,到底是什麼呢?
  • 深度學習是什麼?什麼是深度?

本篇將對概念進行一個初步的梳理,和幾個簡單的例子。在看完此篇之後,會對機器學習、監督與非監督學習、深度學習等概念有一個初步的認識。


插一句,關於名詞和概念。 概念和名詞可以方便大家溝通與交流。 但是名字也不那麼重要,因為叫A、叫B都一樣,只是一個約定俗成的東西。所以我自己的看法是,從實踐出來,儘量瞭解但不糾結。因為,在實踐一段時間後,對概念就自然瞭解了。


什麼是機器學習

我在剛開始學習的時候,也經常產生這些疑問:

  • 什麼是機器學習?
  • 它學的是什麼?
  • 它怎麼學的呢?
  • 機器學習有什麼不同呢?

要回答這些問題,需要設置一個問題的場景或者應用場景。還是用我之前的文章“機器學習的hello world”的例子,我們的任務是讓機器學習 識別圖片中的數字,如下圖,我們可以看出來是數字 1.

機器學習Basics-第二期-什麼是機器學習

那麼這個任務是什麼呢? 簡單來說就是,輸入一張圖片,輸出一個數字1. 而從第一期可以知道,圖片可以用一個Matrix矩陣來表示。

那麼機器學習學的是什麼呢? 這個其實是一個開放性的問題,我自己個人的理解是:

人類學習

  • 大家可以回想下,人類做判斷的時候,我們會說這個圖片看起肯定是1。 但是下面幾個圖片,實際上就不那麼明顯了,人類的判斷會是看起來大概是4,又有點像9,不過感覺更像4一點;
  • 還是需要回到人類學習的過程。人類學習有兩個因素,1. 不同的數字有自己的結構,而且相差都比較大 2. 人類學習過程中,經常看到1和不是1的數字,有大量的樣本

機器學習

  • 對於機器來說,判斷就變成了一個概率計算的過程,計算出圖片對應數字的可能性。上面那個1的圖,可能超過99%的概率是1;下面的圖可能就不那麼明顯了;
  • 同樣,機器學習的過程也有兩個因素。 因為圖片是以數字的形式展現的,那麼圖片結構就會反應在數字上。機器學習的是這些數字的結構。另外,機器學習也需要大量的樣本。
機器學習Basics-第二期-什麼是機器學習

機器學習與傳統的算法或者程序有什麼不同呢?以下是個人觀點。

自主性.

傳統程序是典型的計算機思維,需要人來考慮各種場景、各種邏輯判斷,也就是說傳統程序需要人來給出邏輯判斷和清晰的定義。但是現實中很多問題,非常難給出清晰的定義。如下圖,我們要判斷一張圖片是不是貓咪,這種問題對於人類很簡單,但是對於機器很難。難在給不出定義,沒有嚴格的邏輯判斷。

因為貓可以有不同的形態、不同的顏色、不同的坐姿、不同的背景、不同的個數、不同的品種。。。等等等,這個是沒辦法窮舉的。所以,以傳統方法是沒辦法很好的做到判斷是不是貓

那麼,這個時候以類似上面的數字識別的例子,“自主”學習什麼是貓 才使得圖片識別變得可行。

機器學習Basics-第二期-什麼是機器學習

模型的重要性或者神經網絡框架的重要性

傳統的重要性在於邏輯判斷,軟件框架等等方面。那麼現在如果將這部分邏輯判斷,讓機器自己去發現。人類在其中的作用在哪裡呢?

我個人覺得,在於模型的運用和改進。 舉個例子,圖片識別可以用傳統的神經網絡,但是對於 語言,這種明顯帶有順序的例子,那麼就需要使用RNN循環神經網絡。這些後面都會帶來

易學或者容易入門

傳統程序,如果你要達到一個世界領先的水平,需要很多很多資源。但是對於機器學習,如果知道對方應用的是什麼類型的模型框架,並且你也有一定的原始數據,你也可以做出一個很優秀的模型。 因為,就像之前提到的,中間的邏輯判斷、學習的過程都交給機器了。那麼,如果你有模型框架,而且你有數據,剩下的交給機器就好了。你也做出來非常優秀、先進的模型


機器學習是怎麼學習的呢?

對於這個話題,我後續會帶來。前期也有很多篇關於這個的文章,比如第一篇和NLP的第四期和“機器學習的hello world”

監督學習vs非監督學習

上一部分已經大概解釋了機器學習的概念。監督學習與非監督學習就相對簡單很多。

監督與非監督學習的差異就在於,是否有對應的標籤數據。還是以上面的例子來說,可以對於這種圖片我們能面對兩種任務:

任務1

我們有60000個類似下面的樣本,每個樣本包含(X,Y)X代表著圖片對應的矩陣,Y代表著真實的數字,下圖就是數字1.

我們的任務是通過對60000樣本的學習,能夠對新的樣本做出判斷

任務2

我們有60000個類似下面的樣本,每個樣本只有一個X,X代表著圖片對應的矩陣。 我們沒有Y

我們的任務是對60000個樣本進行分類 0~9

機器學習Basics-第二期-什麼是機器學習

監督學習與非監督學習的區別就是在於,我們是否有Y,即標籤。

深度學習

深度學習,這個詞聽起來挺深奧的。 其實,最簡單的解釋就是,當我們應用神經網絡時,有運用多層神經網絡,有運用不同的神經元。

下圖是一個CNN(卷積神經網絡)多用於圖片識別。大家能看來非常複雜。

本文章,第一部分,已經提到,機器學習的重點在於模型的建立。不同複雜程度的模型,可以應對不同的問題。 而深度學習是一個比較寬泛的概念,最簡單的理解就是神經網絡有很多層。 但是其核心是,該神經網絡的複雜程度 和 特徵 能夠適應該問題的數據特徵。

機器學習Basics-第二期-什麼是機器學習

下期預告

本期稍微給大家講解了下 機器學習的一些概念。但是對概念的理解,肯定是要在實踐中生成的。 後續會給大家帶來更多的例子。

後續會給大家帶來,神經網絡的框架和訓練等等。

感興趣的朋友,請關注下~


分享到:


相關文章: