Uploaded on

 

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
7,652
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
148
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Data Mining
  • 2. Data Mining คือ
    • คือ ชุด software วิเคราะห์ข้อมูลที่ได้ถูกออกแบบมาเพื่อระบบสนับสนุนการตัดสินใจของผู้ใช้ มันเป็น software ที่สมบรูณ์ทั้งเรื่องการค้นหา การทำรายงาน และโปรแกรมในการจัดการ ซึ่งเราคุ้นเคยดีกับคำว่า Executive Information System ( EIS ) หรือระบบข้อมูลสำหรับการตัดสินใจในการบริหาร ซึ่งเป็นเครื่องมือชิ้นใหม่ที่สามารถค้นหาข้อมูลในฐานข้อมูลขนาดใหญ่หรือข้อมูลที่เป็นประโยชน์ในการบริหาร ซึ่งเป็นการเพิ่มคุณค่าให้กับฐานข้อมูลที่มีอยู่
  • 3. ประเภทของข้อมูลที่จะทำ Data Mining
    • Relational databases เป็นฐานข้อมูลที่จัดเก็บอยู่ในรูปแบบของตาราง   โดยในแต่ละตารางจะประกอบไปด้วยแถวและคอลัมน์   ความสัมพันธ์ของข้อมูลทั้งหมดสามารถแสดงได้โดย entity-relationship (E-R) model
    • Data warehouses เป็นการเก็บรวบรวมข้อมูลจากหลายแหล่งมาเก็บไว้ในรูปแบบเดียวกันและรวบรวมไว้ในที่ ๆ   เดียวกัน ซึ่งสะดวกต่อการนำข้อมูลไปไมน์ต่อไป รายละเอียดต่าง ๆ จะได้นำเสนอในตอนต่อ   ๆ ไป
    • Transactional databases ประกอบด้วยข้อมูลที่แต่ละทรานเซกชันแทนด้วยเหตุการณ์ในขณะใดขณะหนึ่ง เช่น   ใบเสร็จรับเงิน จะเก็บข้อมูลในรูป ชื่อลูกค้าและรายการสินค้าที่ลูกค้ารายนั้นซื้อ   เป็นต้น
    • Advanced database เป็นฐานข้อมูลที่จัดเก็บในรูปแบบอื่น ๆ เช่น   ข้อมูลแบบ object-oriented, ข้อมูลที่เป็นเท็กซ์ไฟล์ ข้อมูลมัลติมีเดีย   ข้อมูลในรูปของเว็บ
  • 4. การเตรียมข้อมูลให้เหมาะสมสำหรับการทำ Data Mining
    • ข้อมูลที่จะใช้ในการทำ Data Mining นั้นจะต้องเตรียมให้อยู่ในรูปแบบที่เหมาะสมก่อนเสมอ โดยรูปแบบที่นิยมใช้กันมากคือการทำข้อมูลให้อยู่ในรูปแบบตาราง ( Relational database) เมื่อจัดข้อมูลให้อยู่ในรูปแบบตารางได้แล้วจะต้องเตรียมข้อมูลให้สมบูรณ์ตามขั้นตอนดังนี้
    • รวบรวมข้อมูลทั้งหมดที่ต้องการทำ Data Mining ซึ่งอาจอยู่ในหลายฐานข้อมูล , DBMS, ระบบปฏิบัติการ ให้อยู่ในฐานข้อมูลเดียวหรือตารางเดียวก่อน โดยอาจใช้เทคนิค Data Warehouses หรือใช้ SQL joint operator ในการรวบรวมข้อมูล  
    • แก้ไขข้อมูลให้ถูกต้องสมบูรณ์ เช่น การแก้ไขค่าว่างของข้อมูลโดยอาจใส่ค่า 0 ลงไปหรืออาจไม่นำข้อมูลในแถวนั้นมาไมน์ก็ได้ ขึ้นอยู่กับการตัดสินใจของผู้ดูแลระบบ
    • ปรับเปลี่ยนข้อมูลให้มีค่าเหมาะสมในการตัดสินใจ เช่น ในการทำ Data Mining ของร้านค้า ข้อมูลที่มีค่า " Coke" และ " Pepsi" ควรเปลี่ยนค่าให้เป็น " น้ำอัดลม " แทน เพื่อเหมาะสมในการตัดสินใจมากขึ้น
  • 5. การเตรียมข้อมูลให้เหมาะสมสำหรับการทำ Data Mining ( ต่อ )
    • คอลัมน์ที่มีค่าสำหรับทุกแถวเป็นค่าเดียวกัน เช่น " สัญชาติไทย " จะเป็นข้อมูลที่ไม่สามารถแยกความแตกต่างของแต่ละแถวได้เลย ดังนั้นในการทำ Data Mining จะไม่สามารถใช้ประโยชน์จากคอลัมน์นี้ ค่านี้อาจเกิดจากการที่เน้นความสนใจไปยังข้อมูลส่วนใดส่วนหนึ่งโดยเฉพาะ เช่น สนใจข้อมูลนักท่องเที่ยวชายไทย เป็นต้น ดังนั้นหากพบว่าข้อมูลที่สนใจที่จะนำมาทำ Data Mining นั้นบางคอลัมน์มีค่าเดียวกันทั้งหมด สมควรอย่างยิ่งที่จะไม่นำคอลัมน์นั้นมาไมน์
    • คอลัมน์ที่มีค่าที่ไม่ซ้ำกันเลย ตัวอย่างเช่น หมายเลขสมาชิก ชื่อสมาชิก หมายเลขโทรศัพท์ เลขทะเบียนรถ เป็นต้น ข้อมูลเหล่านี้ไม่สามารถหาแถวที่มีข้อมูลสัมพันธ์กันได้เลย การทำ Data Mining จึงไม่สามารถนำข้อมูลเหล่านี้มาใช้ประโยชน์ได้ ดังนั้นในการทำ Data Mining ควรกำจัดคอลัมน์ที่มีข้อมูลไม่ซ้ำกันเลยออก แต่ข้อมูลเหล่านี้อาจให้รายละเอียดบางประการที่น่าสนใจกับเราได้ เช่น ข้อมูลหมายเลขลูกค้าสามารถแบ่งลูกค้าเก่าและลูกค้าใหม่ได้ ข้อมูลหมายเลขโทรศัพท์สามารถบอกตำแหน่งที่อยู่แบบคร่าว ๆ ได้ เป็นต้น
  • 6. การทำข้อมูลให้สมบูรณ์ ( Data Cleaning)
    • ข้อมูลที่ได้มานั้น เป็นข้อมูลที่ยังไม่สมบูรณ์ที่จะสามารถนำไปใช้ผ่านกระบวนการดาต้าไมน์นิงได้ จึงต้องมีการจัดการข้อมูล การเตรียมข้อมูลเบื้องต้นมีวิธีการดังนี้  
    • สำหรับคอลัมน์ที่มีค่าสำหรับทุกแถวเป็นค่าเดียวกัน เช่น “ สัญชาติไทย ” จะเป็นข้อมูลที่ไม่สามารถแยกความแตกต่างของแต่ละแถวได้เลย ดังนั้นในการทำดาต้าไมน์นิงจะไม่สามารถใช้ประโยชน์จากคอลัมน์นี้ ดังนั้น จึงไม่นำคอลัมน์นี้มาพิจารณา
    • คอลัมน์ที่มีค่าที่ไม่ซ้ำกันเลย ได้แก่ ชื่อผู้ปกครอง หมายเลขโทรศัพท์ เป็นต้น ข้อมูลเหล่านี้ไม่สามารถหาแถวที่มีข้อมูลสัมพันธ์กันได้เลย การทำดาต้าไมน์นิงจึงไม่สามารถนำข้อมูลเหล่านี้มาใช้ประโยชน์ได้ ดังนั้นในการทำดาต้าไมน์นิงควรกำจัดคอลัมน์ที่มีข้อมูลไม่ซ้ำกันเลยออก
  • 7. การทำให้ข้อมูลครบถ้วนสมบูรณ์
    • รูปแบบของข้อมูลที่ไม่สมบูรณ์ก็มีดังต่อไปนี้
    • ค่าที่ขาดหายไป (Missing Value)
    • ข้อมูลที่มีสิ่งปลอมปน (Noisy Data)
    • ความขัดแย้งกันของข้อมูล (Inconsistent Data)
  • 8. ค่าที่ขาดหายไป (Missing Value)
    • สามารถเกิดขึ้นได้จากการเก็บข้อมูลโดยทั่วไป โดยอาจมีค่าในบางคอลัมน์ของบางแถวขาดหายไป เช่น ค่าในบางคอลัมน์ของอาชีพ และรายได้ที่ขาดหายไป ซึ่งอาจเกิดจากสาเหตุต่างๆกัน เช่น ผู้ใช้อาจบันทึกข้อมูลไม่ครบถ้วน หรือเป็นข้อมูลที่สามารถเว้นว่างไว้ได้ ทำให้ผู้ใช้ละเลยที่จะบันทึกข้อมูลในคอลัมน์นั้นๆ หรือบางทีอาจเกิดจากข้อมูลที่ป้อนแย้งกับข้อมูลในลักษณะประจำ จึงทำให้ถูกลบออกไป ซึ่งเราจะต้องมี วิธีการจัดการกับข้อมูลที่หายไป เหล่านั้น ดังนี้
      • กำจัดข้อมูลทั้งแถว ที่ไม่มีข้อมูล ซึ่งใช้กับการหายไปของข้อมูลในหลักที่สำคัญ เช่น ลักษณะประจำเป้าหมาย
      • ใส่ค่าที่หายไปโดยมนุษย์ ซึ่งวิธีการนี้จะน่าเชื่อถือได้มากที่สุด ถ้าผู้ใส่เป็นผู้เชี่ยวชาญ หรือผู้ที่ทราบจริง แต่ก็เป็นวิธีการที่ยุ่งยาก และถ้ามีปริมาณมากๆ ก็ไม่สามารถรับประกันได้ว่า จะได้ผลลัพธ์ที่ดี
      • สร้างค่าใหม่ในหลักที่เรียกว่า “ Unknown” โดยแทนที่ค่าทุกค่าที่ขาดไปด้วยค่าคงที่เดียวกันทั้งหมดปรกติวิธีนี้ จะใช้ในขั้นการวิเคราะห์ เพื่อพิจารณาข้อมูลดังกล่าวเป็นพิเศษ
      • หาค่าที่น่าจะเป็นมากที่สุด มาแทนที่ค่าที่ขาดหายไป โดยอาจจะใช้สถิติวิเคราะห์การแจกแจง แล้วใช้ ความน่าจะเป็นในการสุ่มค่า หรืออาจใช้โครงสร้างการตัดสินใจ (Decision Tree) ในการตัดสินใจใส่ค่า
  • 9. ข้อมูลที่มีสิ่งปลอมปน (Noisy Data)
    • คำว่าสิ่งปลอมปน (Noisy) ในที่นี้มีความหมายว่า ความผิดพลาดที่เกิดแบบไม่ได้ตั้งใจ หรือแปรปรวนไปจากที่ควรจะเป็น เช่น อายุ 200 ปี หรือ รายได้ติดลบ เป็นต้น สาเหตุที่ข้อมูลมีสิ่งปลอมปน อาจมาจากความผิดพลาดในการบันทึกข้อมูล ค่าเหล่านี้ควรถูกแก้ไข หรือไม่นำมาวิเคราะห์ และควรมีขั้นตอนในการตรวจสอบข้อมูลก่อนนำไปใช้ สิ่งที่ปลอมปนมากับข้อมูลประเภทตัวเลขนั้น สามารถทำให้เกิดความกลมกลืนกันของกลุ่มข้อมูล โดยวิธีการดังต่อไปนี้
      • บินนิ่ง (Binning) เป็นวิธีการจัดเรียงค่าของข้อมูล เพื่อให้เกิดความกลมกลืนกัน โดยเรียงข้อมูลที่มีค่าใกล้กันไว้ ในถังเดียวกัน แล้วทำให้ข้อมูลในถังเดียวกันกลมกลืนกันวิธีการแบบบินนิ่งนี้ ถ้ามีระยะห่างของข้อมูลมาก ก็ยิ่งมีผลต่อการทำให้ข้อมูลกลมกลืนกันมากขึ้น หรือมิเช่นนั้นแล้วอาจแบ่งแต่ละถังให้มีความกว้างเท่าๆกัน โดยดูจากระยะห่างของค่าในแต่ละถังเป็นค่าคงที่เท่าๆกัน
  • 10. ความไม่ลงรอยกันของข้อมูล ( Inconsistency Data )
    • ความไม่ลงรอยกันของข้อมูล หมายถึงความผิดแผกไปจากที่ควรจะเป็น ความขัดแย้งกันหรือความไม่สอดคล้องกันของข้อมูล ซึ่งอาจเกิดขึ้นกับข้อมูลประเภททรานแซกชัน โดยเป็นไปได้ว่าข้อมูล ณ ขณะหนึ่งอาจมีบางแถว หรือระเบียนข้อมูลที่ไม่สอดคล้องกัน ซึ่งบางครั้งสามารถแก้ไขให้ถูกต้องได้ โดยอาศัยข้อมูลจากเอกสารภายนอกระบบมาอ้างอิง ตัวอย่างเช่น ระบบที่มีการคีย์ข้อมูลจำนวนมากที่เป็นเอกสารทางการขายสินค้า เข้าสู่ระบบคอมพิวเตอร์ อาจพบว่าคีย์ข้อมูลจำนวนเงิน ผิดไป ก็สามารถนำเอกสารต้นฉบับมาตรวจสอบแก้ไขได้ เป็นต้น สิ่งนี้อาจทำควบคู่ไปกับการออกแบบระเบียนวิธีการทำงาน เพื่อช่วยแก้ไขการทำงานกับรหัสหรือข้อมูลที่ขัดแย้งกัน อาจมีการใช้เครื่องมือจัดการความรู้ เพื่อช่วยตรวจจับความผิดพลาด จากเงื่อนไขข้อบังคับข้อมูลที่เรารู้ล่วงหน้าแล้ว เช่น การขึ้นตรงต่อกันภายในคอลัมน์ สามารถค้นหาค่าที่ขัดแย้งกับข้อบังคับของตัวแปรนั้นได้ เช่น อายุต้องไม่ติดลบ และต้องอยู่ในช่วง 20 ถึง 70 เป็นต้น ความไม่ลงรอยกันของข้อมูลอาจเกิดจากการรวมข้อมูลจากหลายแหล่ง เนื่องจากการเก็บข้อมูลในฐานข้อมูล ที่แตกต่างกันก็อาจใช้ชื่อคอลัมน์หรือฟิลด์ที่ต่างกัน อีกทั้งอาจเกิดความซ้ำซ้อนของข้อมูลขึ้นได้ด้วย
  • 11. ขั้นตอนต่อไป คือ การรวบรวมข้อมูลเพื่อนำไปสู่การทำ Data Mining