ในปัจจุบันนั้น พบว่ามีการนำ Data Mining มาใช้เยอะขึ้นมาก ๆ
แต่ส่วนใหญ่ที่พบเจอ
มักจะคุยกันเฉพาะเครื่องมือที่ใช้งาน
มากกว่าที่จะพยายามทำความเข้าใจกับข้อมูล และ business domain
หรือความรู้ต่าง ๆ ที่จำเป็นต่อการวิเคราะห์ข้อมูล
ซึ่งนี่คือปัญหาที่กำลังเกิดขึ้นอยู่ในปัจจุบัน
ดังนั้น เรามาเรียนรู้ และ เข้าใจเกี่ยวกับ Data Mining Process กันหน่อย
ว่ามันเป็นอย่างไรบ้าง ?
อ้างอิงจาก CRISP-DM (Cross-Industry Standard Process for Data Mining)
ประกอบไปด้วยขั้นตอนดังนี้
- Business understanding
- Data understanding
- Data preparation
- Modeling
- Evaluation
- Deployment
แสดงดังรูป
จากขั้นตอนการทำงานเหล่านี้
จะเห็นได้ว่า เราสามารถนำไปประยุกต์ใช้ในงาน หรือปัญหาใด ๆ ก็ได้
ไม่สนใจว่าข้อมูลจะมาจากไหน
ไม่สนใจว่าจะใช้เครื่องมืออะไร
ไม่สนใจว่าจะใช้ method และ algorithm อะไรในการวิเคราะห์
โดยขั้นตอนที่มีความสำคัญมาก คือ Business understanding และ Data understanding
นั่นคือ
ก่อนที่คุณจะทำการเตรียมข้อมูล
ก่อนที่คุณจะทำการวิเคราะห์ข้อมูล
ก่อนที่จะทำการ modeling
ก่อนที่จะทำการ evaluate
ก่อนที่จะทำการ deploy
จะต้องมีความรู้ความเข้าใจเกี่ยวกับ business domain นั้น ๆ เป็นอย่างดี
จะต้องมีความรู้ความเข้าใจเกี่ยวกับ data หรือ ข้อมูล นั้น ๆ เป็นอย่างดี
เนื่องจากถ้าไม่เข้าใจ business domain แล้ว
เราจะรับรู้ถึงปัญหาได้อย่างไร ?
และแน่นอนว่า ไม่สามารถหาวิธีการแก้ไขปัญหาที่ดี และ ถูกต้องได้
จากนั้นคุณจะต้องเข้าใจข้อมูลที่มีอีกด้วย
ว่าข้อมูลประกอบไปด้วยอะไรบ้าง ?
ว่าข้อมูลแต่ละตัวมันหมายถึงอะไร ?
ว่าข้อมูลแต่ละตัวมีผลกระทบอะไร ?
ว่าข้อมูลแต่ละตัวมีความสำคัญอย่างไร ?
ว่าข้อมูลแต่ละตัวมีความสัมพันธ์กันอย่างไร ?
ว่าช่วงเวลากับข้อมูลแต่ละตัวเกี่ยวข้องกันอย่างไร ?
จึงจะช่วยทำให้เราสามารถเลือกข้อมูลที่ถูกต้อง
เพื่อมาแก้ไขปัญหาได้อย่างถูกต้อง และ เหมาะสม
อ่านไปเจอตัวอย่างที่น่าสนจาก ThinkToStart
ยกตัวอย่างข้อมูลชุดนี้
เป็นข้อมูลการสมัครเข้าเรียนใหม่ของมหาวิทยาลัย
เพื่อใช้ในการทำนายว่าจะสมัครเข้าเรียนหรือไม่ ?
แสดงดังรูป
ลองคิดดูสิว่า ถ้ามีข้อมูลมาเช่นนี้
โดยที่คุณไม่มีความรู้ทางด้านการศึกษาเลย
มันจะเกิดอะไรขึ้นบ้าง ?
ชีวิตของคุณจะพบปัญหาอีกเยอะหรือไม่ ?
ข้อมูลมันมีเยอะพอควร เช่น ที่อยู่ คณะที่สนใจเรียน และ GPA เป็นต้น
สิ่งที่คุณจำเป็นต้องรู้ก็คือ
ข้อมูลในแต่ละ column นั้นมันคืออะไร ?
ข้อมูลในแต่ละ column นั้นมันมีความสัมพันธ์กันอย่างไร ?
ตัวอย่างเช่นใน column F คือ Admitted (อนุญาตให้สมัครได้)
พบว่ามีข้อมูลแถวที่ 2 และ 8 บอกว่า ทั้งสองจะไม่สมัครเข้าเรียน ?
คำถาม
ทำไมถึงไม่ได้สมัครเข้าเรียนล่ะ หรือ มหาวิทยาลัยนี้ไม่ดี ?
คำตอบ
ถ้าเรามีความรู้ใน business domain ของการศึกษา
จะพบว่าคนที่ไม่ได้รับอนุญาตให้สมัครเรียน
จะไม่สามารถเข้ามายังกระบวนการนี้ได้เลย !!
แสดงว่า column F นี้มันไร้ค่ามาก ๆ
ไม่ควรเป็นข้อมูลที่ใช้ในการตัดสินใจใด ๆ เลย
ดังนั้น จึงตัดทิ้งไปซะ
นี่คือตัวอย่างที่คุณควรมีความเข้าใจใน business domain นั้น ๆ เป็นอย่างดี
และการทำความเข้าใจก็ไม่จำเป็นต้องใช้เครื่องมือใด ๆ เลย
วันนี้คุณเข้าใจกับ business domain ที่คุณทำอยู่หรือไม่ ?
ลองตอบคำถามกับตัวเองก่อนนะ