之前的文章簡介了 AI、機器學習與深度學習。接下來我們會以生活化的情境說明傳統機器學習的方法。本篇首先介紹傳統機器學習中的「監督式學習」。
回顧之前文章提到的監督式與非監督式學習,兩者最大的差異在於資料是否預先被標註;如果有,則可說這個題目屬於監督式學習。演算法會由標註好的訓練資料學習並建構模型,以確定該給測試資料哪種標記。如 GCP 專門家開發的柴犬秋田辨識器,就是藉由已標記的資料去訓練模型。
監督式學習:迴歸 vs 分類
監督式學習最常處理的兩個問題:迴歸、分類。當你預測的目標為連續的數值,我們稱其為迴歸;若目標為離散的,稱其為分類。
我們用一點簡單的數學說明兩者的差異。假設有一個方程式:y=iwixi+b 能夠用來表達我們資料集內的資料分布狀況;y 是我們要預測模擬的結果,又稱為依變數,x 是我們拿來做預測的屬性,又稱為自變數。監督式學習的目標,就是藉由已知的訓練資料,找到最適合的 w 來寫出這個方程式,讓未來我們匯入一筆資料的屬性 x1、x2、…xn時,機器就能預測模擬出目標 y。在迴歸問題裡,就是要畫出一條能夠預測 y 值的線(或超平面),在分類問題中,y 值則為某個類別的機率值,藉由這個值去判定資料屬於哪一個類別。
假設你經營某個社群網站,迴歸能處理的問題如:根據過去 app 的 DAU (daily active users)、MAU (monthly active users) 等數據預估下一個月的 DAU / MAU。而分類處理的問題則像是:藉由會員性別年齡、好友數、使用頻率等變數,預測用戶是否會流失,每筆訓練資料標記了「已流失與否」,模型則可能產出每筆資料「流失的機率」,假設這個機率值大於 50% 我們就視為「會流失」,藉此處理分類的問題。
迴歸
「畫出一條盡量通過這些點的線」
今天常見的迴歸分析常納入時間的變數做分析。應用領域如:股票走勢預測、不同時段的交通狀況、原物料價格變化對消費的影響…等。另外,自台灣電商提供 24 小時到貨服務開始,陸續引進 AI 改善進銷庫存,iKala 的 ML 團隊也協助電子商務導入這種銷售量預測,協助商品採購、品項管理單位做決策。
常見的演算法:線性迴歸、多項式迴歸
分類
「把資料分到我指定的幾個類別中」
前段提到的流失預測屬於簡單的二分法;流失預測常用於獲客成本較高、需要深度經營客戶關係的產業,如:電信、金融業。金融業也常透過分類機制去決定核貸與否、放款的金額與利率等;藉由年齡、年收入、教育程度、還款紀錄等作為變數,以預測存戶的信用評等。另外,行銷或公關部門也常會藉語意分析的結果掌握輿情,其技術就是蒐集網路文章、站上評價等,經過斷字處理,再將文章做正負面的分類。其他常見應用如:垃圾郵件偵測、文章分類、語種偵測。
常見的演算法:決策樹、邏輯迴歸、SVM(支援向量機)、樸素貝葉斯、kNN
不同的演算法各有優缺點與適合的應用情境,關於監督式學習的演算法,詳見此文。