ข้ามไปที่เนื้อหาหลัก

โปรแกรม Weka (Waikato Environment for Knowledge Analysis)

Weka
                โปรแกรม Weka (Waikato Environment for Knowledge Analysis) เริ่มพัฒนามาตั้งแต่ปี  1997 โดยมหาวิทยาลัย Waikato ประเทศนิวซีแลนด์ เป็นซอฟต์แวร์สำเร็จรูป   อยู่ภายใต้การควบคุมของ GPL License โปรแกรม Weka ได้ถูกพัฒนามาจากภาษาจาวาทั้งหมด  ซึ่งเขียนมาโดยเน้นกับงานทางด้านการเรียนรู้ด้วยเครื่อง  (Machine Learning) และ  การทำเหมืองข้อมูล  (Data Mining) โปรแกรมจะประกอบไปด้วยโมดูลย่อยๆ สำหรับใช้ในการจัดการข้อมูล  และเป็นโปรแกรมที่สามารถใช้ Graphic User Interface (GUI) และ ใช้ค่าส่งในการให้ซอฟต์แวร์ประมวลผล  และ สามารถรัน  (run) ได้หลายระบบปฏับติการ และสามารถพัฒนาต่อยอดโปรแกรมได้ เป็นเครื่องมือที่ใช้ทางานในด้านการทาดาตาไมนนิ่งท์รวบรวมแนวคิดอัลกอริทึมมากมาย ซึ่งอัลกอรทึมสามารถเลือกใช้งานโดยตรงได้จาก  2 ทางคอจากชุดเครื่องมือที่มีอัลกอริทึมมาให้ หรือเลือกใช้จากอัลกอริทึมที่ไดเขียนเป็นโปรแกรมลงไปเป็นชุดเครื่องมือเพี่มเติม และชุดเครื่องมือมีฟังก์ชั้นสำหรับการทำงานร่วมกับข้อมูล ได้แก่  Pre-Processing, Classification,Regression, Clustering, Association rules,  Selection และ Visualization
ข้อดีโปรแกรม Weka
 1.เป็นซอฟต์แวร์ที่เป็นฟรีแวร์
 2.สามารถทางานได้ทุก OS
 3. เชื่อมต่อ SQL Database โดยใช้ Java Database Connectivity
 4. มีลักษณะที่ง่ายต่อการใช้งานเนื่องจากใช้
5.สนับสนุนเกี่ยวกับการทาเหมืองข้อมูล (Data Mining) 
ข้อเสียโปรแกรม Weka
 1.หาโหลดใช้งานได้ยาก
 2.ฟังค์ชั้นอาจจะยังไม่ทันสมัย
            การทำเหมืองข้อมูล คือ กระบวนการที่กระทำกับข้อมูล(โดยส่วนใหญ่จะมีจำนวนมาก) เพื่อค้นหารูปแบบ แนวทาง และความสัมพันธ์ที่ซ่อนอยู่ในชุดข้อมูลนั้น โดยอาศัยหลักสถิติ การรู้จำ การเรียนรู้ของเครื่อง และหลักคณิตศาสตร์

ความรู้ที่ได้จากการทำเหมืองข้อมูลมีหลายรูปแบบ ได้แก่
            กฎความสัมพันธ์(Association rule) แสดงความสัมพันธ์ของเหตุการณ์หรือวัตถุ ที่เกิดขึ้นพร้อมกัน ตัวอย่างของการประยุกต์ใช้กฎเชื่อมโยง เช่น การวิเคราะห์ข้อมูลการขายสินค้า โดยเก็บข้อมูลจากระบบ ณ จุดขาย(POS) หรือร้านค้าออนไลน์ แล้วพิจารณาสินค้าที่ผู้ซื้อมักจะซื้อพร้อมกัน เช่น ถ้าพบว่าคนที่ซื้อเทปวิดีโอมักจะซื้อเทปกาวด้วย ร้านค้าก็อาจจะจัดร้านให้สินค้าสองอย่างอยู่ใกล้กัน เพื่อเพิ่มยอดขาย หรืออาจจะพบว่าหลังจากคนซื้อหนังสือ ก แล้ว มักจะซื้อหนังสือ ข ด้วย ก็สามารถนำความรู้นี้ไปแนะนำผู้ที่กำลังจะซื้อหนังสือ ก ได้
            การจำแนกประเภทข้อมูล (Data classification) หากฏเพื่อระบุประเภทของวัตถุจากคุณสมบัติของวัตถุ เช่น หาความสัมพันธ์ระหว่างผลการตรวจร่างกายต่าง ๆ กับการเกิดโรค โดยใช้ข้อมูลผู้ป่วยและการวินิจฉัยของแพทย์ที่เก็บไว้ เพื่อนำมาช่วยวินิจฉัยโรคของผู้ป่วย หรือการวิจัยทางการแพทย์ ในทางธุรกิจจะใช้เพื่อดูคุณสมบัติของผู้ที่จะก่อหนี้ดีหรือหนี้เสีย เพื่อประกอบการพิจารณาการอนุมัติเงินกู้
            การแบ่งกลุ่มข้อมูล (Data clustering) แบ่งข้อมูลที่มีลักษณะคล้ายกันออกเป็นกลุ่ม แบ่งกลุ่มผู้ป่วยที่เป็นโรคเดียวกันตามลักษณะอาการ เพื่อนำไปใช้ประโยชน์ในการวิเคราะห์หาสาเหตุของโรค โดยพิจารณาจากผู้ป่วยที่มีอาการคล้ายคลึงกัน
            จินตทัศน์(Visualization)สร้างภาพคอมพิวเตอร์กราฟิกที่สามารถนำเสนอข้อมูลมากมายอย่างครบถ้วนแทนการใช้ขัอความนำเสนอข้อมูลที่มากมาย เราอาจพบข้อมูลที่ซ้อนเร้นเมื่อดูข้อมูลชุดนั้นด้วยจินตทัศน์
