什麼是機器學習?

<說說5分鐘>第3說: 人類學習v.s.機器學習

--

前一篇 第2說: 學習的本質 有提到所謂的學習最主要是以下兩點:

1.透過觀察找到模式。
2.舉一反三的能力。

這邊感嘆一下…我們從小到大的教育很多時候是填鴨式教育。背了就多分。

國文老師要我們背課本(填空題: 屋漏偏逢____, 船遲又遇____)
歷史老師要我們背課本(選擇題: 西元1000年是中國的哪一個朝代?)
數學老師要我們背公式(圓面積的公式是「半徑×半徑×圓周率」)

大家都變成很強的考試機器,但很可惜的是只有少數老師能夠教大家去深度理解問題的本質。真正重要的是觀察模式,這樣面對新的問題才有辦法舉一反三

這裡再次引用之前的學習方程式:

Inputs → Brains(大腦) → knowhow(experience) ----> predict the un-know我們從小看過很多貓貓的圖片,無形之中在我們大腦中形成了一種經驗或knowhow,未來在路上看到一隻"從來沒看過"的貓貓,我們也能預測他"大概"是一隻貓貓。Y = f(X)
X:變數
f:函數,模式,關係式,方程式
y:應變數
我們學習不是要硬背每個X對應到的Y是什麼→這是死記。
我們是要學習那個f →這樣面對新的X,才有辦法根據模式找到對應的Y。

那麼,究竟什麼是機器學習呢?

Inputs → Brains(大腦) → knowhow(experience) ----> predict the un-knowInputs → Machine(機器電腦) → Model(patterns) ----> predict the un-know

其實跟人腦學習的模式很雷同,同樣是給予input,然後會產出output。但機器著重的是透過"資料Data"找到inputoutput之間的"關係Relationship",並且將這些關係轉變成"模式pattern",許多模式組合在一起就會變成一個"模型Model"。

這邊舉個很簡單的例子,根據下面的資料,我們要如何預測房價?

大部份的人大概很快就可以發現,這好像是以前國中學過的簡單線性迴歸就能解決了(x=平方呎, y=房價)。沒錯,其實畫上幾個點,拉一條線,就是最簡單的機器學習模型。

我們用更簡單的例子來說,挖了這些空格,就是希望讓機器自動去找到計算的patterns。

2   4   5 = 3    6   2   2 = 10
5 2 8 = 2 3 1 1 = 2
2 2 1 = 3 5 3 4 = 11
4 2 2 = 6 1 8 1 = 7

"=等於"符號的左邊是inputs,右邊是outputs。因此機器就會計算出某種規律為先乘法再減法。2*4-5=3, 1*8-1=7... 依此類推。

簡單來說,機器學習亦是根據各種我們餵入的input及output,來找尋資料間的patterns,以利於未來的預測(prediction)使用。

在瞭解機器學習是怎麼一回事後,我們可以來看看機器學習的種類 : )

另外,如果您好奇如何快速寫出具有結構性的分析報告,請參考:

--

--

Tsai Kam
事業規劃單位的數據分析師 (grow with python)

好奇、愛觀察、喜歡自己動手做,是一個位在事業規劃單位(BU端)的數據分析師。從0程式基礎到能逐步將python應用於工作之中的小魯蛇。