2. 文獻探討
2.3 AOI 演算法
屬性導向歸納法(AOI)在 1990 年由 Cai, Cercone & Han 所提出,化簡的過程分成 兩個主要的環節「概念樹的建立」以及「概念階層的爬升」,其核心的精神為「屬性 移除(Attribute Removal)」和「屬性抽象化」(Han, 2001)。 屬性移除的主要目的為將 資料之間相異過大、無法以更高概念層級取代的資料欄位進行移除,例如學生資料中 的姓名,同時將意義重覆的欄位進行移除,例如學生資料中同時存在著出生年月日及 年紀兩個欄位,而年紀可由出生年月日來推算,故年紀欄位便可移除。而接下來將使 用加拿大某大學的學生資料為例,如表 2-1 所示,來說明資料表與概念樹、概念階層 之間的關係,並以此資料表來示範屬性導向歸納法的演算七個步驟中,各個步驟所應 完成的內容。
資料收集
資料前置處理
資料倉儲建立
資料探勘
樣式評估
結果展示 資料庫
原始資料
多維度資料庫
知識庫
表 2-1、加拿大某大學的學生資料表中歸納前的部份原始資料 Names Status Major Birth Place GPA
Anderson M.A. History Vancouver 3.5
Bach Junior Math Calgary 3.7
Carlton Junior Liberal art Edmonton 2.6
Mary M.S. Physics Ottawa 3.9
… … … … …
Monk Ph.D, Computing Burnaby 3.8
Wise M.S. Statistics Victoria 3.2
資料來源:Attribute-Oriented Induction in Relational Database, Y. Cai, N. Cercone, and J. Han, 1991, Knowledge Discovery in Databases ,Ch 12, AAAI/MIT Press.
一、屬性移除:在檢視過資料表的內容後,便可確定屬性 Names 的屬性值有太多 不同的內容,同時也沒有較高的概念階層可以表示它,因此在歸納過程中屬性 Names 是需要被移除,餘下的屬性 Status、Major、Birth Place、GPA 便可依照 專家的意見與建議來建立概念層級,並依照概念層級來畫出概念樹以方便理解 層級與層級之間的關係。
在屬性 Status 的概念階層(圖 2-2)裡,概念階層的最頂端為 ANY,意指底 下包含所有的屬性階層與屬性值,第二層為 Graduate 與 Undergraduate 兩個屬 性值,代表將學生資料依照其特徵分為 Graduate 與 Undergraduate 兩類,第三 層則是說明第二層底的各個屬性值分別是由第三層的哪些屬性值所集合構 成。第二層的 Graduate 底下包含了第三層的 M.S.、M.A.、Ph.D.等三個屬性值,
而同為第二層的 Undergraduate 底下包含第三層的 freshman、sophomore、
junior、senior 等四個屬性值,若將屬性 Status 的概念階層以樹狀圖來表示則可
得到如圖 2-3 的概念樹。
圖 2-2、屬性 Status 的概念階層
資料來源:Attribute-Oriented Induction in Relational Database, Y. Cai, N. Cercone, and J. Han, 1991, Knowledge Discovery in Databases ,Ch 12, AAAI/MIT Press
圖 2-3、屬性 Status 的概念樹
資料來源:Attribute-Oriented Induction in Relational Database, Y. Cai, N. Cercone, and J. Han, 1991, Knowledge Discovery in Databases ,Ch 12, AAAI/MIT Press
在屬性 Major 的概念階層(圖 2-4)裡,概念階層的最頂端 ANY 則是包含第 二階層 Science 與 Art 兩個屬性值,此處依照科目的內容分為 Science 與 Art 兩大類, 第二階層 Science 底下包含了第三階層的 biology、chemistry、
computing、physics…等多個屬性值,而第二階層 Art 底下亦包含第三階層 literature、music、painting…等多個屬性值,將屬性 Major 的概念階層以樹狀 圖來表示則可得到如圖 2-5 的概念樹。
ANY
Undergraduate
Graduate
freshman
sophomore junior
senior M.S. M.A. Ph.D {freshman, sophomore, junior, senior} Undergraduate
{M.S., M.A., Ph.D.} Graduate {undergraduate, graduate} ANY
圖 2-4、屬性 Major 的概念階層
資料來源:Attribute-Oriented Induction in Relational Database, Y. Cai, N. Cercone, and J. Han, 1991, Knowledge Discovery in Databases ,Ch 12, AAAI/MIT Press
圖 2-5、屬性 Major 的概念樹
資料來源:Attribute-Oriented Induction in Relational Database, Y. Cai, N. Cercone, and J. Han, 1991, Knowledge Discovery in Databases ,Ch 12, AAAI/MIT Press
在屬性 Birth Place 的概念階層(圖 2-6)裡,在最頂端的階層 ANY 之下依照 出生地的所在位置進行分類,第二階層分為 Canada 與 foreign 兩大類,第二階 層 Canada 底下的第三層階包含了不同的省份 British Columbia、Alberta、Ontario 等多個屬性值,而同為第二階層的 foreign,其底下的第三階層則是依照不同 的國家劃分為 India 與 China 兩個屬性值。較特別的是在 Canada 這一個屬性 值再往下的第三階層所代表的是省份,不同的省份再對應到第四階層中不同的 城市,而在 foreign 這屬性值再往下的第三階層所代表的是 Canada 以外的國 家,但再往下對應到第四階層時並不像 Canada 一樣建立一個省份的階層,而 是直接跳過省份、對應到城市,因此 Major 的概念階層並不像其他的屬性一樣 在相同的階層對應到的是同一類型的屬性值,而是一種不對稱的屬性階層概
ANY
Science Art
biology
chemistry
……
computing
literature painting
music …….
{biology, chemistry, computing,…..,physics} Science {literature, music,…..,painting} Art
{Science, Art } ANY
念,若將屬性 Birth Place 的概念階層以樹狀圖來表示則可得到如圖 2-7 的概念 樹。
圖 2-6、屬性 Birth Place 的概念階層
資料來源:Attribute-Oriented Induction in Relational Database, Y. Cai, N. Cercone, and J. Han, 1991, Knowledge Discovery in Databases ,Ch 12, AAAI/MIT Press
圖 2-7、屬性 Brith Place 的概念樹
資料來源:Attribute-Oriented Induction in Relational Database, Y. Cai, N. Cercone, ...
...
ANY
Canada Foreign
B.C Ontario China India
Vancouver Victoria Bombay
...
Beijing
...
USA
...
Chicago ...
{Bumaby, ….., Vancouver, Victoria} British Columbia {Calgary, ….., Edmonton, Lethbridge} Alberta
{Hamilton, Toronto, Waterloo} Ontario {Bombay, …..,New Delhi} India
{Beijing, Nanjing, …..,Shanghai} China {India, China} foreign
{ British Columbia, Alberta,…..,Ontario} Canada {foreign, Canada} ANY
第二階層 Poor、Average、Good 與 Excellent 等四個屬性值,此處依照分數的 高低分為四大類不同的評語,第二階層的不同評語分別對應到第三階層不同的 分數範圍,0.00-1.99 對應到 Poor,2.0-2.99 對應到 Average,3.0-3.99 對應到 Good,4.0-4.99 對應到 Excellent,將屬性 GPA 的概念階層以樹狀圖來表示則 可得到如圖 2-9 的概念樹。
圖 2-8、屬性 GPA 的概念階層
資料來源:Attribute-Oriented Induction in Relational Database, Y. Cai, N. Cercone, and J. Han, 1991, Knowledge Discovery in Databases ,Ch 12, AAAI/MIT Press
圖 2-9、屬性 GPA 的概念樹
資料來源:Attribute-Oriented Induction in Relational Database, Y. Cai, N. Cercone, and J. Han, 1991, Knowledge Discovery in Databases ,Ch 12, AAAI/MIT Press.
所有的屬性與其相對應的概念階層、概念樹都建立好之後就可以準備進行下一
{2.0-2.99} Average {3.0-3.99} Good {4.0-4.99} Excellent
{Poor, Average, Good, Excellent} ANY
二、概念樹爬升:若某一個屬性值在概念層級之中有著更高層級的概念存在,就要 以更高層級的屬性值來取代原本的屬性值。以 Birth Place 為例,Bumaby、
Vancouver、Victoria 等爬升為 B.C(British Columbia),Hamilton,、Toronto、
Waterloo 爬升為 Ontario。其他的屬性也依照同樣的概念進行爬升,爬升完成 後的資料表內容如表 2-2 所示。
表 2-2、爬升完成的學生資料表部份內容 Major Birth Place GPA Vote
Science B.C Good 1
Science Ontario
Good 1
Art B.C
Good 1
…… …… …… ……
Art India
Good 1
Science China
Good 1
資料來源:Attribute-Oriented Induction in Relational Database, Y. Cai, N. Cercone, and J. Han, 1991, Knowledge Discovery in Databases ,Ch 12, AAAI/MIT Press.
資料數的累加:爬升結束後,在資料表中開始出現各屬性欄位內容皆相同的資 料,此時就要將內容相同的資料進行合併歸納,並將 Vote 的值進行累加到歸納後的 資料中,累加完成後的資料表內容如表 2-3 所示。
Major Birth Place GPA Vote
Art Canada Excellent 35
Science Canada Excellent 40
Science Foreign Good 25
資料來源:Attribute-Oriented Induction in Relational Database, Y. Cai, N. Cercone, and J. Han, 1991, Knowledge Discovery in Databases ,Ch 12, AAAI/MIT Press.
三、門檻設定:在此階段需要對所有屬性或單一的屬性設下門檻值,該屬性的屬性 值個數超過此門檻值,則此門檻值就需要被移除或與專家討論如何修改概念階 層的設計以減少屬性值的個數。而在此範例中,專家認為表 2-3 裡前兩筆資料 的內容除了 Major 之外,Birth Place 及 GPA 的內容皆相同,為了簡化歸納後 的規則數量,可以將前兩把資料進行合併,合併後得到如表 2-4 的內容。
表 2-4、合併完成的學生資料表
Major Birth Place GPA Vote
{Art, Science } Canada Excellent 75
Science Foreign Good 25
資料來源:Attribute-Oriented Induction in Relational Database, Y. Cai, N. Cercone, and J. Han, 1991, Knowledge Discovery in Databases ,Ch 12, AAAI/MIT Press.
四、規則轉換:歸納完成後的結果需要轉換成較容易解讀的規則,方便使用者了解 此次挖掘的結果為何,而此範例中所得到的規納結果為:在屬性 Status 中,屬 性值為 Graduate 的學生裡,會有 75%的機率是在 GPA 屬性得到 Excellent 的 Canada 人或 25%的機率是在 GPA 屬性得到 Good 的 Foreign 人。