ขั้นตอนการทำเหมืองข้อมูล
 1.ทำความเข้าใจปัญหา
 2.ทำความเข้าใจข้อมูล
 3.เตรียมข้อมูล
 4.สร้างแบบจำลอง
 5.ประเมิน
 6.นำไปใช้งาน
ประโยชน์จากการทำเหมืองข้อมูล
การทำเหมืองข้อมูล จำเป็นต้องอาศัยบุคลากรจากหลายฝ่าย และต้องอาศัยความรู้จำนวนมาก ถึงจะได้รับประโยชน์อย่างแท้จริง เพราะสิ่งที่ได้จากขั้นตอนวิธีเป็นเพียงตัวเลข และข้อมูล ที่อาจจะนำไปใช้ประโยชน์ได้หรือใช้ประโยชน์อะไรไม่ได้เลยก็เป็นได้ ผู้ที่ศึกษาการทำเหมืองข้อมูลจึงควรมีความรู้รอบด้านและต้องติดต่อกับทุก ๆ ฝ่าย เพื่อให้เข้าใจถึงขอบเขตของปัญหาโดยแท้จริงก่อน เพื่อให้การทำเหมืองข้อมูลเกิดประโยชน์อย่างแท้จริง
การสร้างโมเดล classification ด้วย Weka Explorer
1. เปิดซอฟต์แวร์ Weka ขึ้นมาใช้งานจะเห็นหน้าต่างดังในรูปที่ 1 ซึ่งจะมีเมนูให้เลือก 4 อัน ในขั้นนี้เราจะเลือกที่เมนู Explorer 


รูปที่ 1 เลือก Weka Explorer เพื่อเริ่มทำงาน

2. หลังจากนั้นหน้าต่าง Weka Explorer ก็จะปรากฏขึ้นมาให้เราเห็นครับ ขั้นถัดมาเราจะต้องเลือกไฟล์สำหรับใช้ในการสร้างโมเดลโดยใน blog นี้ เราจะเลือกใช้ไฟล์ที่ชื่อว่า weather.numeric.arff ซึ่งอยู่ในโฟลเดอร์ data ภายใน path ของ Weka อีกทีครับ ดังนั้นเลือกเมนู Open ครับและเลือกไฟล์ดังกล่าว


รูปที่ 2 คลิกปุ่ม Open File และเลือกไฟล์ที่ต้องการใช้ในการสร้างโมเดล

3. หลังจากเลือกไฟล์ที่จะใช้ในการสร้างโมเดลแล้ว หน้าจอของ Weka Explorer จะเปลี่ยนไปดังแสดงในรูปที่ 3 โดยจะแสดงรายชื่อของแอตทริบิวต์ต่างๆ ในไฟล์ที่โหลดเข้ามา จากในตัวอย่างนี้มี 5 แอตทริบิวต์ คือ outlook, temperature, humidity, windy และ play

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

