Leo Yeh's Blog

SAS 機器學習 (1)

教學目標

初步了解 SAS Enterprise Miner 應用機器學習演算法的基本概念,此篇主要為學習筆記。

重點概念

首先我們透過基於數學理論和電腦技術實作機器學習的應用已經存在很長時間,所謂機器學習其實是人工智慧的分支,主要是自動化建立系統,同時從資料中學習識別模式,並且以最少的人為介入進行決策。早在 1940 年心理學家、數學家和生物學家就已經有所突破奠定了電腦模擬類神經處理的基礎,接著在 1956 年則有十位頂尖科學家在達特斯學院開了人工智慧研討會,這次的會議被廣泛認為是現代人工智慧研究的誕生日,科學家們的夢想實現由電腦建構出具有人類智力特徵的複雜機器,能夠讓機器擁有人類的所有感覺和理智,以及像人類一樣思考,就是所謂的廣義人工智慧,又稱強人工智慧。但是在一些特定的領域或特殊的任務,我們則希望能夠讓機器處理的比人類更佳出色,例如: 圖像識別、人臉識別、電腦視覺、…等領域,就是所謂狹義的人工智慧,又稱弱人工智慧。緊接著在 1958 年心理學家在任職於航空實驗室時發現了類神經網路,也就是二元線線分類器,稱之為感知器,也就是感知器線性演算法 (Perceptrons Learning Alogrithm,PLA),主要能夠根據資料的特徵,將資料判斷為不同的類別,在此之後就有許多研究人員透過機器學習的技術建立類神經建模演算法。

接著在 1984 年統計學家則提出分類與迴歸樹 (Classification and regression tree,CART),以稱決策樹的方式被廣泛採用,成為機器學習許多方面的基礎。當時類神經網路和決策樹則被應用至資料探勘領域,至今機器學習已經是一門數學理論嚴謹證明的學科,其中包括複雜的建模、優化和學習等研究。更在 1998 年 SAS 的研究人員則發表針對企業進行資料探勘的研究,其中提到機器學習的技術與資料探勘、統計、模式識別、計算神經科學、資訊檢索、資料科學和人工智慧有許多相關的應用,也因此相關學科術語經常會使我們混亂,請參考以下的術語對應表。

機器學習術語 其它學科術語
Feature、Input Independent variable、Variable、Column
Case、Instance、Example Observation、Record、Row
Label Dependent variable、Target
Train Fit
Class Categorical target variable level

再來在 2001 年統計學家認為與許多統計建模的方法相比,機器學習的重點在於提升預測的準確性,一般來說,透過訓練複雜的模型將可提高預測準確度,但是這往往會需要針對模型進行優化,然而在當時許多機器學習演算法,例如: 類神經網路、隨機森林和支持向量機,皆已經可以從資料中學習,以非線性的模式訓練資料,並且在測試資料中表現良好,此外機器學習還能夠預先處理訓練範例,以減少雜訊和交叉驗證模型,防止過適的情況發生。緊接著機器學習演算法對應至資料探勘領域則主要可以分為三大類,分別為監督式學習、非監督式學習和半監督式學習,其中半監督式主要是監督式預測與分類演算法搭配非監督式分群演算法進行實作,至於 SAS Enterprise Miner 節點和 SAS 程序提供哪些機器學習演算法請參考以下對應表。

監督式學習演算法

演算法 SAS EM 節點 SAS PROC 程序 參考文獻
Regression High Performance Regression、LARS、Partial Least Squares、Regression ADAPTIVEREG、GAM、GENMOD、GLMSELECT、HPGENSELECT、HPLOGISTIC、HPQUANTSELECT、HPREG、LOGISTIC、QUANTREG、QUANTSELECT、REG Panik (2009)
Decision tree Decision Tree、High Performance Tree ARBORETUM、HPSPLIT de Ville, ‎Neville (2013)
Random forest High Performance Forest HPFOREST Breiman (2001)
Gradient boosting Gradient Boosting ARBORETUM Friedman (2001)
Neural networks AutoNeural、DMNeural、High Performance Neural、Neural Network HPNEURAL、NEURAL Rumelhnrt, Hinton, Williams (1986)
Support vector machine High Performance Support Vector Machine HPSVM Cortes, Vapnik (1995)
Native Bayes HPBNET Friedman, Geiger, Goldszmidt (1997)
Neighbors Memory Based Reasoning DISCRIM Cover, Hart (1967)

非監督式學習演算法

演算法 SAS EM 節點 SAS PROC 程序 參考文獻
Apriori rules Association、Link Analysis Agrawal, Imieliński, and Swami (1993)
K-means clustering Cluster、High Performance Cluster FASTCLUS、HPCLUS Hartigan, Wong (1979)
Spectral clustering Base SAS+DISTANCE+PRINCOMP Von Luxburg (2007)
Kernel density estimation KDE Silverman (1986)
Kernel PCA Base SAS+CORR+PRINCOMP+SCORE Schölkopf, Smola, and Müller (1997)
Singular value decomposition HPTMINE、IML Golub and Reinsch (1970)
Self organizing maps SOM/Kohonen Kohonen (1984)

最後現今企業可以使用些許的資訊能力,無論是計算能力或實際分析商品以自動化獲取觀察資料,同時透過機器學習自動化的方法找出模式和趨勢,以利達到目標,然而人工智慧實際是將人與人之間的互動或組織與系統的互動進行連結,嘗試讓機器自主學習以利模仿人類進行重複任務(大A),再加上一點智能(小I),也就是所謂的弱人工智慧,就能夠達到預先判斷和進行決策,使得我們對於根據機器學習演算法技術進行的決策越來越有信心。此外 SAS 解決方案的價值在於提供機器學習模型,同時提供平易近人的操作畫面 (請參考 SAS 官方影片,其中主要包括決策樹隨機森林類神經網路關聯分析、…等。),讓我們輕易使用進階分析相關模型,而不必成為機器學習或人工智慧領域的專家,就能針對不同問題進行進階分析,再以人類溝通的方式將結果直接傳遞給使用者。總結來說機器學習演算法將會有很大的機會影響我們日常生活,若企業導入在 Forrester 預測分析與機器學習研究報告和 Gartner 資料科學平台研究報告中皆為領導者的 SAS 解決方案將會使得企業更有機會更加貼近客戶。

相關資源

⬅️ Go back