42-คู่มือการใช้ WEKA Classification ใช้ตัวอย่าง...

Preview:

Citation preview

1 คมอการใช WEKA: Classification

คมอการใช WEKA: Classification ใชตวอยาง weather

ประกอบวชาระบบสารสนเทศเชงปญญา

สาขาระบบสารสนเทศทางคอมพวเตอร-คอมพวเตอรธรกจ

จดท าโดย

1. นายนนท สาระมาศ รหส 115330505314-8

2. นายวษณ เกยวเกา รหส 115330505391-6

3. นายศภกรช เขอนเพชร รหส 115330505392-4

เสนอ

อาจารย กตตรกษ มวงมงสข

รายงานเลมนเปนสวนหนงของวชา ระบบสารสนเทศเชงปญญา

รหสวชา (05-511-304)

ภาคเรยนท 2 ปการศกษา 2553

มหาวทยาลยเทคโนโลยราชมงคลธญบร

2 คมอการใช WEKA: Classification

เทคนคการท าเหมองขอมล

1. Classification & Prediction

Classification เปนกระบวนการสราง model จดการขอมลใหอยในกลมทก าหนดมาให ตวอยางเชน

จดกลมนกเรยนวา ดมาก ด ปานกลาง ไมด โดยพจารณาจากประวตและผลการเรยน หรอแบงประเภทของ

ลกคาวาเชอถอได หรอไมโดยพจารณาจากขอมลทมอย กระบวนการ classification นแบงออกเปน 3

ขนตอน ดงรปท 1

รปท 1 แสดง กระบวนการ Classification

Model Construction (Learning) เปนขนการสราง model โดยการเรยนรจากขอมลทได

ก าหนดคลาสไวเรยบรอยแลว (training data) ซง model ทไดอาจแสดงในรปของ

1.1 แบบตนไม (Decision Tree) โครงสรางแบบตนไมของ Decision Tree เปนทนยมกนมาก

เนองจากเปนลกษณะทคนจ านวนมากคนเคย ท าใหเขาใจไดงาย มลกษณะเหมอนแผนภมองคกร โดยทแต

ละโหนดแสดง attribute แตละกงแสดงผลในการทดสอบ และลฟโหนดแสดงคลาสทก าหนดไว

3 คมอการใช WEKA: Classification

ตวอยางเชน สมมตวาบรษทขนาดใหญแหงหนงท าธรกจอสงหารมทรพยมส านกงานสาขาอย

ประมาณ 50 แหง แตละสาขามพนกงานประจ า เปนผจดการและพนกงานขาย พนกงานเหลานแตละคนจะ

ดแลอาคารตาง ๆ หลายแหงรวมทงลกคาจ านวนมาก บรษทจ าเปนตองใชระบบฐานขอมลทก าหนด

ความสมพนธระหวางองคประกอบเหลาน เมอรวบรวมขอมลแบงเปนตารางพนฐานตาง ๆ เชน ขอมล

ส านกงานสาขา ( Branch ) ขอมลพนกงาน ( Staff ) ขอมลทรพยสน (Propety) และขอมลลกคา ( Client )

พรอมทงก าหนดความสมพนธ ( Relationship) ของขอมลเหลาน เชน ประวตการเชาบานของลกคา

(Customer_rental ) รายการใหเชา ( Rentals ) รายการขายสนทรพย ( Sales ) เปนตน ตอมาเมอมประชม

กรรมการผบรหารของบรษท สวนหนงของรายงานจากฐานขอมลสรปวา “ 40 % ของลกคาทเชาบานนาน

กวาสองป และมอายเกน 25 ป จะซอบานเปนของตนเอง โดยกรณเชนนเกดขน 35 % ของลกคาผเชาบาน

ของบรษท”

จากตวอยางพฤตกรรมการเชาและซอบานขางตน ลองมาตวอยางทเปนรปธรรมมากขน ในตาราง

Business Info แสดงถงรายการทงหมดเกยวกบลกคาบานเชาของบรษทโดยมรายละเอยดเกยวกบอาย และ

ระยะเวลาเชา รวมทงการซอบานของลกคาแตละราย ดงตารางท 1

รปท 2 แสดงตวอยางของ Decision Tree เพอวเคราะหโอกาสทลกคาบานเชาจะซอบาน

4 คมอการใช WEKA: Classification

ตารางท 1 แสดงรายการทงหมดเกยวกบลกคาบานเชาของบรษท