4. คลิกที่แท็บ Classify เพื่อเปลี่ยนไปใช้งานเทคนิคการทำ classification เพื่อสร้างโมเดลไว้ใช้งาน ในตัวอย่างนี้เราจะใช้เทคนิคที่ชื่อว่า K-Nearest Neighbors (kNN) หรือใน Weka จะเรียกว่า IBk เป็นเทคนิคที่จะทำการทำนายข้อมูลใหม่โดยการดูความคล้ายคลึงกับข้อมูล training ในขั้นนี้มีขั้นตอนย่อยดังนี้
-คลิกที่ปุ่ม Choose
-เลือกเทคนิค IBk ที่อยู่ภายใต้หมวด classifiers -> lazy ดังแสดงในรูปที่ 4

รูปที่ 4 เลือกใช้เทคนิค K-Nearest Neighbors (หรือ IBk)

5. ขั้นตอนนี้เราจะเริ่มสร้างโมเดลด้วยเทคนิค IBk กันแล้วครับ ให้เราเช็คสักนิดนึงก่อนว่า
  • ในส่วน Test Options เลือกอยู่ที่ Cross-validation และเป็น 10 folds (รายละเอียดของการแบ่งทดสอบโมเดลแบบ Cross-validation จะอธิบายใน blog ถัดไปครับ)
  • ส่วนที่เป็น list box ด้านล่าง Test Options เลือกเป็น (Nom) Play หมายความว่าเลือกแอตทริบิวต์ Play เพื่อเป็นคลาสคำตอบ
หลังจากนั้นก็กดปุ่ม Start ได้เลยครับ หลังจากการทำงานเสร็จสิ้นผลลัพธ์จะปรากฏขึ้น 2 ที่ คือ
1.ภายใต้ Result list จะแสดงเวลาและชื่อเทคนิคที่ใช้งานอยู่
2.ข้อมูลโมเดลและประสิทธิภาพการทำงานของโมเดลจะอยู่ภายใต้ส่วน Classifier Output


รูปที่ 5 ผลการสร้างโมเดลด้วยเทคนิค IBk

6. หลังจากเราสร้างโมเดล classification เสร็จเรียบร้อยแล้ว เราควรจะทำการบันทึกโมเดลเก็บไว้ ไม่เช่นนั้นโมเดลที่เราสร้างได้ก็จะหายไปเมื่อเราทำการปิดโปรแกรมไป การบันทึกโมเดลทำได้โดยการคลิกขวาในส่วนของ Result list และเลือกเมนู Save Model ดังในรูปที่ 6 หลังจากนั้นเราจะต้องตั้งชื่อไฟล์โมเดลและสถานที่เก็บไฟล์โมเดลเพื่อนำไปใช้ต่อในบทความเรื่อง การนำโมเดล classification มาใช้งานใน Weka Explorer”



รูปที่ 6 บันทึกโมเดลที่สร้างได้เพื่อเก็บไว้ใช้งานในครั้งต่อไป

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

ศาสตร์เกี่ยวกับคอมพิวเตอร์

ศาสตร์เกี่ยวกับคอมพิวเตอร์ วิศวกรรมคอมพิวเตอร์ ( computer engineering) เป็นศาสตร์ที่เกี่ยวข้องกับการออกแบบและสร้างเครื่องหรือระบบคอมพิวเตอร์ และ ระบบที่ใช้คอมพิวเตอร์ ศาสตร์นี้เกี่ยวข้องกับการศึกษาทางด้านฮาร์ดแวร์ ซอฟต์แวร์ การสื่อสาร และความเกี่ยวเนื่องระหว่างเรื่องทั้งสาม หลักสูตรการเรียนมุ่งเน้นทางด้าน ทฤษฎี กฎ และ การฝึกฝนปฏิบัติของทางด้านวิศวกรรมไฟฟ้า และ คณิตศาสตร์ และวิทยาศาสตร์รวมถึงการประยุกต์เข้ากับปัญหาทางด้านการออกแบบคอมพิวเตอร์ และ อุปกรณ์ที่ใช้คอมพิวเตอร์ วิศวกรคอมพิวเตอร์ ศึกษาการออกแบบระบบฮาร์ดแวร์ดิจิทัล ซึ่งรวมถึงระบบการสื่อสาร องค์ประกอบของคอมพิวเตอร์ และอุปกรณ์ที่ประกอบด้วยคอมพิวเตอร์ วิศวกรคอมพิวเตอร์จะเรียนการพัฒนาซอฟต์แวร์ โดยมุ่งเน้นเกี่ยวกับซอฟต์แวร์สำหรับอุปกรณ์ดิจิทัล และ การสร้างส่วนต่อประสานระหว่างผู้ใช้งานซอฟต์แวร์ และ ระหว่างอุปกรณ์ต่าง ๆ รวมทั้งความรู้ทางด้านวิศวกรรมที่ดีด้วย ปัจจุบันสาขาวิชาที่สำคัญในด้านวิศวกรรมคอมพิวเตอร์คือ ระบบฝังตัว การพัฒนาอุปกรณ์ที่มีซอฟต์แวร์และฮาร์ดแวร์ฝังตัวภายใน เช่น อุปกรณ์สื่อสารอย่าง โทรศัพท์มือถือ เครื่องเล่

