• 沒有找到結果。

06監督式學習.pdf

N/A
N/A
Protected

Academic year: 2021

Share "06監督式學習.pdf"

Copied!
22
0
0

加載中.... (立即查看全文)

全文

(1)

06 監督式學習

王元俊

Wang Yuan-Jiun

[email protected]

(2)

教材

• R 語言資料分析:從機器學習、資料探勘、文 字探勘到巨量資料分析 [第二版] • 作者:李仁鐘、李秋緣 • 出版社:博碩文化股份有限公司 • 書號:MP31714 • 出版日期:2017 年 6 月 2 日 • 範例檔案下載

(3)

本章內容

• 決策樹 • 支持向量機器 • 人工神經網路(略) • 組合方法 – 隨機森林 – 推進法(略)

(4)

決策樹簡介 (1)

• 機器學習的分類方法中,決策樹是一種具代表 性的方法,具有不錯的預測正確率 (Predict Accuracy) 與解釋能力 (Interpretability)。 • 決策樹結構: – 根節點 (Root Node) – 子節點 (Child Node)

– 葉節點 (Leaf Node) 或稱為類別 (Class)

• 從過去資料產生決策樹的機器學習技術叫做決

策樹學習(或訓練),或簡稱為決策樹。

– 某分類中的每一筆資料都歸類於同一類別。 – 該分類資料已無法找到新屬性進行節點分割。

(5)

決策樹簡介 (2)

• 利用決策樹進行預測(或測試)時,從樹根開 始,根據各分割選擇屬性值,移到另一子節點, 遞迴方式繼續往其子節點進行,直至到達葉節 點,則此葉節點為預測的類別。 根節點 子節點 子節點 子節點 子節點 子節點 子節點 子節點 類別一 類別二 類別一 類別一 類別二

(6)

決策樹簡介 (3)

• 決策樹過度學習 (Over-fitting) 問題:樹狀結構 太過於複雜。 – 解決方式:適當的修剪 (Pruning) 1. 事前修剪 (Pre-Pruning):統計方法評估 2. 事後修剪 (Post-Pruning) • 目前常用的決策樹演算法包括

– 分類與回歸樹 CART (Classification And Regression Tree)

– ID3 (Iterative Dichotomiser 3) 疊代二元樹 – C5.0

(7)

決策樹範例 (1)

• 來源:維基百科 • 老王是一家著名高爾夫俱樂部的經理。但是他 被雇員數量問題搞得心情十分不好。 – 某些天好像所有人都來玩高爾夫,以至於所 有員工都忙的團團轉還是應付不過來。 – 而有些天不知道什麼原因卻一個人也不來, 俱樂部為雇員數量浪費了不少資金。 • 小王的目的想透過下星期天氣預報,預測什麼 時候人們會打高爾夫,以適時調整雇員數量。 因此首先他必須了解人們決定是否打球的原因。

(8)

決策樹範例 (2)

• 我們得到以下記錄:

– 天氣狀況有晴,雲和雨;氣溫用華氏溫度; 相對濕度用百分比;有無風;顧客是不是在 這些日子光顧俱樂部。

(9)

決策樹範例 (3)

(10)

決策樹範例 (4)

• 結論: 1. 如果天氣是多雲,人們總是選擇玩高爾夫, 而只有少數很著迷的甚至在雨天也會玩。 2. 把晴天組的分為兩部分,我們發現顧客不 喜歡濕度高於 70% 的天氣。最終我們還發 現,如果雨天還有風,就不會有人打了。 • 解決方案 1. 老王在晴天,潮濕的天氣或者颳風的雨天 解僱了大部分員工,因為這種天氣不會有 人打高爾夫。 2. 其他的天氣會有很多人打高爾夫,因此可 以雇用一些臨時員工來工作。

(11)

範例 6-1 (6-1.R)

• 使用 rpart 套件的 rpart( ) 函數對鳶尾花 (Iris) 資 料進行分類。 • 鳶尾花資料: – 資料的筆數為 150 筆,共有五個欄位: 1. 花萼長度 (Sepal.Length) 2. 花萼寬度 (Sepal.Width) 3. 花瓣長度 (Petal.Length) 4. 花瓣寬度 (Petal.Width) 5. 品種 (Species):可分為 Setosa、Virginica 和 Versicolor 三個品種。

(12)

範例 6-2 (6-2.R)

• 設定適當 rpart.control( ) 函數的引數,改善決 策樹分類結果。

• 例如:

(13)

範例 6-3 (6-3.R)

• C5.0 採用事後修剪法,在修剪階段利用設定修 剪 (Pruning) 的信賴水準 (Confidence Level, CF) 做為基準,計算該子節點以及下一節點統計上 預期錯誤率與案例數之信賴水準,當目前子節 點錯誤率小於下一個子節點時,統計顯示該節 點繼續分割下去也不會有更好的結果,便將其 修剪。

(14)

