Upload
petch-pochaecc
View
1.416
Download
71
Embed Size (px)
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)