คุณลักษณะของระบบสารสนเทศ TPS, MIS, DSS, EIS

คุณลักษณะของระบบสารสนเทศ TPS, MIS, DSS, EIS 1. ระบบการประมวลผลทางธุรกิจ ( Transaction Processing System : TPS)      ระบบการประมวลผลทางธุรกิจ มักเป็นการประมวลผลต่อวัน เช่น การรับ – จ่ายบิล ระบบควบคุมสินค้าคงคลัง ระบบรายรับ – จ่ายสินค้า ระบบนี้เป็นระบบสารสนเทศลำดับแรกที่ได้รับ การพัฒนาให้ใช้กับเครื่องคอมพิวเตอร์ ลักษณะเด่นของระบบ TPS   การทำให้เครื่องคอมพิวเตอร์ทำงานง่าย ไม่ยุ่งยาก ซับซ้อน ซึ่งระบบนี้เกือบทั้งหมดใช้การประมวลผลแบบออนไลน์ และสิ่งที่องค์กรจะได้รับเมื่อใช้ระบบนี้ คือ      – ลดจำนวนพนักงาน      – องค์กรจะมีการบริการที่สะดวกรวดเร็ว      – ลูกค้ามีจำนวนเพิ่มมากขึ้น 2. ระบบสารสนเทศเพื่อการจัดการ ( Management Information System : MIS)      ระบบสารสนเทศเพื่อการจัดการ คือ ระบบที่เกี่ยวข้องกับผู้บริหารที่ต้องการ การประมวลผลของเครื่องคอมพิวเตอร์ที่ให้ประโยชน์มากกว่าการช่วยงานแบบต่อวัน MIS จึงมีความสามารถในการคำนวณเปรียบเทียบข้อมูล ซึ่งมีความหมายต่อการจัดการและบริหารงานเป็นอย่างมาก นอกจากนั้นระบบนี้ยังสามารถสร้างสารสนเทศที่ถูกต้องทันสมัย คุณสมบัติของระบบ MIS คือ

ระบบ SAP

       ระบบ  SAP                 SAP เป็นระบบขนาดใหญ่ที่ได้รวมเอาโซลูชั่นต่างๆ เข้ามารวมไว้ในระบบ โดยสามารถเขียนโปรแกรมให้ทำงานเฉพาะโซลูชั่นที่ต้องการได้ และหากมีหลายโซลูชั่นก็สามารถนำข้อมูลไปใช้ร่วมกันได้ จึงไม่น่าแปลกใจว่าทำไม ปัจจุบันนี้โปรแกรมเมอร์มากมายต่างหันมาสนใจ SAP กันมากขึ้น โซลูชั่นที่ SAP รองรับนั้นมีมากมาย อาทิ ระบบไฟแนนซ์ ระบบบริหารงานบุคคล ระบบลูกค้าสัมพันธ์ ระบบบัญชี ระบบสินค้าคงคลัง เป็นต้น นอกจากนี้ยังมีการนำไปประยุกต์ใช้กับระบบคนไข้ในโรงพยาบาลบางแห่ง โดยระบบงานต่างๆ ในแต่ละส่วนเหล่านี้เอง คือ ส่วนที่เรียกว่า "โมดูล" หากคุณจะเริ่มศึกษา SAP นั้นคุณจะต้องทราบก่อนว่าคุณจะศึกษาในส่วนใด และนำไปใช้กับงานลักษณะใด ซึ่ง SAP จะแบ่งระบบงานต่างๆ แยกย่อยเป็นโมดูล ซึ่งแต่ละโมดูลเป็นอิสระต่อกัน และสามารถนำเอาข้อมูลในแต่ละส่วนมาเชื่อมโยงกันได้                SAP ประกอบไปด้วยการทำงานมี 3 ลักษณะคือ Functional ,Basis ,Abap Programming จะแบ่งเป็น R3 และ Net Weaver Version - Functional คือ ลักษณะงานเป็นแบบ Consultant คือให้คำปรึกษา, วางรูปแบบการทำงาน จัดการ Process ต่า