CRISP-DM ( http://www.crisp-dm.org/) เป็นเครื่องมือของการทำ data mining model ซึ่งเป็นของฟรี จากกลุ่มที่ทำ data mining ด้วยกัน เขาบอกว่า ใครใช้โมเดลของเขาทำตามที่เขาแนะนำ จะมีความถูกต้องกว่า เร็วกว่า น่าเชื่อถือกว่า ราคาถูกกว่าและบริหารจัดการได้ดีกว่า คุณเชื่อหรือไม่
CRISP_DM Model: The New Blueprint for Data Mining ได้กล่าวถึง กระบวนการทำ Data mining ว่ามี 6 ขั้นตอนด้วยกันคือ
1. การทำความเข้าใจในเรื่องธุรกิจที่จะทำ
2. การทำความเข้าใจกับข้อมูลที่จัดเก็บ
3. การเตรียมข้อมูล
4. การสร้างโมเดล
5. การประเมินผล
6. การนำไปใช้งาน
ขั้นตอนเหล่านี้ขอเรียกเป็นเฟส ตามเอกสารต้นฉบับก็แล้วกัน ซึ่งมีรายละเอียด ดังนี้
เฟสที่ 1 การทำความเข้าใจในเรื่องธุรกิจที่จะทำ
เฟสที่หนึ่งจัดได้ว่า เป็นเฟสที่มีความสำคัญมากที่สุด เป็นการเริ่มต้นการทำความเข้าใจต่าง ๆ ให้ถ่องแท้ก่อนจะทำเฟสอื่น ๆ ต่อไป ในขั้นตอนนี้จะเน้นที่เราต้องทราบวัตถุประสงค์ของการทำโปรเจ็คเหมืองข้อมูลขององค์กรของเราเสียก่อน จากนั้นจะเกิดองค์ความรู้ขึ้นมาเอง แล้วจึงแปลงองค์ความรู้เพื่อให้กำหนดคำนิยามปัญหาในการทำเหมืองข้อมูล ถัดจากนั้นจึ่งเริ่มวางแผนที่ดำเนินการในขั้นต้น วางแผนขั้นตอนวิเคราะห์ ขั้นตอนออกแบบ และหาวิธีการแก้ปัญหาในช่วงสุดท้าย ในขั้นตอนการทำความเข้าใจธุรกิจนั้น มีขั้นตอนย่อย ๆ อีก ได้แก่ การกำหนดวัตถุประสงค์ทางธุรกิจ แน่นอนว่าวัตถุประสงค์หลักทางธุรกิจคือ ผลกำไร อันนี้ทุกคนทราบดี แต่การได้มาซึ่งผลกำไรนั้นมาจากอะไรบ้าง เช่น
- มาจากการมีลูกค้ามาก ๆ และการรักษาลูกค้าเอาไว้ไม่ให้ไปหาคู่แข่งของเรานี่ซิ จะทำอย่างไร
- มาจากการเพิ่มยอดขายให้กับสินค้า โดยให้ลูกค้าซื้อเพิ่มขึ้น เช่น ยาสีฟันที่มีขายเป็นแพ็คคู่ การโฆษณาของนมให้กินวันละ 2 กล่อง
- มาจากการซื้อของที่ใช้ต่อเนื่อง หรือคู่กัน เช่น ซื้อไข่ ร่วมกับน้ำมันพืช
ยกตัวอย่างธุรกิจจำพวกธนาคาร ช่องทางให้บริการลูกค้าเพื่อผูกมัดลูกค้าให้อยู่กับเราตลอดนั้นมีหลายช่องทาง ได้แก่ เพิ่มตู้ ATM, เปิดสาขาใกล้บ้านหรือสำนักงาน หรือบริการผ่านอินเทอร์เน็ต เป็นต้น ขอยกตัวอย่างกรณีศึกษาของมหาวิทยาลัยราชภัฏสงขลาซึ่งเป็นลูกค้าของไทยธนาคาร เมื่อมหาวิทยาลัยฯ กำหนดนโยบายให้โอนเงินเดือนผ่านธนาคาร (ในสมัยนานมาแล้ว) มหาวิทยาลัยฯ จึงต้องให้อาจารย์ทุกคน เปิดบัญชีของไทยธนาคาร เมื่อมหาวิทยาลัยฯ มีนโยบายให้นักศึกษาจ่ายค่าลงทะเบียนเรียนผ่านทางธนาคาร นศ. ทุกคนจำเป็นต้องเปิดบัญชีกับธนาคารแห่งนี้ ด้วยเหตุนี้ธนาคารจึงได้ลูกค้าไม่น้อยกว่าหนึ่งหมื่นคน มีเงินหมุนเวียนเป็นจำนวนมาก เมื่อมีธนาคารกรุงศรีฯ กรุงไทย ไทยพาณิชย์ มาเปิดใกล้มหาวิทยาลัย และพยายามเข้ามานำเสนอให้ทีมผู้บริหารเปิดรับธนาคารของตนเอง เข้ามาในรายการด้วย อยากทราบว่า ไทยธนาคารจะใช้ทฤษฎีกลยุทธ์ใดมารักษาลูกค้าเดิมเอาไว้ให้ได้ (ใช้กลยุทธ์แบบฝรั่งหรือแบบไทย ๆ อันนี้ฝากให้เป็นข้อคิด)
ทฤษฎีของฝรั่งจากเอกสาร "Journal of data warehouse Volume 5 Number 4 Fall 2000" บอกไว้ว่า การลดค่าธรรมเนียมนั้น หรือค่าธรรมเนียมที่ถูกกว่าคู่แข่งนั้นมีผลกระทบกับกลุ่มลูกค้าเพียงบางกลุ่มเท่านั้น
เฟสที่ 2 การทำความเข้าใจกับข้อมูลที่จัดเก็บ
ในขั้นตอนนี้ เราต้องทำอะไรบ้างกับข้อมูล
แน่นอนว่าองค์กรที่จะทำ Data mining นั้นจะต้องมีฐานข้อมูลเป็นของตนเอง ได้แก่ ฐานข้อมูลจากการขายของระบบจุดขายหน้าร้าน (point of sale: POS) และควรมีระบบบัตรสมาชิก จึงจะทำให้ data mining มีประสิทธิภาพสูงสุด ในขณะเดียวกัน อาจนำข้อมูลจากการสำรวจพฤติกรรมผู้บริโภคในแหล่งที่ตั้งเดียวกัน ข้อมูลจากงานวิจัยภายนอกองค์กร ข้อมูลเหล่านี้มันจะมีแอตทริบิวต์ไม่ตรงกับฐานข้อมูลของเรา เช่น เพศ ของเราอาจเก็บ M กับ F แต่จากการสำรวจแบบสอบถามเขาอาจเก็บ ชาย หญิง ดังนั้น สิ่งที่เราจะต้องทำให้ขั้นตอนนี้ ได้แก่
- รวบรวมข้อมูลที่เกี่ยวข้อง
- ข้อมูลต้องถูกต้อง เชื่อถือได้
- ปริมาณของข้อมูลต้องมากพอต่อการนำไปใช้ในการวิเคราะห์
เฟสที่ 3 การเตรียมข้อมูล
ดังได้กล่าวมาแล้วในเฟสที่ 2 ว่า ข้อมูลอาจจะมาหลายแหล่งเอามารวบรวมอยู่ในโครงสร้างเดียวกัน ดังนั้นกระบวนการเตรียมข้อมูลเพื่อให้ถูกต้อง เชื่อถือได้จึงต้องใช้เวลาในการทำนานมาก และใช้เวลามากที่สุดในกระบวนการทำ data mining ทั้ง 6 เฟส ดังนั้น บริษัทที่ฉลาด ๆ จึงทำเครื่องมือหรือซอฟต์แวร์สำหรับงานนี้ขึ้นมาโดยเฉพาะ เช่น RapidMiner, Weka, R, SPSS เป็นต้น
ในเฟส 3 นี้ มีขั้นตอนย่อยออกเป็น 3 ขั้นตอนย่อยอีก นั่นคือ
- การคัดเลือกข้อมูล ข้อมูลตามแอตทริบิวต์ในฐานข้อมูลในระบบการขาย มีการเก็บไว้มากมาย เราจะเลือกเอาข้อมูลที่จำเป็นต้องใช้กับการวิเคราะห์เท่านั้น ประเด็นนี้ก็ต้องสอดคล้องกับเฟสที่ 1 และ 2 เช่น เราตั้งข้อสมมติฐานว่า เพศ อายุ ส่วนสูง น้ำหนักมีผลต่อการซื้อสินค้าเป้าหมายของเราหรือไม่ เราจำเป็นต้องเลือกแอตทริบิวต์เหล่านี้เข้าไปด้วย รวมทั้งสินค้าที่เขาซื้อไป สรุปสั้นในกระบวนการนี้ ได้แก่ 1) กำหนดเป้าหมายว่าเราจะวิเคราะห์อะไร 2) เลือกใช้เฉพาะข้อมูลที่เกี่ยวข้องกับสิ่งที่จะทำการวิเคราะห์เท่านั้น เพื่อไม่ให้เสียเวลากับการเตรียมข้อมูล และการประมวลผลของเครื่องคอมพิวเตอร์
- การทำให้ข้อมูลคลีน (clean) คลีน บางตำราแปลคำว่า "คลีน" ได้ว่า กลั่นกรอง เขาคลีนข้อมูลกันอย่างไร แล้วข้อมูลที่ไม่คลีน เป็นข้อมูลแบบไหน เช่น 1) ข้อมูลที่ซ้ำกัน คลีนด้วยการลบให้เหลือหนึ่งเดียว 2) ข้อมูลที่ผิดพลาด แก้โดยการทำให้ถูก เช่น วันที่เก็บผิดรูปแบบจาก 31 ธ.ค. 2559 หรือ 31/12/2016 เป็น 2016-12-31 3) ข้อมูลที่หายไป ก็เพิ่มเข้าไป เช่น จำนวนบุตร ถ้าไม่มีบุตรบางข้อมูลจะเว้นว่างเอาไว้ แก้โดยการใส่ 0 4) ข้อมูลที่ไม่เข้าพวก แปลกแยกออกไป แก้โดยการใส่ข้อมูลค่าเฉลี่ย หรือค่าปริยาย (default)
- แปลงข้อมูล เป็นขั้นตอนการแปลงข้อมูลในรูปแบบตารางฐานข้อมูลให้อยู่ในรูป item set เพื่อใช้สำหรับการวิเคราะห์ด้วยวิธีการของ data mining เช่น กฎความสัมพันธ์ หรือจำนวนความถี่ เป็นต้น
เพื่อให้เห็นเด่นชัด เข้าใจในหัวข้อนี้ จึงขอแสดงรูปแบบการแปลงข้อมูลให้เห็น ดังตารางต่อไปนี้
ตัวอย่างการแปลงจากตารางข้อมูลให้อยู่ในรูปของกฎความสัมพันธ์
ID | Products | Quantity |
---|---|---|
1 | ยาสีฟัน | 1 |
1 | สบู่ | 1 |
1 | ผงซักฟอก | 1 |
2 | ผงซักฟอก | 5 |
2 | น้ำมันพืช | 2 |
3 | ยาสีฟัน | 1 |
3 | สบู่ | 1 |
3 | แปรงสีฟัน | 2 |
แปลงให้อยู่ในรูปกฎอัลกอริทึมความสัมพันธ์ ได้ดังตารางต่อไปนี้
ส่วนการแปลงในรูปแบบอัลกอริทึมจำนวนความถี่ จะขอยกตัวอย่างกรณี สำรวจหรือค้นหาข้อความ ข้อมูลจากอินเทอร์เน็ต เช่น เราค้นหาคำว่า สถานที่ท่องเที่ยวทางทะเล ใน google.com แล้วเขียนโปรแกรมให้นับคำจำนวนที่ซ้ำ ๆ กัน เอาไปใส่ในตาราง หน้าตาของตารางออกมาแนวนี้
เฟสที่ 4. การสร้างโมเดล
เป็นขั้นตอนการวิเคราะห์การวิเคราะห์ข้อมูลด้วยเทคนิค data mining กันเลย ซึ่งมีอยู่ด้วยกันหลายเทคนิค ได้แก่
ID | ยาสีฟัน | สบู่ | ผงซักฟอก | น้ำมันพืช | แปรงสีฟัน |
---|---|---|---|---|---|
1 | TRUE | TRUE | TRUE | - | - |
2 | - | - | TRUE | TRUE | - |
3 | TRUE | TRUE | - | - | TRUE |
ส่วนการแปลงในรูปแบบอัลกอริทึมจำนวนความถี่ จะขอยกตัวอย่างกรณี สำรวจหรือค้นหาข้อความ ข้อมูลจากอินเทอร์เน็ต เช่น เราค้นหาคำว่า สถานที่ท่องเที่ยวทางทะเล ใน google.com แล้วเขียนโปรแกรมให้นับคำจำนวนที่ซ้ำ ๆ กัน เอาไปใส่ในตาราง หน้าตาของตารางออกมาแนวนี้
ID | ภูเก็ต | สมุย | เสม็ด | หลีเป๊ะ | พะงัน |
---|---|---|---|---|---|
1 | 5 | 4 | 3 | 1 | 2 |
2 | ... | ... | ... | ... | ... |
เฟสที่ 4. การสร้างโมเดล
เป็นขั้นตอนการวิเคราะห์การวิเคราะห์ข้อมูลด้วยเทคนิค data mining กันเลย ซึ่งมีอยู่ด้วยกันหลายเทคนิค ได้แก่
- classification การคลาสซิฟายหรือการจำแนก แจกแจง เป็นโมเดลที่ใช้สำหรับนำข้อมูลที่มีอยู่มาทำนายอนาคต เช่น การพยากรณ์การขายสินค้า A ในฤดูฝนที่จะถึง หรือการพยากรณ์อากาศ เป็นต้น
- clustering เป็นการแบ่งกลุ่ม หรือจัดกลุ่มในพวกเดียวกัน คล้ายคลึงกัน เช่น การแบ่งสินค้าตามรูปร่าง แบ่งสินค้าตามราคา หรือแบ่งสินค้าตามชนิดการใช้งาน
- association rules เป็นการหาความสัมพันธ์ของข้อมูลที่เกิดร่วมกัน เช่น ค้นหาสินค้าที่มีการซื้อร่วมกันบ่อย ๆ แล้วนำเสนอให้ลูกค้ารายใหม่ ที่ใช้ใน amazon.com เป็นต้น
สำหรับผู้อ่านที่สามารถเขียนโปรแกรมได้ สามารถหาไลบรารี ที่รวบรวมอัลกอริทึมต่าง ๆ มาให้เป็นเครื่องมือสำหรับใช้งาน เราสามารถเขียนคำสั่ง ไปประยุกต์ได้ สำหรับ association rules มีอัลกอริทึมของ Apriori และ FP-Growth ให้ใช้ ลองนำคำนี้ค้นหาใน google ก็สามารถหาเจอ และนำไปใช้ได้ โดยเฉพาะภาษาไพธอน มีให้ดาวน์โหลดนำไปใช้ได้ที่ https://pypi.python.org/pypi/apriori/1.0.0 (python apriori library)
และที่ https://pypi.python.org/pypi/fp-growth/ (python FP-growth library)
เฟสที่ 5. การประเมินผล
เป็นขั้นตอนการประเมินผล หรือวัดหาประสิทธิภาพของการใช้โมเดลในเฟสที่ 4 ว่าโมเดลที่เลือกใช้งาน ใน data mining มีความถูกต้อง เชื่อมั่นได้เพียงไร
ในขั้นตอนนี้จะใช้โมเดล decision tree หรือ neural network เป็นเครื่องมือในการประเมิน
เฟสที่ 6. การนำไปใช้งาน
เมื่อได้ผลลัพธ์ที่ถูกต้อง ตามวัตถุประสงค์ทุกประการแล้ว ในขั้นตอนนี้จะเป็นการนำไปใช้งานจริง ตัวอย่างที่เราเห็นกัน ได้แก่ โฆษณาใน google หรือ amazon, lazada, youtube ระบบเล่นอัตโนมัติ เป็นต้น