在實作機器學習模型上,理解我們所面的問題為何種形式,並且將之轉換為可以建模的機器學習問題可謂至關重要。一般來說,我們所面對的機器學習問題可分為兩種,一種為監督式學習(Supervised Learning),另一則為非監督式學習(Unsupervised Learning),在這兩種問題上,最顯著的差異就在於我們手上有沒有要進行預測的目標變數(Target),若我們要解決的問題是預測一個目標值,並且在要進行建模的資料上也有該對應目標的欄位,那麼我們就是在處理一個監督式學習的問題,反之則為非監督式學習。
監督式學習在細分上又可以分為回歸(Regression) 與 分類(Classification),回歸問題要預測的是 連續型(Continuous) 的數值,比如說保險客戶的續保金額、房屋售價與汽車維修所需時間等,而分類問題要預測的則是 類別型(Categorical) 的目標,比如說電信客戶是否會取消合約、性別與機器的故障與否。針對監督式學習,我們可以使用常聽到的機器學習演算法如Linear Regression、Random Forest和Neural Network等方式來解決。監督式學習也是此課程主要的重點,因此後續的內容會著重在此種問題上。
非監督式雖無要預測的目標,其主要目的是找出數據中潛藏的模式,比如說以K-means演算法(註1),對資料進行分群,或者以主成分分析(Principal Component Analysis, PCA)(註2),從龐雜資料中提取重要的資訊。
下方提供一個針對監督式學習的簡單練習(見圖1),大家可以想一想答案是什麼喔!(答案提供於文章最下方)
圖1
Source: Coursera - Launching into Machine Learning
註1: https://zh.wikipedia.org/wiki/K-Means%E7%AE%97%E6%B3%95
註2: https://zh.wikipedia.org/wiki/%E4%B8%BB%E6%88%90%E5%88%86%E5%88%86%E6%9E%90
練習問題答案: C