/  6
 
1
分類演算法之比較
 — 
以帕金森氏症電子監控資料為例
 
  盧松筠
1
、周思婷
1
、鄭筱頻
1
、趙健復
1
、林芳竹
1
 
1
Computer Science and Information Engineering Department, Fu Jen Catholic University, Sinjhuang, Taipei 24205, ROC
我們以
UCI Machine Learning Repository
上的帕金森氏症電子監控資料(
Parkinsons Telemonitoring Data Set
)為例
[1][2]
,使
Weka
比較八種不同屬性的分類演算法,以準確度(
precision
)為目標,提供一個客觀的測量數據作為探勘資料時演算法選擇的參考。演算法包含以下十種類型:(
1
Decision tree
2
Rule induction
3
Classification using association rules
4
NaïveBayesian classification
5
Support vector machine
6
K-nearest neighbor
7
Bayesian networks
8
Neural networks
 — 
分類、帕金森氏症、電子監控、資料探勘
 
I.
 
   引言
 
  篇文章提供十種不同類型的分類演算之比較,以
 
UCI Machine Learning Repository
上之帕金森氏症電子監控資料集為例。此資料集由
Intel
與美國十個醫學中心合作,以居家聲音監控裝置,收集帕金森氏症病患之聲  音資料,藉以預測帕金森氏症病患之症狀等級。實驗的演  算法包含(
1
Decision tree
2
Rule induction
3
Classification using association rules
4
Naïve Bayesianclassification
5
Support vector machine
6
K-nearestneighbor
7
Bayesian networks
8
Neural networks
。本  篇文章會簡單描述各類演算法之基本概念以及演算法選擇 之理由。實驗的設計主要分為兩個階段:單一演算法之不  同參數設定的比較,以及各演算法之間之實驗數據的比   較,作為資料探勘時演算法選擇的參考。最後提出我們的   觀察與討論。
 II.
 
 帕金森氏症
 
 帕金森氏症(
Parkinson's Disease
),也稱為震顫麻痺綜合徵、柏金遜症或巴金森症。是一種慢性的中樞神經系統失調。它的病因目前仍不明,推測和大腦底部基底核
basal ganglia
)以及黑質(
substantial nigra
)腦細胞快速 退化,無法製造足夠的神經引導物質多巴胺
Dopamine
)和膽鹼作用增強有關(
Fig. 1
)。腦內需要多巴胺來指揮肌肉的活動;缺乏足夠的多巴胺就產生各種 活動障礙。患病者通常會有靜止時顫抖、僵直、運動不能  和運動遲緩、平衡感差、便秘、講話速度緩慢、音調呆 板、寫字越寫越小等症狀(黑質內之細胞喪失
80%
   時)
[3]
 III.
 
  資料集
 
(1)
 
資料描述
 
此一資料集由英國牛津大學的
Athanasios Tsanas
Max Little
所提供。以美國十個醫學中心和英特爾
Intel
)合作發展的一套電子監控設備記錄帕金森氏症病  患說話時的聲音訊號,來預測帕金森氏症病患在帕金森式症症狀衡量表(
UPDRS
)中所獲得的分數,藉以判別患  者病症程度。資料集共計有
5875
  筆資料,記錄了六個月  內,
42
名初期帕金森氏症病患於家中試用電子監控設備   的聲音訊號(一名病患大約有
200
  筆左右的資料)。
 
(2)
 
資料屬性
 
  資料集共有
22
  個屬性(
TABLE I
),其中
subject#
 為病患之代號,於資料探勘時並無幫助,予以剔除。此外,
moto_UPDRS
以及
total_UPDRS
 為分類之目標,在這邊我  們選擇
total_UPDRS
  作為我們分類之目標。所有的資料屬性中,除了
sex
 為名詞性(
nominal
)的資料之外,其餘皆 為數值(
numerical
)資料。
 
(3)
 
分類目標
 — 