範例 6-4 (6-4.R)

• 設定 C5.0Control( ) 函數的 sample 引數,表示 訓練資料筆數。 • 在 iris_treeModel$output 結果中找尋錯誤率 x = str_locate_all(iris_treeModel$output,"%") y = substr(iris_treeModel$output, x[[1]][4]-4, x[[1]][4]-1) test.error = as.numeric(y) • stringr 套件 – str_locate_all( ) – substr( )

(15)

支持向量機器

• 支持向量機 (Support Vector Machine, SVM) 是 一種監督式學習的方法,可廣泛地應用於統計 分類以及迴歸分析。 • SVM 屬於一般化線性分類器。 • SVM 的學習架構是以小樣本的訓練資料學習 來得到最佳的學習與歸納能力。 • 分類示意圖

(16)

範例 6-5 (6-5.R)

• 使用 e1071 套件與 iris 資料集。 • e1071 套件提供 tune.svm( ) 函數搜尋最佳的 cost(C) 及 gamma(γ) 值。 • 核心函數 radial basis 函數定義為 ) | | ( 2

)

,

(

u

v

e

u v

k

=

−γ −

(17)

組合方法

• Nilsson 在 1965 年提出由多位專家組合而成, 按一些特定方式,例如投票法、權重法,整合 各專家之意見進行決策。 • 其得到的結果會比單一專家的效果更好。 • 常見的組合方法包含掛袋法 (Bagging) 及推進 法 (Boosting)。

(18)

掛袋法/裝袋法

• 假設一個數據集 L,通過 Boostrap(自助抽樣) 有放回 (With Replacement) 的抽樣 n 次,那麼 產生了 n 個樣本數據集,記為 n 個 train 集。 1. 將這 n 個 train 集進行訓練,因此產生了 n 個基分類器,也可以說是 n 個決策樹。 2. 利用這 n 個基分類器對測試集進行預測, 因此會得到 n 個結果。 3. 採取多數投票 (majority vote),將 n 個預測 的結果出現頻率最高的基分類器作為總體 預測。 資料來源:https://blog.csdn.net/qq_36213518/article/details/54861930

(19)

隨機森林 (1)

• 隨機森林 (Random Forest) 是對掛袋法的一種改 進。 • 隨機森林在建立樹的時候,與掛袋法不同: – 掛袋法建樹時將所有預測變量都考慮進去。 – 隨機森林則是考慮每一個分裂點時,重新從 所有的預測變量 p 中隨機選取 m 個預測變 量,通常 m ≈ 𝑃𝑃。 • 當隨機森林中的 m = p 時,隨機森林和掛袋法 是一樣的。 資料來源:https://blog.csdn.net/qq_36213518/article/details/54861930

(20)

隨機森林 (2)

• 隨機森林結合多個決策樹的預測結果,使用投 票法並依多數決來決定分類結果。 • 範例 6-7 (6-7.R) – install.packages("randomForest") – trainData <− iris[ind==1, ]

• Subset a Data Frame in R – example[x, y]

• example is the data frame we want to subset, ‘x’ consists of the rows we want returned, and ‘y’ consists of the columns we want returned.

(21)

推進法 (1)

• 推進法是利用重設權重 (re-weighting) 法疊代地 訓練基分類器,當前的樣本權值的分布依賴於 上一輪基分類器的分類結果。 • 對於無法接受帶權樣本的基分類算法,則採用 「重新採樣法」 (re-sampling) 來處理,也就是 分錯的樣本在下一輪學習出現的次數會增加。 資料來源:https://kknews.cc/zh-tw/education/2aj2xby.html

(22)

推進法 (2)

• 推進法是以不放回的隨機抽取 (Without Replacement)。 • 範例 6-8 (6-8.R) – install.packages("adabag") – test.adaboost.pred$confusion – test.adaboost.pred$error

參考文獻

相關文件

多組樣本重複測量分析方法 多組樣本重複測量分析方法 Repeated measures ANOVA Repeated measures ANOVA..

(十三)分包契約依採購法第 67 條第 2 項報備於本分署,並經廠商就分包部

達成效益:本部持續推動多元類別之 職前訓練,運用自有場地、設備、師 資,並結合地方政府公、民營訓練單 位,辦理多元訓練職類課程,並視需

一、 重积分计算的基本方法 二、重积分计算的基本技巧 三、重积分的应用.. 重积分的

審查整理呈現資料:蒐集到的資料應先審核 是否完整、正確、合理與一致,然後利用敘

分類法,以此分類法評價高中數學教師的數學教學知識,探討其所展現的 SOTO 認知層次及其 發展的主要特徵。本研究採用質為主、量為輔的個案研究法,並參照自 Learning

„ 傳統上市場上所採取集群分析方法,多 為「硬分類(Crisp partition)」,本研 究採用模糊集群鋰論來解決傳統的分群

例如學生在必修部分已嘗試寫作不同類型的實用文