機器學習(Machine Learning, ML)為人工智慧(Artifitial Intelligence, AI)的其中一個分支,讓機器藉由資料自行進行學習,改善演算法,進而處理現實問題,減少非必要人力成本。目前相關技術已廣泛應用生物特徵辨識、手寫辨識、自然語言處理、資料探勘、信用卡盜刷預測、智能理財......等等各領域。
AI、機器學習、深度學習示意圖:
機器學習一般可分為監督式學習、無監督式學習、半監督式學習和強化學習,以下逐一進行簡介。
監督式機器學習可說是應用層面最廣的機器學習,可用以解決分類問題、迴歸問題。具有給定的標記資料,經由訓練可對未知資料進行預測,並會透過不斷優化模型使預測結果更貼近真實數據,但要留意模型在訓練階段過擬合反而會在應用時失真。那麼具體來說,我們會在什麼情況下使用監督式機器學習呢?讓我們看看底下的例子~
以預測是不是垃圾郵件為例,我們通常會取數個類別資料作為特徵,採用的資料也許包含寄件者(x1)、寄送時間(x2)、信件標題(x3)、信件主旨(x4)、內容字詞(x5)......等等,藉以判斷是否為垃圾郵件(y)。
因此監督式機器學習簡單的過程表示如下:
1.labeled examples: {features, label}: (x, y) → 大量(原始)標記資料
2.unlabeled examples: {features, ?}: (x, ?) → "?"為欲求得之目標值
用以預測類別,可以是二元分類,亦可以是判斷多種類別之中的其一。
Kaggle上的知名專案:Titanic: Machine Learning from Disaster Titanic算是一個較小的資料集,適合入門欲藉由實戰奠定基礎者參賽,其中給定的資料欄位有性別、年齡、艙等、票價、家庭人數等等,並可以藉由特徵工程的優化大幅提升模型預測準確度。此外,在探索資料集時也能意外發現不同特徵與生存率間的有趣關係,比如在這個專案中,性別、艙等明顯與生存率相關,後者很好理解,即經濟地位影響艙位、也就影響設施配備以及得知訊息的快慢,因此社經地位高者生存率也較高;而另一方面,女性生存率則是壓倒性高於男性,生存率近75%,男性則僅有18%,據傳當下並沒有任何海上規則要求男性如此行動,但船上的男性堅持捍衛他們骨子裡某種應保護弱小的信念,讓船上的婦孺先上救生艇,因而多數不幸殞命。
訓練給定資料,預測未知數值、走向......等等。
比如我們想了解某地區房價,可以蒐集地區、屋齡、坪數、房子布局(幾廳幾房幾衛浴)、交通......等資料對應房價,並建立模型。
Scikit-Learn資料集中有波士頓房價資料集,可以嘗試進行簡單的預測。
《此篇下集待續》
立即免費諮詢國營事業↓↓