1.2 นวรอลเนต หรอ นวรอลเนตเวรก (Neural Net) เปนเทคโนโลยทมทมาจากงานวจย

ดานปญญาประดษฐ Artificial Intelligence:AI เพอใชในการค านวณคาฟงกชนจากกลมขอมล วธการของ

นวรอลเนต ( แทจรงตองเรยกใหเตมวา Artificial Neural Networks หรอ ANN ) เปนวธการทใหเครอง

เรยนรจากตวอยางตนแบบ แลวฝก ( train ) ใหระบบไดรจกทจะคดแกปญหาทกวางขนได ในโครงสรางของ

นวรอลเนตจะประกอบดวยโหนด ( node ) ส าหรบ Input – Output และการประมวลผล กระจายอยใน

โครงสรางเปนชน ๆ ไดแก input layer , output layer และ hidden layers การประมวลผลของนวรอลเนตจะ

อาศยการสงการท างานผานโหนดตาง ๆ ใน layer เหลาน ส าหรบตวอยางรปท 3 เปนการวเคราะหแบบ

เดยวกบรปท 2 ในโครงสรางแบบนวรอลเนต

5 คมอการใช WEKA: Classification

รปท 3 แสดงนวรอลเนตเพอวเคราะหการเชาและซอบานของลกคา

Model Evaluation (Accuracy) เปนขนการประมาณความถกตองโดยอาศยขอมลทใชทดสอบ

(testing data) ซงคลาสทแทจรงของขอมลทใชทดสอบนจะถกน ามาเปรยบเทยบกบคลาสทหามาไดจาก

model เพอทดสอบความถกตอง

Model Usage (Classification) เปน Model ส าหรบใชขอมลทไมเคยเหนมากอน (unseen data)

โดยจะท าการก าหนดคลาสใหกบ object ใหมทไดมา หรอ ท านายคาออกมาตามทตองการ Prediction เปน

การท านายหาคาทตองการจากขอมลทมอย ตวอยางเชน หายอดขายของเดอนถดไปจากขอมลทมอย หรอ

ท านายโรคจากอาการของคนไขในอดต เปนตน

6 คมอการใช WEKA: Classification

การใชงานซอฟตแวร Weka explorer

o เรมการท างานของซอฟตแวร Weka ท C:\Program Files\Weka-3.6 หรอ Start >> All programs >>

Weka 3.6.3 เลอก Weka

7 คมอการใช WEKA: Classification

o เปดโมดล Explorer

o คลกท Open file….

8 คมอการใช WEKA: Classification

o เปดแฟม weather.arff ท C:\Program Files\Weka-3.6\data

แฟม Weather.arff ซงเปนแฟมทมลกษณะประจ า @relation weather @attribute outlook {sunny, overcast, rainy} @attribute temperature real @attribute humidity real @attribute windy {TRUE, FALSE} @attribute play {yes, no} @data sunny,85,85,FALSE,no sunny,80,90,TRUE,no overcast,83,86,FALSE,yes

rainy,70,96,FALSE,yes rainy,68,80,FALSE,yes rainy,65,70,TRUE,no overcast,64,65,TRUE,yes sunny,72,95,FALSE,no sunny,69,70,FALSE,yes rainy,75,80,FALSE,yes sunny,75,70,TRUE,yes overcast,72,90,TRUE,yes overcast,81,75,FALSE,yes rainy,71,91,TRUE,no

9 คมอการใช WEKA: Classification

Outlook มคาตางกน 3 คา

Temperature มคาตางกน 12

คา

10 คมอการใช WEKA: Classification

Humidity มคาตางกน 10 คา

Windy มคาตางกน 2 คา

11 คมอการใช WEKA: Classification

Play มคาตางกน 2 คา

12 คมอการใช WEKA: Classification

o เลอก Classify

13 คมอการใช WEKA: Classification

o เลอก Choose

ผใชเลอกปม choose ใต classifiers

เลอกกลม classifiers

เลอกตนไม trees

เลอกขนตอนวธ J48

14 คมอการใช WEKA: Classification

ผใชก าหนดตวเลอก use training set เพอใชทก

ตวอยางในการสรางตนไม

ผใชเลอกลกษณะประจ าเปาหมายทตองการโดยปรกต

ลกษณะประจ าสดทายจะถกเลอก

ผใชกดปม Start เพอเรมสรางตนไม

Confusion matrix แสดงคาทได

