iT邦幫忙

第 11 屆 iT 邦幫忙鐵人賽

DAY 1
1
自我挑戰組

機器學習入門系列 第 1

ML_Day1(什麼是機器學習)

基本介紹
https://ithelp.ithome.com.tw/upload/images/20190912/20116157OAHiZBfhWE.png
https://ithelp.ithome.com.tw/upload/images/20190912/20116157XxfcwFFy8b.png
從上面兩張圖可以看到,其實人工智慧這不是一個新的詞,這個詞早在1950年就出現了,這個詞意味著「希望機器可以跟人一樣聰明」。到了1980年開始又有一個新的詞出現了,就是機器學習,那什麼是機器學習呢?顧名思義就是讓機器去學習,而機器學習是達成人工智慧的一個手段,透過觀察不斷地學習,然後轉化成有用的技巧,讓機器可以跟人一樣聰明。深度學習就是機器學習的其中一種方式。

什麼是機器學習?
上面有提到,讓機器學習來完成目標;所以並不是寫程式讓它完成目標,而是寫程式讓它具有學習的能力。例如語音辨識,你告訴機器幾段聲音,並且告訴他相對應的意思(Hi, How are you, Good bye),讓它學習,當你再給它一段新的聲音時(Hello),它就能辨識出這段聲音的結果。
https://ithelp.ithome.com.tw/upload/images/20190912/201161579QCd6Qyk1I.png
例如影像辨識,你想要辨識一棵樹,你可能寫了很多規則,檢查是不是綠色的,有沒有很多像葉子的形狀,寫了很多辨識樹的規則,但今天如果一棵樹枯掉了,樹葉是褐色,那就會失去辨識的能力。所以必須告訴機器樹的圖片及告訴它這就是樹,經過學習,即使一顆新的樹,它也能辨識出結果。
https://ithelp.ithome.com.tw/upload/images/20190912/201161570Nz30AtPgt.png

什麼情況下適合用機器學習?
並不是所有問題都能用機器學習解決,如果問題存在這三個關鍵的話,大致上就能用機器學習解決:

  1. 問題能透過學習來改善,也就是說,資料及問題必須有潛在規則,講白話一點就是「有跡可循」。
  2. 無法用程式直接把判斷寫出來,如果能用程式把每一個判斷都寫出來,那這樣就不用機器學習了。
  3. 必須有足夠的資料提供機器來學習。

用理論方式描述機器學習
用銀行發信用卡給客戶為例子,把客戶的資料當作input: x, 是否發卡當作output: y。我們在上面有提到,機器學習要學到技巧,也就是f,但這個f是指理想上機器學習想學的,但我們不知道f。所以機器必須從大量的資料裡做學習,從客戶的歷史資料x,都能對應是否要發放信用卡給這個客戶。我們希望機器從中學習到一個函數g,我們希望這個g很接近f,銀行就能透過這個函數來判斷是否給客戶信用卡。
https://ithelp.ithome.com.tw/upload/images/20190912/20116157LhOyXWai7z.png
https://ithelp.ithome.com.tw/upload/images/20190912/20116157inAwdfon7Z.png

  • Learning model
    以剛剛為例,機器學習到的g有很多個,例如年薪是否有 80 萬、負債是否有 10 萬、工作是否滿兩年等等假設,然後把學習到的g都放到一個H(hypothesis set)裡,然後機器學習演算法A要從H中找到一個最符合原始資料的g,也就是說透過g產生的y與實際的y是否吻合。
    https://ithelp.ithome.com.tw/upload/images/20190912/20116157hZlEbw68eX.png
    以影像辨識為例,機器學習到的f(這裡指的是上面所提到的g)都放到function set,然後機器學習演算法要從function set中找到一個最符合原始資料的f,也就是說透過f所預測出來的結果與實際是否吻合。從下面兩張圖可以發現f1是比較好的function,所以機器之後就使用f1來判斷新的圖片。
    https://ithelp.ithome.com.tw/upload/images/20190912/2011615796AhZCsCyD.png

https://ithelp.ithome.com.tw/upload/images/20190912/20116157emHAnlKMrV.png


下一篇
ML_Day2(機器學習種類)
系列文
機器學習入門28

尚未有邦友留言

立即登入留言