การนำโมเดล classification ไปใช้งานใน Weka Explorer

หลังจากที่เราได้สร้างโมเดล classification กันไปแล้วในบทความ “การสร้างโมเดล classification ด้วย Weka Explorer” ที่ผ่านมา วันนี้เราจะนำโมเดลที่ได้มาใช้ในการทำนายข้อมูลใหม่กันครับ โดยมีขั้นตอนดังต่อไปนี้

1.  โหลดไฟล์โมเดลเข้ามาใช้งาน โดยการคลิกขวาในส่วนของ Result list และเลือกเมนู load model ดังในรูปที่ 1

weka_explorer7

รูปที่ 1 การโหลดโมเดลที่สร้างไว้เข้ามาใช้งาน
2. โมเดลที่โหลดเข้ามาจะแสดงในส่วนของ Classifier output ซึ่งจะเห็นว่าไม่มีส่วนของการวัดประสิทธิภาพของโมเดล แต่จะมีแค่ส่วนโมเดลเท่านั้นดังในรูปที่ 2

weka_explorer8

 

รูปที่ 2 แสดงรายละเอียดของโมเดลที่โหลดเข้ามาใช้งาน

3. หลังจากที่เราได้ทำการโหลดไฟล์โมเดลเข้ามาใช้งานแล้วถัดไปก็ต้องเลือกไฟล์ที่ต้องการจะให้โมเดลของเราทำนาย หรือเรียกว่าเป็น unseen data ตัวอย่างของ unseen data แสดงในรูปที่ 3 ซึ่งจะเห็นว่าจำนวนแอตทริบิวต์จะต้องมีเท่ากันกับแอตทริบิวต์ของ training data แม้ว่าใน unseen data เราจะไม่มีคลาสคำตอบแต่ก็ต้องใส่เครื่องหมาย ? ไว้แทนในแอตทริบิวต์ของคลาส

weka_explorer15

 

รูปที่ 3 ไฟล์  unseen data ที่ต้องมีจำนวนแอตทริบิวต์เท่ากันกับใน training data

4. หลังจากสร้างไฟล์ unseen data เรียบร้อยแล้วก็มาเลือกที่เมนู Supplied test set และกดปุ่ม Set… จะปรากฏหน้าจอดังรูปที่ 4 เพื่อให้เลือกไฟล์ที่ต้องการใช้งาน

weka_explorer9

 

รูปที่ 4 เลือก Supplied test set แล้วกดปุ่ม Set… จะมีหน้าต่างให้เลือกไฟล์ไปใช้งานต่อ

5. ที่หน้าจอ Test Instances ให้คลิกที่ปุ่ม Open file… เพื่อเลือกไฟล์ที่ต้องการใช้งาน หลังจากเลือกไฟล์เสร็จเรียบร้อยแล้วหน้าจอจะเปลี่ยนไปดังแสดงในรูปที่ 5

weka_explorer10

 

รูปที่ 5 แสดงรายละเอียดหลังจากได้เลือกไฟล์ unseen data แล้ว

6. กดปุ่ม More options… ที่อยู่ในส่วนของ Test options… หลังจากนั้นเลือก checkbok หน้า Output predictions เพื่อให้แสดงผลการทำนายออกมาในส่วนของ Classifier output ด้วย (ถ้าไม่ทำการเลือกที่ option นี้ผลการทำนายจะไม่แสดงออกมาครับ)

weka_explorer11

 

รูปที่ 6 เลือก option Output predictions เพื่อให้แสดงผลการทำนาย

7. คลิกขวาที่โมเดลในส่วน Result list ที่ต้องการใช้งานและเลือกเมนู Re-evaluate model on current test set เพื่อใช้โมเดลทำนายคลาสให้กับข้อมูลที่โหลดเข้ามาดังในรูปที่ 7

weka_explorer12

 

รูปที่ 7 เลือกเมนู Re-evaluate model on current test set เพื่อใช้โมเดลในการทำนายข้อมูล unseen data

8. ผลการทำนายจะแสดงในส่วนของ Classifier output ดังรูปที่ 8 ซึ่งจะแสดงเป็นคอลัมน์ต่างๆ ดังนี้

  • inst# แสดงหมายเลข instance ของข้อมูล unseen data
  • actual แสดงคลาสของแต่ละ instance ในข้อมูล unseen data ซึ่งเรากำหนดให้เป็นเครื่องหมาย ? เนื่องจากว่าเราไม่รู้ค่าของคลาส
  • predicted แสดงคลาสที่โมเดลทำนายได้ โดยเป็นลักษณะของหมายเลขคลาส ตามด้วยชื่อลาเบลของคลาส เช่น 2:no คือโมเดลตอบว่าเป็นคลาสลำดับที่ 2 และมีค่าลาเบลเป็น no เป็นต้น
  • error แสดงเครื่องหมาย + เมื่อค่าของ actual และ predicted ไม่ตรงกัน
  • probability distribution แสดงค่าความน่าจะเป็นของแต่ละคลาส โดยมีเครื่องหมาย * นำหน้าคลาสที่มีค่าความน่าจะเป็นมากกว่า หรือเป็นคลาสคำตอบนั่นเอง ในตัวอย่างนี้มี 2 คลาสดังนั้นจึงมีค่าความน่าจะเป็น 2 ค่า เช่น 0.063 เป็นค่าความน่าจะเป็นของคลาส Yes และ 0.938 เป็นค่าความน่าจะเป็นของคลาส No เป็นต้น

weka_explorer13

 

รูปที่ 8 แสดงผลการทำนายในส่วนของ Classifier output

9. ถ้าในกรณีที่เลือกใช้เมนู Re-evaluate model on current test set แล้วปรากฏข้อความ error ว่า “Problem evaluationing classifier: Train and test set are not compatible“ดังในรูปที่ 9 ให้เราทำการเช็คไฟล์ unseen data ของเราดังนี้

  • มีแอตทริบิวต์เท่ากันกับในโมเดลหรือไม่
  • ค่าที่อยู่ในแต่ละแอตทริบิวต์มีครบถ้วนเหมือนในโมเดลหรือไม่
  • การเรียงลำดับค่าในแอตทริบิวต์ที่เป็น nominal เหมือนตอนการสร้างโมเดลหรือไม่

weka_explorer14

รูปที่ 9 แสดงข้อความ error เนื่องจากข้อมูลในไฟล์ unseen data ไม่เหมือนกับในโมเดลที่สร้าง

ในบทความถัดไปจะอธิบายโมเดล Neural Network ที่สร้างได้จาก Weka Explorer ซึ่งมีหลายท่านส่งคำถามมาทางเราครับ ^^

Posted in data mining, machine learning, weka and tagged , , , , .

Leave a Reply

Your email address will not be published. Required fields are marked *