จากตวแบบ (ดานบน) กบคาจรง

(ดานลาง) ผลลพธทดตองไมมคา

นอก diagonal

รายงานผลลพธของตวแบบ

กบขอมล training

15 คมอการใช WEKA: Classification

o ผลการวเคราะหดวยเทคนค Classification ดวยแฟม weather.arff

=== Run information ===

Scheme: weka.classifiers.trees.J48 -C 0.25 -M 2

Relation: weather

Instances: 14

Attributes: 5

outlook

temperature

humidity

windy

play

Test mode: evaluate on training data

สวนแรกคอสวน Run Information นจะเปนการสรปวา

Scheme : ในการวเคราะหผลครงนใชเทคนคอะไรในการท า classification Relation : ขอมลทใชเปน input มชอวาอะไร

Instances : จ านวนแถวในขอมล Attributes : จ านวนคอลมนในขอมล และชอของแตละแอตทรบวต

Test mode : การทดสอบประสทธภาพของโมเดลทไดจากการท า classification

16 คมอการใช WEKA: Classification

=== Classifier model (full training set) === J48 pruned treeoutlook = sunny | humidity <= 75: yes (2.0) | humidity > 75: no (3.0) outlook = overcast: yes (4.0) outlook = rainy | windy = TRUE: no (2.0) | windy = FALSE: yes (3.0)Number of Leaves : 5 Size of the tree : 8Time taken to build model: 0.01 seconds

สวนท 2 คอ สวนของโมเดลทสรางไดซงจะแตกตางกนออกไปตามเทคนคทเลอกใชงาน ในตวอยางนใช

เทคนคการท า classification ดวยวธ j48 ซงเปน decision tree แบบหนง ผลทแสดงในสวนนจงเปนลกษณะ

ของ tree แตเขยนใหอยในรปของ text ซงจาก decision tree นเราอาจจะสามารถแปลงใหเปนกฎทเปนโมเดล

ได เชน ถาคา outlook = sunny และ humidity <= 75 แลวจะตอบวา play = yes เปนตน

=== Evaluation on training set ===

=== Summary ===

Correctly Classified Instances 14 100 % Incorrectly Classified Instances 0 0 %

สวนท 3 คอสวนทวดประสทธภาพของโมเดลในการ classify ทสรางขนมาได ซงมคาทส าคญๆ อย 2 คา คอ

Correctly Classified Instances สวนนบอกวาจากขอมลทม 14 instance นน มการท านายขอมลถกตอง 14 instance(row) หรอคดเปน 100% ของขอมลทงหมด

Incorrectly Classified Instances สวนนบอกวาจากขอมลทม 14 instance นน มการท านายขอมลไมถกตอง 0 instance(row) หรอคดเปน 0% ของขอมลทงหมด

17 คมอการใช WEKA: Classification

=== Confusion Matrix ===

a b <-- classified as 9 0 | a = yes 0 5 | b = no

สวนท 4 คอ สวนของ confusion matrix ซงเปนสวนทท าใหเราเหนรายละเอยดของผลการท านายของขอมลแตละคลาสไดดขน

คาในคอลมน คอ คาทไดจากการท านายดวยเทคนค j48 คาในแถวจะเปนสวนของคาทเปนค าตอบของคลาสนนจรงๆ

จากตารางนเราจะเหนวา ขอมลทจรงๆ แลวมคา play=yes และโมเดลของเราท านายถกวามคา play=yes นนมจ านวนทงหมด 9 instance ขอมลเหลาน คอ ขอมลทโมเดลท านายถกเชน ขอมลใน instance ทมคา play=yes

แตถาจรงๆ แลวขอมลมคา play=yes แตโมเดลการท านายของเราดนไปตอบวาคา play=no นนมจ านวน 5 instance นนคอขอมลทโมเดลท านายผดส าหรบคลาสทตอบวา play=yes นนเอง

18 คมอการใช WEKA: Classification

ตนไมทไดจาก J48

ผใชสามารถแสดงรปของตนไม

ได ถาใชขนตอนวธ j48

19 คมอการใช WEKA: Classification

การเปลยนลกษณะประจ าใหเปนคาไมตอเนอง

เนองจากขนตอนวธ Id3 จ าเปนตองม ลกษณะประจ าทกตวมคาไมตอเนอง เรามขนตอนการเปลยนดงน

o เลอก Filter >> Choose

20 คมอการใช WEKA: Classification