UPDRS
 帕金森氏症症狀衡量表(
Unified Parkinson's DiseaseRating Scale - UPDRS
[4][5][6]
 為判斷帕金森氏症病患症狀 之依據,通常藉由與醫師面談或臨床觀察來對病患進行評分。評分表共分為四大部分:
 
 
  智能、行為、情緒(
mentation, behavior and mood
 
 
 
Fig. 1.
多巴胺傳導路徑及其作用
。多巴胺是一種神經傳導物質,用來  幫助細胞傳送脈衝的化學物質。這種腦內分泌主要負責大腦的情慾,  感覺,將興奮及開心的信息傳遞,也與上癮有關。多巴胺的主要傳導   路徑有條,分別為中腦皮層通路(
mesocortical system
)、中腦邊緣 系 統 通 道 (
mesolimbic system
) 、 黑 質 紋 狀 體 徑
nigrostriatal system
)以及結節漏斗徑路(
tuberoinfundibularsystem
 
 
2
 
  日常生活能力(
activities of daily living
 
 
   動作能力之檢查(
motor examination
 
 
 治療之併發症(
complications of therapy
 
每一個部份再細分為不同的測量指標。最後再依據評分結  果對患者做病症之分級(
0% ~ 100%
,共十個等級),藉以判斷患者的生活能力。
 IV.
 
  實驗設計
 
  實驗的設計主要分為兩個階段:
單一演算法之不同參數設定的比較
以及
各演算法之間之實驗數據的比較
 在單一演算法的實驗中,每個演算法有不同的參數,例如決策樹是否修剪(
pruned
),或是類神經網路需要幾層隱  藏層(
hidden layer
)。實驗的目的為調整不同的參數以求  最高的分類準確度(
precision
)。由於我們並沒有額外的  測試資料,我們將資料集的
70%
  作為訓練資料,
30%
  作為  測試資料,並將
random seed
當作實驗的參數之一
random seed
為隨機選取
70%
   訓練資料之用)。除此之 外,為求公平起見,我們需要在相同的環境下進行實驗(例如同一台電腦),如此一來,在執行時間的比較上才  會有意義。我們將目標分類
total_UPDRS
分成十等份,也  就是將數值資料轉換成名詞性的資料以方便比較(符合
UPDRS
原本的定義)。第二階段則以第一階段之實驗結  果作為比較的依據,探討各演算法之間的差異。
 V.
 
  實驗
 
1.
 
 Decision tree
 
演算法概念及描述
 
  利用建立樹狀的結構來達成分類的目的。通常我們 藉由計算資料屬性的熵(
entropy
)以及資訊量
information gain
)來決定決策樹的節點。分類的結果會出現在葉節點(
leave node
)上。從根(
root
)到葉節點所經過的路徑可視為是一條規則(
rule
)。在這邊我們選擇
J48
,也就是
C4.5
  演算法。
J48
 有簡單、快速、準確率高等優點。相較於
ID3
  演算法,
J48
  可以處理數值資料,而且參數設定較少,所以我們選擇
J48
  作為決策樹這個類型  演算法的代表。
 
 
參數設定
 
 
Pruned/unpruned
 
Reduced Error Pruning
REP
 
 
Confidence Factor
CF
 
 
Random Seed
RS
 
 
實驗數據與結果
 
我們先調整參數,使的決策樹未修剪。其分類的準   確高,速度也快,不過樹的結構相對就比較大。之後我們 進行修剪,發現準確度微幅上升,可見得未修剪時可能有
overfitting
   的產生。然而當我們使用
reduced error pruning
   時,準確度卻大幅下滑,從樹的大小來看,推測是修剪過  度的關係。我們在修剪的狀況下,調整
confidencefactor
,其準確度並未改變,可能的原因為節點之
confidence factor
  皆小於
0.1
,所以調高
confidence factor
無影響。最後我們調整
random seed
 為
2
   時,有最高的準   確度。
 
2.
 
 Neural network 
 
演算法概念及描述
 
TABLE
 
IA
TTRIBUTE
I
NFORMATION
 Attributes Descriptionsubject#
  受測者的代號
 age
  受測者年齡
 
sex
  受測者性別。
0
  代表男性,
1
  代表女性。
 test_time
  使用電子監控設備的時間。整數部分代表天數(例:
5.6431
)。
 motor_UPDRS
  受測者利用線性內差法所得之帕金森症症狀衡  量表分數(運動部分)
 total_UPDRS
  受測者利用線性內差法所得之帕金森症症狀衡  量表分數(總分)
 Jitter
%
, Jitter
Abs
,Jitter:RAP,Jitter:PPQ5,Jitter:DDP
對基頻(
fundamental frequency
)變異的測量
 Shimmer,Shimmer
dB
,Shimmer:APQ3,Shimmer:APQ5,Shimmer:APQ11,Shimmer:DDA
對振幅變異的測量
 NHR, HNR
兩種對雜訊干擾的判斷
 RPDE
非線性動態複雜度分析
 DFA
 
   碎形信號指數
 PPE
非線性的基頻變異測量
 TABLE
 
IID
ECISION
T
REE
J48
 
Correctly(%)
 
Precision(avg.)
 
Leaves
 
Size
 
Time(s)
 Unpruned 93.8138 0.938 254 507 0.9Pruned 93.9841 0.94 242 483 0.86REP 90.4654 0.905
199 397 0.54
CF = 0.1 93.9841 0.94 232 463 1.03CF = 0.5 93.9841 0.94 242 483 0.99RS = 2
95.9705 0.961
242 483 1.02RS = 3 95.63 0.956 242 483 0.97CF = 0.75 95.9137 0.96 250 499 3.83
 預設值
: CF = 0.25, unpruned = false, REP = false, RS = 1Fig. 2.
 在
RS = 2
CF = 0.25
unpruned = false
REP = false
   的參數設定 下,決策樹共
17
  層(
level
),根節點為
age
  屬性。
 
 
3
 類神經網路的建構理念是受到生物(人或其他動物)的啟發而產生的。仿造大腦神經突觸聯的結構,進行  資訊處理,進而。類神經網路通常由大量的節點(或稱「神經元」)相互連接構成。每個節點代表一種特定的輸出函數,稱為激勵函數(
activation function
)。每兩個節   點間的連結會有不同的權重(
weight
),這相當於類神經 網路的記憶。網路的輸出則依網路的連接方式,權重值和  激勵函數的不同而有所不同(
Fig. 3
)。
 
 
參數設定
 
 
Decay
D
 
 
Hidden layer
HL
 
 
Learning rate
LR
 
 
Training time
TT
 
 
Random seed
RS
 
 
實驗數據與結果
 
 類神經網路最重的參數之一就是隱藏層的數目,經 過實驗,隱藏層的數目越多,則準確率越高,但相對的執  行時間會變得非常地長。我們嘗試增加
learning rate
,並   讓
learning rate
   隨時間遞減(
decay
),然而卻沒有如我們 預期般減少執行的時間,推測可能是因為類神經網路收斂   時震盪或是因為已到達停止條件所致。我們增加了停止條  件的數目,確實增加了準確度,但是因為時間過長,所以 不予考慮。最後在
random seed
 為
2
   時有最高的準確度。
 
一般來說,類神經網路通常都能有較好的分類準確  度,然而為了公平起見,我們將
total_UPDRS
分成十個部分,也就是將數值資料轉換成名詞性的資料,這對於擅長   數值計算的類神經網路來說,或許是造成實驗結果準確度 不高的原因。
 
3.
 
 Rule induction
 
演算法概念及描述
 
  尋找在同一事件中出現的不同項目的相關性,成為一系列有意義的規則,顯示數據中蘊含的關聯性。優點是  尋找多條規則,每個規則可得出一個不同結論、結果清晰 有用、可以處理增加的數據、計算的消耗量是可以被預測   的以及規則集比決策樹更具有一般性。缺點是花費時間較長、難以決定正確的數據以及易忽略稀有數據。
 
我們選擇決策表(
decision table
)作為實驗的演算法。決策表有速度快
(
 相較於其他的
rule induction
)
、以及規則易懂的優點。
 
 在建立決策表前,需要先決定決策表之大小。依據  選擇(
alternative
)的數量
a
以及條件(
condition
)的數量
b
,表格的大小為
a
b
Fig. 4
)。接下來盡可能簡化表格,並刪除不可能發生的狀況(
impossible
)、前後矛盾的狀  況 (
inconsistencies
) 以 及 冗 長 、 多 餘 的 狀 況
redundancies
)。
 
 
參數設定
 
 
Search(S)
:選擇不同的演算法找出建立表格的屬性
 
 
Random seed(RS)
 
實驗數據與結果
 
  選擇不同的搜尋演算法沒有什麼太大的差異,都是
age
sex
test_time
total_UPDRS
來建構表格。準確率大多為
70%
左右。調整
random seed = 3
 有最高的準確率。得到的規則總共有
975
  條,準確率為
0.758
 
4.
 
Classification using association rules
 
演算法概念及描述
 
 藉由尋找看似無關的物件之間的關聯性,找出隱藏其中的規則。一個簡單的例子是美國已婚的年輕男子在假  日到超商買啤酒有很大的機率會買嬰兒尿布,因為假日時美國男性習慣相約喝個幾杯,但是因為已婚的年輕男子家  中通常有剛出生的小孩,所以只能待在家裡喝啤酒配電視以便照顧小孩。
 
我們選擇最著名且較為簡單的
Apriori
  演算法作為實  驗的對象。利用由下往上(
bottom-up
)循序漸進的方式,藉由產生與測試候選項目集得到高頻項目集合,然後  再從高頻項目集中找出有用的關聯法則。
 
 
參數設定
 
 
Minimum confidence
 
實驗數據與結果
 
  由於
apriori
演算法的輸入並須是名詞性的,所以在  資料的前置處理時,我們必須先將所有的數值資料轉換成  名詞性的資料。
 
Fig. 3.
類神經網路示意圖
。此為單一隱藏層之類神經網路結構,綠色   的部分為各屬性,黃色的部分則為
total_UPDRS
分類的區間。
 
Fig. 4.
決策表
[7]
。條件有三個,而選擇有兩種(
Yes or No
),所以表 格的大小為
2
3
= 8
 

Share & Embed

More from this user

Recent Readcasters

Add a Comment

Characters: ...