什麼是機器學習 ?
機器學習(Machine Learning, ML),即是人工智慧的分支,主要是透過系統將蒐集來的大量數據資料依序分類,透過演算法識別資料中的模式,產出模型加以學習改進,進而做出最佳的決策及預測。
以 Facebook、LinkedIn、Instagram 等社群平台為例,系統會持續關注使用者的好友清單、興趣、所加入的社群等資訊,運用機器學習的概念,推送資訊高度關聯的好友建議清單、想加入的社團,或是將可能有興趣的內容加入動態消息,為使用者數位社群增加新可能性。
當然,這項案例只是機器學習技術中的冰山一角,隨著電腦計算能力越發強勁,數據蒐集也越發多元,如醫學診斷等輔助、證券分析、指紋辨識、語音處理、線上購物、天候預判等都能看見其身影。
機器學習類型

雖然機器學習時常與 AI 一起討論,但值得注意的是,機器學習歸屬於 AI 範疇,但並不是所有 AI 都能劃分為機器學習。
機器學習就好比人類學習的模式一樣,但要讓機器有學習能力,就必須依照訓練資料獲得規律,接著分析、理解及判斷。而機器學習根據不同的模式,又分為監督式學習(Supervised Learning)、非監督式學習(Unsupervised Learning)、半監督式學習(Semi-supervised Learning)及強化學習(Reinforcement Learning)四種。
監督式學習(Supervised Learning)

監督式學習,是機器學習中的一種方式,它將所有的資料加以「標註」(Label),告訴機器哪個答案是對的,哪個答案是錯的,告訴機器甚麼是正確答案後,藉此教導機器學習如何判斷出標準結果。以最常見的貓、狗辨識為例,匯入圖像樣本後,須由「人工」進行標註,將圖像樣本中的貓狗標示出來,讓機器學習認識貓與狗的外觀與特徵(Feature),例如耳朵、四肢、體型等,而後機器就能依照資料中的分析模式進行辨識及預測。
由於監督式學習的操作,在事前須仰賴人力將圖像中進行特徵標註,若要讓模型達到預期的準確度,就須提供完整、大量的資料給機器學習,因此監督式學習準確度較高,但作業量相對大、執行面也相對繁瑣。
非監督式學習(Unsupervised Learning)
就如同字面上的「非」字,非監督式學習的訓練,它沒有給機器事先標註過的訓練範例,而是讓機器自動尋找資料的特徵並自行分類。

例如提供機器大量貓和狗的圖片學習,但事前並沒有告訴機器哪些是貓哪些是狗,而是直接讓機器自動區分貓狗潛在特徵並分類。非監督式學習常見的功能可為分群(Clustering)、關聯(Association)與降維(Dimension Reduction),在資料探勘初期是好用的工具,對人力的負擔較小,但對機器而言卻相反,且不重要的特徵容易被過度放大,預測結果容易出現偏差。
半監督式學習(Semi-supervised Learning)
所謂半監督式學習,就是對少部分的資料進行標註,提供機器學習判斷誤差時的標準。這樣的方法可以讓預測較為精準,是目前機器學習類型中最常使用的方法。
例如任選 100 張貓狗的圖片,在其中的 10 張圖片中進行標註,告知機器哪些是貓或狗的特徵,讓機器自己學習分辨照片中的關聯性,有了這 10 張圖片的特徵當作依據,通常機器預測出來的結果較非監督式學習精準。
強化式學習(Reinforcement Learning)

強化式學習的運作方式,是讓機器直接與環境互動,從中去學習以取得預期的結果。這種學習方式,不須進行標註,而是告訴電腦哪一步是正確,哪一步是錯的,讓機器逐一修正並自我學習,進而得出回饋及越來越有效率達成目標。
以非監督式學習來說,強化式學習就顯得格外重要,像是要機器自行學習辨識特徵,機器將狗的照片預測為貓,這時由人給予機器指正,讓機器從錯誤中學習,以此學習正確的分類和辨識,如此預測會更加精準可靠。
其實,以上介紹的四種機器學習方式,僅是大致的分類,在專案中要執行何種方式的演算法,則需視實際的資料量、目標等考量而決策,因此無論是何種學習法,主要的考量就是—想解決何種問題?