o เลอก Discretize ในกลอง Filter โดยเลอก filters >>unsupervised>>attribute

21 คมอการใช WEKA: Classification

o กดทวางในชอง Filter

o ปรบคาในกลอง bin ใหเหมาะสม เชนก าหนดใหเปน 3 กลอง

o กดปม OK

o แลวกด Apply

22 คมอการใช WEKA: Classification

ผลทไดจาการการเปลยนลกษณะประจ าใหเปนคาไมตอเนอง

Outlook มคาตางกน 3 คา

Temperature มคาตางกน 3 คา

23 คมอการใช WEKA: Classification

Humidity มคาตางกน 2 คา

Windy มคาตางกน 2 คา

24 คมอการใช WEKA: Classification

Play มคาตางกน 2 คา

25 คมอการใช WEKA: Classification

o เลอก Classify >> Choose

26 คมอการใช WEKA: Classification

ผใชเลอกปม choose ใต classifiers

เลอกกลม classifiers

เลอกตนไม trees

เลอกขนตอนวธ Id3

ผใชก าหนดตวเลอก use training set เพอใชทก

ตวอยางในการสรางตนไม

ผใชเลอกลกษณะประจ าเปาหมายทตองการโดยปรกต

ลกษณะประจ าสดทายจะถกเลอก

ผใชกดปม Start เพอเรมสรางตนไม

27 คมอการใช WEKA: Classification

รายงานผลลพธของตวแบบ

กบขอมล training

Confusion matrix แสดงคาทได

จากตวแบบ (ดานบน) กบคาจรง

(ดานลาง) ผลลพธทดตองไมมคา

นอก diagonal

28 คมอการใช WEKA: Classification

ตนไมทไดจาก ID 3

ตนไมการตดสนใจดงกลาวสามารถจ าแนก play ถกตอง 100%

=== Confusion Matrix ===

a b <-- classified as

9 0 | a = yes

0 5 | b = no

29 คมอการใช WEKA: Classification

ส าหรบแฟม weather.nominal.arff ทเปนลกษณะประจ าทกตวมคาไมตอเนองใชไดทงวธ Id3 และ

วธ J48 โดยไมตองเปลยนลกษณะของคา

@relation weather.symbolic @attribute outlook {sunny, overcast, rainy} @attribute temperature {hot, mild, cool} @attribute humidity {high, normal} @attribute windy {TRUE, FALSE} @attribute play {yes, no} @data sunny,hot,high,FALSE,no sunny,hot,high,TRUE,no overcast,hot,high,FALSE,yes

rainy,mild,high,FALSE,yes rainy,cool,normal,FALSE,yes rainy,cool,normal,TRUE,no overcast,cool,normal,TRUE,yes sunny,mild,high,FALSE,no sunny,cool,normal,FALSE,yes rainy,mild,normal,FALSE,yes sunny,mild,normal,TRUE,yes overcast,mild,high,TRUE,yes overcast,hot,normal,FALSE,yes rainy,mild,high,TRUE,no

30 คมอการใช WEKA: Classification

สรป

o การท าเหมองขอมลแบบจ าแนกประเภท มขนตอนวธในการสรางตวแบบมากมาย

o การใชตนไมในการบงบอกตวแบบกเปนหนงในวธดงกลาว

o ส าหรบขนตอนวธ Id3 ลกษณะประจ าทกตวตองมคาไมตอเนองตองใชแฟม weather.norminal.arff

และ แฟม weather.arff จะใชไดกตอเมอ เปลยนลกษณะประจ าใหเปนคาไมตอเนอง

o แตขนตอนวธ J48 ลกษณะประจ าไมจ าเปนตองมคาไมตอเนอง ใชแฟม weather.norminal.arff และ

แฟม weather.arff สามารถใชไดเลย

31 คมอการใช WEKA: Classification

บรรณานกรม

(ออนไลน). เขาถงไดจาก. http://202.28.77.215/~bc500090/321350/Group1_files/Page406.htm.

(วนทคนขอมล : 20 กมภาพนธ 2554)

(ออนไลน). เขาถงไดจาก. http://wekathai.blogspot.com/2009/11/data-mining.html.

(วนทคนขอมล : 20 กมภาพนธ 2554)

(ออนไลน). เขาถงไดจาก. http://open-miner.com/2009/11/24/wekaclassificaiton-result/.

(วนทคนขอมล : 20 กมภาพนธ 2554)

Recommended