สไลด์บางส่วนจากการอบรม Practical Data Mining with RapidMiner Studio 7

ตัวอย่างสไลด์การอบรม Practical Data Mining with RapidMiner Studio 7 รุ่นที่ 17 ครับ ท่านใดสนใจดูรายละเอียดการอบรมรุ่นถัดไปได้ที่ http://dataminingtrend.com/2014/training/rapidminer-training-18/

หนังสือ Introduction to Data Mining Techniques (ภาษาไทย)

IMG_20150524_095848

ย้อนหลังไปเมื่อ 12 ปีก่อน การวิเคราะห์ข้อมูลด้วยเทคนิค ดาต้า ไมน์นิง (data mining) ยังรู้จักกันในวงแคบส่วนใหญ่จะเป็นนักศึกษาปริญญาโทและเอกที่สนใจทำงานวิจัยทางด้านนี้ ผมเองเริ่มต้นรู้จักกับดาต้า ไมน์นิงเมื่อประมาณ 12 ปีก่อนเช่นกัน ในสมัยที่เป็นนักศึกษาปริญญาตรีตัวเล็กๆ ในห้องปฏิบัติการวิจัยการค้นหาความรู้จากฐานข้อมูลขนาดใหญ่ (Knowledge Discovery Laboratory) ในภาควิชาวิศวกรรมคอมพิวเตอร์ คณะวิศวกรรมศาสตร์ มหาวิทยาลัยเกษตรศาสตร์ ในช่วงเวลาที่ผ่านมาผมได้เห็นการเปลี่ยนแปลงเกี่ยวกับความสนใจของผู้คนต่างๆ ในเรื่องดาต้า ไมน์นิงอย่างมากมาย ตั้งแต่ตอนแรกที่ความสนใจจะอยู่ในวงแคบดังที่ได้กล่าวมาแล้วจนมาถึงปัจจุบันที่มีผู้สนใจเพิ่มขึ้นเป็นวงกว้าง เช่น บริษัทเอกชนหรือธนาคารต่างๆ เริ่มให้ความสนใจนำการวิเคราะห์ข้อมูลด้วยเทคนิคดาต้า ไมน์นิงไปใช้งานกันมากขึ้นหรือมหาวิทยาลัยบางแห่งเริ่มจัดให้การเรียนการสอนเกี่ยวกับเรื่องนี้ในระดับชั้นปริญญาตรี จากความนิยมที่เพิ่มขึ้นและการเก็บเกี่ยวประสบการณ์ต่างๆ ในการวิเคราะห์ข้อมูลทางด้านดาต้า ไมน์นิงทำให้ผมคิดอยากจะเขียนหนังสือสักเล่มที่เกี่ยวกับการแนะนำเทคนิคการวิเคราะห์ข้อมูลทางดาต้า ไมน์นิงเบื้องต้นสำหรับนักศึกษาและผู้สนใจขึ้นมาและนั่นเองคือที่มาของหนังสือเล่มนี้ที่ชื่อว่า An Introduction to Data Mining Techniques ซึ่งในหนังสือเล่มนี้ผมจะแสดงหลักการทำงานของวิธีการต่างๆ ทางด้านดาต้า ไมน์นิงไม่ว่าจะเป็น การหากฏความสัมพันธ์ (association rules discovery) การแบ่งกลุ่มข้อมูล (clustering) และ การจำแนกประเภทข้อมูล (classification) พร้อมทั้งตัวอย่างการทำงานของวิธีการเหล่านี้เพื่อให้ผู้อ่านเข้าใจได้ง่ายโดยที่ไม่ต้องมีความรู้พื้นฐานทางด้านคณิตศาสตร์ขั้นสูง

หนังสือเล่มนี้คงไม่สามารถเกิดขึ้นได้ถ้าผมไม่ได้เรียนรู้ Data Mining จาก

  • รศ.ดร. กฤษณะ ไวยมัย มหาวิทยาลัยเกษตรศาสตร์
  • ดร. สุภาวดี อิงศรีสว่าง ศูนย์พันธุวิศวกรรมและเทคโนโลยีชีวภาพ
  • ศ. ดร. ธนารักษ์ ธีระมั่นคง สถาบันเทคโนโลยีนานาชาติสิรินธร (SIIT) มหาวิทยาลัยธรรมศาสตร์
  • ศ. ดร. นิค เซอร์โคน (Nick Cercone) มหาวิทยาลัย ยอร์ค (York University) ประเทศแคนาดา

ดูตัวอย่างหนังสือได้จากที่นี่ครับ หนังสือราคาเล่มละ 400 บาทรวมค่าจัดส่งแล้วครับ ^^

Continue reading

ขั้นตอนการหากฏความสัมพันธ์ (Association Rules)

บทความที่ผ่านมาได้พูดถึงวิธีการสร้างโมเดล classification แบบต่าง เช่น Neural Network, Support Vector Machine, Decision Tree และ Naive Bayes ในบทความนี้จะพูดถึงการหากฏความสัมพันธ์ หรือ association rules

ในการหากฏความสัมพันธ์นี้มีอยู่หลายวิธี แต่สำหรับบทความนี้จะแสดงการหากฏความสัมพันธ์ด้วยวิธี Apriori ซึ่งจะมีอยู่ 2 ขั้นตอนใหญ่ๆ คือ

  1. การหา frequent itemset เป็นการหารูปแบบของข้อมูลที่เกิดขึ้นร่วมกันบ่อยๆ ในฐานข้อมูล  หรือ มากกว่าค่า minimum support ที่ผู้ใช้กำหนด ในขั้นตอนนี้จะแบ่งได้อีกเป็น 2 ขั้นตอนย่อย คือ
    • การสร้างรูปแบบของ itemset  (join) จะใช้รูปแบบของ itemset ที่มีค่ามากกว่า minimum support มาทำการสร้างรูปแบบของ itemset ที่มีขนาดยาวมากขึ้นทีละหนึ่งขั้นไปเรื่อยๆ
    • การนับค่า support (count) หลังจากที่สร้างรูปแบบของ itemset ได้แล้ว ขั้นถัดมาจะทำการคำนวณค่า support ที่เกิดขึ้น โดยที่ support คือจำนวนเปอร์เซ็นต์ที่พบ itemset ในฐานข้อมูล
  2. การสร้าง association rule หลังจากที่หา frequent itemset ได้แล้วจะนำรูปแบบที่หาได้มาสร้างเป็นกฏความสัมพันธ์โดย เช่น Apple => Cereal หมายความว่าเมื่อลูกค้าซื้อ Apple แล้วลูกค่าจะซื้อ Cereal ร่วมไปด้วย

ในบทความนี้จะใช้ตัวอย่างข้อมูลที่แสดงในรูปที่ 1 ซึ่งเรียกว่า transaction database ในฐานข้อมูลนี้จะประกอบด้วย 4 transaction และมีสินค้าที่ลูกค้าซื้อทั้งหมด 5 ประเภทคือ Apple, Beer, Cereal, Diapers และ Eggs

transaction_database

รูปที่ 1 แสดง transaction database ที่จะใช้หากฏความสัมพันธ์

ในบทความนี้จะแสดงตัวอย่างการหากฏความสัมพันธ์โดยกำหนดค่า minimum support ไว้ที่ 50% นั่นคือ สินค้าที่มีการซื้อมากกว่าหรือเท่ากับ 50% จะถือว่าเป็น frequent itemset ขั้นตอนการทำงานมีดังต่อไปนี้
Continue reading