การทำเหมืองข้อมูล

Posted: มิถุนายน 26, 2011 in อื่นๆ

ปัจจุบันการเขียนโปรแกรมคอมพิวเตอร์  เพื่อพัฒนาโปรแกรมระบบงานด้านธุรกิจขึ้นมาใช้งาน  อำนวยความสะดวกในเรื่องของการคำนวณ  ประมวลผล  เก็บรวบรวมข่าวสาร  ค้นหา  และออกรายงานได้อย่างรวดเร็ว ด้วยความสามารถของคอมพิวเตอร์นั้น  ถือเป็นเรื่องปกติพื้นฐานไปเสียแล้วสำหรับการพัฒนาระบบงานในปัจจุบัน

                ถ้าหาก programmer หรือผู้ที่มีส่วนเกี่ยวข้องในการพัฒนาโปรแกรมระบบงานด้านธุรกิจ  ไม่มีการพัฒนาแนวคิดใหม่ ๆ ที่จะนำเทคนิควิธี  หรือ Algorithm  มาใช้กับข้อมูล  ในขณะที่มีอุปกรณ์และเครื่องมือสมัยใหม่ต่าง ๆ ที่เอื้อประโยชน์ในการพัฒนา  ความสามารถของเครื่องคอมพิวเตอร์ก็วิวัฒนาการอย่างรวดเร็ว  มีประสิทธิภาพสูง  ความจุมหาศาล  แต่ถ้าเราไม่สามารถที่จะใช้สิ่งที่มีอยู่ได้อย่างเต็มประสิทธิภาพและคุ้มค่า  ย่อมจะส่งผลต่อระบบงานที่ล้าหลัง  ล้าสมัย ขาดการวิเคราะห์และสกัดข้อมูลที่ซ่อนเร้นอยู่ในฐานข้อมูลนั้นขึ้นมาใช้ประโยชน์อย่างที่ควรจะเป็น  และนั่นก็บ่งบกถึงประสิทธิภาพของบุคคลที่ขาดความคิดสร้างสรรค์   ขาดความสามารถ  องค์กรของเราก็จะล้าหลังในธุรกิจ ตามคู่แข่งไม่ทัน ขาดข้อมูลข่าวสารที่จะนำไปสร้างกลยุทธ์  และสร้างความได้เปรียบให้กับองค์กร  และมันอาจจะนำมาซึ่งอนาคตขององค์กร  ว่าจะสามารถคงอยู่ได้หรือไม่  กับสภาวการณ์การแข่งขันด้านธุรกิจในปัจจุบันที่มีความรุนแรง

                ดังนั้นเราควรทำความรู้จักกับ  การแสวงหาความรู้ใหม่ด้วยเทคนิคของการการทำเหมืองข้อมูล

(Data Mining: Concepts and Techniques) ดังต่อไปนี้

5.1  เหมืองข้อมูล (Data Mining)

Data Mining คือ   การค้นหาความสัมพันธ์และรูปแบบ(Pattern)  ทั้งหมด ซึ่งมีอยู่จริงในฐานข้อมูล แต่ได้ถูกซ่อนไว้ภายในข้อมูลจำนวนมาก     Data Mining จะทำการสำรวจและวิเคราะห์อย่างอัตโนมัติหรือกึ่งอัตโนมัติ ในปริมาณข้อมูลจำนวนมากให้อยู่ในรูปแบบที่เต็มไปด้วยความหมายและอยู่ในรูปของกฎ  (Rule) โดยความสัมพันธ์เหล่านี้แสดงให้เห็นถึงความรู้ต่าง ๆ  ที่มีประโยชน์ในฐานข้อมูล

                                                Data Mining  จะเป็นการสังเคราะห์ข้อมูลอย่างละเอียดจากฐานข้อมูลขนาดใหญ่ หรืออาจวิเคราะห์มาจากรายการ Transaction   โดยเรียนรู้ข้อมูลจากอดีต หรือปัจจุบันผลลัพธ์ที่ได้จากการสังเคราะห์ของ Data Mining  อาจจะเป็นข้อมูลแบบ Unknow , Valid, หรือ Actionable  ซึ่งความหมายของข้อมูลทั้ง 3 ประเภทนี้ มีดังนี้

                1.  ข้อมูลแบบ Unknow    เป็นข้อมูลที่ผู้ใช้งานไม่เคยรู้มาก่อน  ไม่ชัดเจน  ไม่สามารถตั้งสมมติฐานล่วงหน้าว่าจะเป็นแบบใด  เช่น 

Ex :  ห้างสรรสินค้าแห่งหนึ่งค้นพบพฤติกรรมของผู้บริโภค  ที่พ่อบ้านมักซื้อเบียร์และผ้าอ้อมในวันศุกร์ตอนเย็น  ดังนั้นเป็นสัญญาณให้เจ้าของกิจการควรจะเตรียมสินค้าไว้เพื่อจำหน่าย  ในขณะที่ห้างคู่แข่งอาจจะไม่รู้ข้อมูลเหล่านี้ 

Ex:  เจ้าของร้านขายรถยนต์พบว่ารถยนต์ขนาดใหญ่  ราคาแพงมักจะถูกซื้อโดยคนที่สูงอายุ  ซึ่งเจ้าของร้านไม่เคยรู้มาก่อน  แต่ข้อมูลดังกล่าวไม่เป็นลักษณะของ Unknow  เพราะสมมติฐานดังกล่าวมีอยู่  คือ คนที่มีอายุมักมีฐานะดีขึ้น  เมื่อเทียบกับคนในวัยที่อายุน้อย

                2.  ข้อมูลแบบ Valid   เมื่อผู้ใช้เริ่มใช้เทคนิคของ Data Mining  จะค้นพบสิ่งที่น่าสนใจตลอดเวลา  แต่จะต้องพิจารณาด้วยว่าสิ่งนั้นถูกต้อง (Valid) หรือไม่  เช่น   มักจะพบว่ามีความสัมพันธ์ของการซื้อสินค้า 2   อย่างเสมอ  เมื่อจำนวนความหลากหลายของสินค้ามากขึ้น   แต่ไม่ได้หมายความว่าจะต้องให้ห้างสรรพสินค้า เก็บสินค้าในคลังมากขึ้น  เพราะข้อมูลที่ได้อาจเกิดความคลาดเคลื่อน  เพราะฉะนั้นจะต้องทำการตรวจสอบความถูกต้อง (Validation and  Checking)   ของข้อมูลและวิเคราะห์ความถูกต้องอีกครั้ง            

3.  ข้อมูลแบบ Actionable :   ข้อมูลจะต้องถูกแปลงออกมาและนำมาตัดสินใจ เพื่อสร้างความได้เปรียบในเชิงธุรกิจ  บางครั้งข้อมูลที่เราค้นพบเป็นสิ่งที่คู่แข่งได้ทำไปเสียแล้ว (เราช้าไป)   หรืออาจผิดกฎหมาย  ซึ่งจะต้องมีวิจารณญาณในการใช้ด้วย  บางทีข้อมูลดังกล่าวอาจไม่มีประโยชน์อะไร

5.2  วิวัฒนาการของ  Data Mining

  1. ปี ค.ศ 1960  :Data Collection    มีการนำข้อมูลมาจัดเก็บอย่างเหมาะสมในอุปกรณ์ที่น่าเชื่อถือ  เพื่อ

ป้องกันการสูญหายได้เป็นอย่างดี

  1. ปี 1980: Data Access  มีการนำข้อมูลที่จัดเก็บมาสร้างความสัมพันธ์ระหว่างกัน  เพื่อนำไป

วิเคราะห์ และตัดสินใจอย่างมีประสิทธิภาพ

  1. ปี 1990: Data Warehouse and Dicision Support   มีการนำข้อมูลมาเก็บลงในฐานข้อมูลขนาดใหญ่ 

ครอบคลุมการใช้งานทั้งหมดขององค์กร เพื่อช่วยสนับสนุนการตัดสินใจ

  1. ปี 2000 : Data Mining    นำข้อมูลจากฐานข้อมูลมาวิเคราะห์และประมวลผล  โดยสร้างแบบจำลอง

และความสัมพันธ์ทางสถิติ

5.3  วัตถุประสงค์ในการใช้ Data Mining

1.  เพื่อการค้นพบองค์ความรู้ใหม่ในฐานข้อมูล (Knowledge discovery in databases)

2.  เพื่อการสกัดองค์ความรู้ที่ซ่อนเร้นอยู่ (Knowledge extraction)

3.  เพื่อจัดการกับข้อมูลในอดีต (Data archeology)

4.  เพื่อสำรวจข้อมูล (Data exploration)

5. เพื่อค้นหา Pattern ของข้อมูลที่ซ่อนอยู่ (Data pattern processing)

6.  เพื่อใช้ขุดเจาะข้อมูล (Data dredging)

7. เพื่อเก็บเกี่ยวผลประโยชน์ให้ได้มาซึ่งสารสนเทศที่มีประโยชน์

5.4  เป้าหมายหลักของ Data Mining

     คุณลักษณะและเป้าหมายหลักของ  Data Mining คือ  ใช้สกลับหรือค้นหา  Pattern ของข้อมูลที่ฝังลึกและซ่อนเร้นอยู่ภายในฐานข้อมูลขนาดใหญ่  โดยใช้สถาปัตยกรรม Client-Server  (Client/server architecture)  ใช้เครื่องมือสมัยใหม่ที่สามารถแสดงผลแบบกราฟฟิก  ผู้ใช้สามารถดูข้อมูลแบบเจาะลึก  (data drills) และสามารถใช้เครื่องมือในการสอบถามข้อมูลได้อย่างง่ายดาย   โดยไม่ต้องอาศัยความชำนาญของ programmer  บ่อยครั้งเราอาจค้นพบผลลัพธ์ที่เราไม่คาดหวังมาก่อน  เครื่องมือจะทำให้เราใช้งานได้ง่าย   ซึ่งเครื่องมือนอกจากจะแสดงผลกราฟิกได้แล้วยังรวม Spreadsheets  เอาไว้ด้วย

5.5  กระบวนการของ  Data Mining (A KDD Process)

เป็นกระบวนการในการค้นหาลักษณะแฝงของข้อมูล (Pattern)  ที่ซ่อนอยู่ในฐานข้อมูล

Data Cleaning

Data Integration

Databases

Data Warehouse

Task-relevant Data

Selection

Data Mining

Pattern Evaluation

รูปที่ 5.1  กระบวนการของ Data Mining (KDD : Knowledge Discovery in Database)

 

 

ขั้นตอนของการค้นหาความรู้ใหม่ (Steps of a KDD Process)

1. เรียนรู้และศึกษาเกี่ยวกับโปรแกรมที่จะใช้  (Learning the application domain)

2. คัดเลือกข้อมูล  (data selection)  เป็นการระบุถึงแหล่งข้อมูลที่จะนำมาทำ mining  รวมถึงการนำข้อมูลที่ต้องการออกจากฐานข้อมูล  เพื่อสร้างกลุ่มข้อมูลสำหรับพิจารณาในเบื้องต้น

3. การกรองข้อมูลและประมวลผล  (Data cleaning and preprocessing) ข้อมูลที่เก็บรวมรวมมามีจำนวนมากจะต้องนำมากรอง   เพื่อเลือกข้อมูลที่ตรงประเด็น  เพราะบางข้อมูลอาจจะไม่เป็นประโยชน์กับเรา  ในขั้นตอนนี้เป็นขั้นตอนที่เราจะได้มาซึ่งคุณภาพของข้อมูล ที่จะนำไปวิเคราะห์

4. การแปลงรูปแบบข้อมูล  (Data reduction and transformation)  ลดรูปและจัดข้อมูลให้อยู่ในรูปแบบ เดียวกัน มีรูปแบบ (Format) ที่เป็นมาตรฐาน  และเหมาะสมที่จะนำไปใช้กับ Algorithm  และแบบจำลองที่ใช้ทำ Data Mining

5. เลือก  Functions ของ data mining   เช่น summarization, classification, regression, association  และ clustering เป็นต้น

6. เลือก Algorithm  ของ  data mining   เป็นเทคนิคสำหรับการ Mine ข้อมูล

7. ทำการค้นหา Patterns ที่เราสนใจ

8. ประเมินผล  Pattern และนำเสนอองค์ความรู้    ในขั้นตอนนี้จะเป็นการวิเคราะห์ผลลัพธ์ที่ได้  และแปลความหมาย  และประเมินผลว่าผลลัพธ์นั้นเหมาะสมหรือตรงวัตถุประสงค์หรือไม่และนำเสนอ

9. ใช้องค์ความรู้ที่ค้นพบ  (Use of discovered knowledge)

5.6  ชนิดขององค์ความรู้ที่ค้นพบ (Types of knowledge to be mined)

1. องค์ความรู้เกี่ยวกับคุณลักษณะของข้อมูล (Characterization)  เช่น  รู้ว่าคนที่สามารถเรียนต่อในระดับปริญญาเอกได้จะพิจาณาได้จากคุณลักษณะใด

2. องค์ความรู้เกี่ยวกับการจำแนกข้อมูล (Discrimination)

3. องค์ความรู้เกี่ยวกับความสัมพันธ์ของข้อมูล (Association)  เช่น  มีความสัมพันธ์ของการซื้อสินค้าพบว่า  ถ้าลูกค้าป๊อบคอร์น จะต้องซื้อเป๊บซี่ตามมา

4. องค์ความรู้เกี่ยวกับการแยกประเภทข้อมูลและการพยากรณ์ (Classification/prediction)

5. องค์ความรู้เกี่ยวกับการจัดกลุ่มข้อมูล (Clustering)

6. องค์ความรู้เกี่ยวกับการวิเคราะห์ข้อมูลจากภายนอก (Outlier analysis)

7. องค์ความรู้เกี่ยวกับข้อมูลอื่น ๆ ในงานที่ค้นพบ (Other data mining tasks)

5.7  Data Mining และ Business Intelligence

                Data Mining    เป็นระดับการนำข้อมูลไปใช้ที่สูงกว่า Data Warehouse และ Data Mart   นำเอาข้อมูลมาใช้เพื่อการวิเคราะห์ให้เกิดประโยชน์สูงสุด  เพื่อช่วยสนับสนุนการตัดสินใจแก่ฝ่ายบริหาร  โดยอาศัยกฏเกณฑ์ต่าง ๆ ในการทำงาน   

BI (Business Intelligence)   คือ  ข้อมูลสรุปที่สามารถนำมาช่วยในการตัดสินใจ หรือตอบคำถามในเชิงธุรกิจให้กับผู้บริหารได้ ดังนั้นระบบ BI ที่ดีจะต้องสามารถ นำเสนอข้อมูลสารสนเทศในเชิงภาพรวมของธุรกิจทั้งหมดขององค์กรได้ เพื่อทำให้ขีดความสามารถในการวิเคราะห์ข้อมูลสารสนเทศดี เนื่องจากสามารถวิเคราะห์และตอบคำถามของทั้งระบบธุรกิจได้(http://www.g-able.com/thai/solutions/g-biz/bis.htm)

                จากรูป 5.2   จะเห็นว่า  Data Mining  เป็นส่วนประกอบอันใหม่   ที่มีความสำคัญของ  BI(Business Intelligence)  อย่างหนึ่ง  คุณค่าของข้อมูลที่ใช้สนับสนุนการตัดสินใจจะเพิ่มขึ้นเรื่อย ๆ  จากด้านล่างสู่ด้านบนสุดของปิรามิด  

 

 

รูปที่ 5.2   เหมืองข้อมูลและเครื่องมือทางธุรกิจ

(Data Mining and Business Intelligence :  Cabena et al., 1997)

 

5.8  สถาปัตยกรรมของ Data Mining (Architecture of a Typical Data Mining System)

 

รูปที่ 5.3  Architecture of a Typical Data Mining System

ประเภทของข้อมูลที่จะใช้ใน  Data Mining 

1. ข้อมูลที่มาจากฐานข้อมูลเชิงสัมพันธ์ (Relational databases)

2. ข้อมูลจากคลังข้อมูล (Data warehouses)

3. ข้อมูลจากฐานข้อมูลรายการปรับปรุง (Transactional databases)

4. จากฐานข้อมูลพิเศษหรือที่เก็บข่าวสารพิเศษ  ซึ่งได้แก่

–  ฐานข้อมูลเชิงวัตถุ

– ข้อมูลเกี่ยวกับเวลา

– ฐานข้อมูลข้อความ (Text databases)  และฐานข้อมูลมัลติมีเดีย

– ฐานข้อมูลแบบเก่าในอดีตหรือข้อมูลที่มาจากต่างฐานข้อมูลกัน

– ข้อมูลจากแหล่ง  WWW

5.9  Data Mining Functionalities  (Data Mining Task)

                งานของ  Data Mining  สามารถทำงานในการขุดค้นข้อมูล  ดังนี้

1.  การวิเคราะห์คุณสมบัติและการแยกแยะข้อมูล (Characterization and discrimination)

2.  การหาความสัมพันธ์ของข้อมูล (Association)

3. การจัดหมวดหมู่และการวิเคราะห์การถดถอย (Classification/ Regression) 

                                การจัดหมวดหมู่ (Classification)

ตัวอย่างของการจัดหมวดหมู่  ที่นำมาใช้กับงานด้านธุรกิจ  เช่น   มีนักวิเคราะห์ขององค์กร

แห่งหนึ่งต้องการรู้เหตุผลว่า  “ทำไมถูกค้าบางกลุ่มถึงยังคงซื่อสัตย์จงรักภักดีต่อยี่ห้อสินค้า (Band Loyalty) ขององค์กร  และขณะเดียวกันก็มีลูกค้าอีกกลุ่มที่เปลี่ยนใจไปหาคู่แข่ง “  ในการหาคำตอบนี้  นักวิเคราะห์ต้องทำนายลักษณะนิสัยของลูกค้าที่องค์กรอาจต้องเสียไปให้กับคู่แข่ง  ดังนั้นเมื่อมีเป้าหมายคือ “อยากทราบเหตุผล”    นักวิเคราะห์สามารถนำข้อมูลการซื้อสินค้า ของลูกค้าในอดีตมาทดลองกับแบบจำลองเพื่อวิเคราะห์ผลว่าทำไมลูกค้าบางกลุ่มซื่อสัตย์ บางกลุ่มไม่ซื่อสัตย์

                จุดประสงค์คือ : ต้องการศึกษา “อ๊อบเจ็คลูกค้า”  โดยสมมติให้อ๊อบเจ็คลูกค้า  มี Field  ที่เกี่ยวข้อง ดังนี้

                Table: Cutomer

Field

Data Type

Value

Description

Cus_id

Int

unique

รหัสลูกค้า
Time

Int

Integer

ระยะเวลาที่ลูกค้าอยู่กับองค์กร
Trend

Text

เพิ่มขึ้น, คงที่, ลดลง

ตัวบ่งชี้แนวโน้มการใช้สินค้า 6 เดือนล่าสุด
Status

Text

สูง,กลาง, ต่ำ, ไม่ทราบ

การสำรวจผลความพอใจของลูกค้า
Cus_type

Text

ซื่อสัตย์,ไม่ซื่อสัตย์

ลูกค้ายังคงอยู่กับองค์กรหรือเสียไปให้คู่แข่ง

ตารางที่ 5.1 แสดงตารางข้อมูลเกี่ยวกับลูกค้า

                คำตอบที่เราต้องการ (Output) คือรหัสลูกค้า (Cus_type)  ถือเป็นตัวแปรตาม(Dependent vairable) ซึ่งผลของตัวแปรตามจะขึ้นอยู่กับตัวแปรอิสระ ((Independent vairable) ในที่นี้คือฟีลด์ Time, Trend   และ  Status

                มีหลายเทคนิคของ  Data Mining  ที่ใช้ในการแก้ปัญหาแบบ  Classification   แต่ละเทคนิคก็จะมีหลาย  Algorithm  ให้เลือกและแต่ละ   Algorithm   จะให้ผลลัพธ์ที่ต่างกัน  ซึ่งปัญหาประเภทนี้จะให้ผลลัพธ์เป็นค่าที่แน่นอน   เช่น อาจจะได้คำตอบเป็น (Yes, No)  หรือ  (High, Medium, Low)  เป็นต้น       

                เทคนิคของ Data Mining  ที่ใช้ ในการแก้ปัญหาแบบ  Classification   ได้แก่

                1.  Decision Tree

                2.  Neural Networks

                3.  Naïve-Bayes

                4.  K-nearest neighbor (K-NN)

                การวิเคราะห์การถดถอย (Regression)

                ปัญหาแบบ   Regression  จะเหมือนกับแบบ Classification  ต่างกันตรงที่ผลลัพธ์ที่ได้จาก Regression  เป็นค่าแน่นอน  ที่ไม่จำกัด  จะเป็นค่าอะไรก็ได้   เช่น แบบจำลองทำนายว่า  นาย  B จะตอบรับข้อเสนอของบริษัท  ถ้านาย  B  ได้รับผลกำไร  1,000  บาท (1,000 เป็นคำตอบเฉพาะที่แน่นอน  แต่ไม่จำกัด  ซึ่งตัวเลขอาจจะเป็นค่าอื่นไปได้เรื่อย ๆ  ต่างจากคำตอบแบบ Yes, No )

4.  การวิเคราะห์การรวมกลุ่ม หรือ การแบ่งแยกข้อมูล (Cluster analysis/ Segmentation)

                    การวิเคราะห์การรวมกลุ่ม (Clustering)

                                เป็นการรวมกลุ่มข้อมูลที่มีลักษณะเหมือนกัน  รูปแบบหรือแนวโน้มที่จะเหมือนกัน   การใช้เทคนิค Clustering  จะไม่มีผลลัพธ์ (Output)   ไม่มีตัวแปรอิสระ (Independent Variable)  ไม่มีการจัดโครงร่างของวัตถุ  เราจะเรียกเทคนิคของ Clustering  ว่าเป็นแบบเรียนรู้ข้อมูลโดยไม่ต้องอาศัยครูสอน(Unsupervied Learning)  การทำ  Clustering  จะทำบนพื้นฐานของข้อมูลในอดีต

                Ex : องค์กรต้องการทราบความเหมือนที่มีในกลุ่มของลูกค้าของตน  เพื่อที่จะให้เข้าใจลักษณะเฉพาะของลูกค้ากลุ่มเป้าหมาย    และสร้างกลุ่มของลูกค้าเพื่อที่องค์กรจะได้สามารถขายสินค้าได้ในอนาคต  องค์กรจะทำการแยกกลุ่มของข้อมูลลูกค้าออกเป็นกลุ่ม  ๆ (หาส่วนที่เป็น Intersection และUnion)

                เทคนิคของ Data Mining เพื่อแก้ปัญหาแบบ  Clustering  คือวิธี Demographic Clustering  กับ   Neural Clustering

5.  การประเมินและการพยากรณ์ (Estimation/Prediction)

                   การประเมิน (Estimation)

เป็นการประเมินที่ไม่สามารถกำหนดค่าหรือคุณสมบัติที่ชัดเจนได้  ใช้จัดการกับค่าที่มีผล

แบบต่อเนื่อง  เช่น ใช้ประเมินรายได้ของครอบครัว  ประเมินความสูงของบุคคลในครอบครัว ประเมินจำนวนเด็ก ๆ ในครอบครัว 

                   การพยากรณ์ (Prediction)

จะเหมือนกับ Classification และ  Estimation  ต่างกันตรงที่  Record  ถูกแยกจัดลำดับในการ

ทำนายค่าในอนาคต    และนำข้อมูลในอดีตมาสร้างเป็นแบบจำลอง  ใช้ทำนายสิ่งที่จะเกิดขึ้นในอนาคต เช่น  การทำนายว่าลูกค้ากลุ่มใด ที่องค์กรจะสูญเสียไปในอีก 6 เดีอนข้างหน้า  หรือ  การทำนายยอดซื้อของลูกค้าจะเป็นเท่าใด  ถ้าบริษัทลดราคาสินค้าลง 10%

6. การบรรยายและการแสดงภาพของข้อมูล (Description / Visualization)

                   การบรรยาย (Description)

เป็นการหาคำอธิบายถึงสิ่งที่จะเกิดขึ้น โดยอาศัยข้อมูลจากฐานข้อมูล เช่น  กลุ่มคนที่มี

การศึกษาหรือรายได้น้อย  จะเลือกนักการเมืองที่มีนโยบายทุนนิยม  มากกว่ากลุ่มคนชั้นกลาง

 การแสดงภาพของข้อมูล (Visualization)

เป็นการนำเสนอข้อมูลในรูปแบบกราฟฟิก หรืออาจนำเสนอในแบบ 2 มิติ   สร้างรายละเอียด

ในการนำเสนอให้เข้าใจมากยิ่งขึ้น  เช่น  องค์กรต้องการหาสถานที่ในขยายสาขาใหม่ที่อยู่ในเขตพื้นที่ภาคเหนือของประเทศ  ดังนั้นองค์กรจึงใช้แผนที่ Plot ที่ตั้งขององค์กรคู่แข่งที่มีสาขาอยู่ในเขตนั้น  เพื่อพิจารณาสถานที่ตั้งที่เหมาะสมที่สุด

5.10  เครื่องมือและเทคโนโลยีของ Data Mining  (Data Mining Tools and Technologies)

1.  Neural Network  เป็นแนวคิดให้คอมพิวเตอร์ทำงานสมองของมนุษย์  เปลี่ยนตัวเองจากการประมวลผลตามลำดับ (Sequential Processing)  ให้เป็นการประมวลผลแบบคู่ขนานได้ (Parallel Processing)  มีลักษณะการทำงานโดยแต่ Process จะรับ Input เข้าไปคำนวณ  และสร้าง Output ออกมาในลักษณะที่ไม่ใช่การทำงานแบบเชิงเส้นตรง  เพราะ Input แต่ละตัวจะถูกให้ลำดับความสำคัญของค่าไม่เท่ากัน  ค่าของ Output ที่ได้จากการเชื่อมโยงกันนี้  จะถูกนำมาเปรียบเทียบกับ Output  ที่ได้ตั้งเอาไว้    ถ้าค่าที่ออกมาเกิดความคลาดเคลื่อน  ก็จะนำไปสู่การปรับค่าหรือน้ำหนัก (weight)  ของค่าที่ใส่ไว้ให้แต่ละ Input

                Neural Network  เป็นการสร้างแบบจำลอง  ที่เลียนแบบการทำงานของสมองมนุษย์ มีโครงสร้างเป็นกลุ่มของ Node ที่เชื่อมโยงถึงกันในแต่ละ Layer  คือ Input layer, Hidden layer, output layer

รูปที่ 5.4 ตัวอย่างของ Neural Network

 

2.  Decision Trees  เป็นการนำข้อมูลมาสร้างแบบจำลองการพยากรณ์ในรูปแบบ

โครงสร้างต้นไม้(Decision Trees)  ซึ่ง Decision Trees  จะมีการทำงานแบบ Supervised Learning (คือการเรียนรู้แบบมีครูสอน)  สามารถสร้างแบบจำลองการจัดหมวดหมู่ได้จากกลุ่มตัวอย่างข้อมูลที่กำหนดไว้ก่อนล่วงหน้า เรียกว่า  Training set ได้อัตโนมัติ  และพยากรกลุ่มของรายการที่ยังไม่เคยนำมาจัดหมวดหมู่ ได้ด้วยรูปแบบของ Tree  โครงสร้างประกอบด้วย Root Node, Child และ  Leaf Node

3.  Memory Based Reasoning (MBR)     เปรียบเหมือนกับประสบการณ์  การเรียนรู้ของ

มนุษย์  ซึ่งอาศัยการสังเกตที่เกิดขึ้น  แล้วสร้างรูปแบบของสิ่งนั้นขึ้นมา  เราใช้ MBR เพื่อวิเคราะห์ฐานข้อมูลที่มีอยู่  และกำหนดลักษณะพิเศษของข้อมูลที่อยู่ในนั้น  ซึ่งข้อมูลจะต้องมีลักษณะที่สมบูรณ์  การสังเกตจึงจะสมบูรณ์และทำนายผลได้แม่นยำยิ่งขึ้น    แบบจำลองจะถูกบอกคำตอบที่ถูกต้อง  มีการเก็บคำตอบสำหรับแก้ปัญหาไว้ก่อนล่วงหน้าแล้ว  (Supervised Learning)

                4. Cluster Detection   คือจะแบ่งฐานข้อมูลออกเป็นส่วน ๆ เรียกว่า Segment (กลุ่ม Record ที่มีลักษณะคล้ายกัน)  ส่วน Record ที่ต่างกันก็จะอยู่นอก Segment,  Cluster Detection   ถูกใช้เพื่อค้นหากลุ่มย่อย (Sub Group) ที่เหมือน ๆ กันในฐานข้อมูล เพื่อที่จะเพิ่มความถูกต้องในการวิเคราะห์ และสามารถมุ่งไปยังกลุ่มเป้าหมายได้ถูกต้อง

                5. Link Analysis    มุ่งเน้นทำงานบน Record ที่มีความสัมพันธ์กัน  หรือเรียกว่า Association  เทคนิคนี้จะมุ่งไปที่รูปแบบการซื้อหรือเหตุการณ์ที่เกิดขึ้นเป็นลำดับ  มีอยู่ 3 เทคนิค คือ

                                5.1  Association Discovery    ใช้วิเคราะห์การซื้อขายสินค้าในรายการเดียวกัน  ศึกษาความสัมพันธ์อย่างใกล้ชิดที่ถูกปิดซ่อนอยู่ของสินค้า  ซึ่งสินค้าเหล่านั้นอาจมีแนวโน้มที่จะถูกซื้อควบคู่กันไป  การวิเคราะห์แบบนี้เรียกว่า Market Basket Analysis  คือ  รายการทั้งหมดที่ลูกค้าซื้อต่อครั้งที่ Super market  การวิเคราะห์นี้สามารถนำมาใช้ประโยชน์ในการตัดสินใจ เช่น  การเตรียมสินค้าคงเหลือ    การวางแผนจัดชั้นวางสินค้า     การทำ Mailing  list สำหรับ Direct Mail     การวางแผนเพื่อจัด Promotion  สนับสนุนการขาย  ตัวอย่างของ Association เช่น 75%  ของผู้ซื้อน้ำอัดลมจะซื้อข้าวโพดคั่วด้วย

                                5.2 Sequential Pattern Discovery   ถูกใช้ระบุความเกี่ยวเนื่องกันของการซื้อสินค้าของลูกค้า  มีจุดหมายที่จะเข้าใจพฤติกรรมการซื้อสินค้าของลูกค้าในลักษณะ logn term  เช่น  ผู้ขายอาจพบว่าลูกค้าที่ซื้อ TV  มีแนวโน้มที่จะซื้อ VDO  ในเวลาต่อมา

                                5.3 Similar Time Sequence Discovery   ค้นหาความเกี่ยวเนื่องกันระหว่างข้อมูล 2  กลุ่ม  ซึ่งขึ้นต่อกันทางด้านเวลา  โดยมีรูปแบบการเคลื่อนที่เหมือนกัน  ผู้ขายสินค้ามักใช้เพื่อดูแนวโน้มเพื่อเตรียม   Stock  เช่น    เมื่อไรก็ตามที่ยอดขายสินค้าน้ำอัดลมสูงขึ้น  ยอดขายมันฝรั่งจะสูงขึ้นตาม

                6. Genetic Algorithm (GA)   เปรียบเสมือนเป็นการสร้างพันธุกรรมที่ดีสุด  บนขั้นตอนของวิวัฒนาการทางชีวภาพ  แนวคิดหลักคือ  เมื่อเวลาผ่านไป  วิวัฒนาการของเซลล์ชีวิตจะเลือกสายพันธุ์ที่ดีที่สุด  “Fittest Species”   GA  มีความสามารถในการทำงานแบบรวมกลุ่มเข้าด้วยกัน  เช่น    มีการแบ่งกลุ่มและจัดรวมกลุ่มข้อมูลเป็น 3 ชุด  ขั้นตอนการทำงานของ GA เริ่มจาก

                                – จับกลุ่มข้อมูลเป็นกลุ่ม ๆ ด้วยการสุ่มเดา  เปรียบเหมือนกลุ่ม 3 กลุ่มนี้เป็นเซลล์ของสิ่งมีชีวิต  GA  จะมี  Fittest  Function   ที่จะบอกว่ากลุ่มข้อมูลใดเหมาะกับกลุ่ม ๆ ใด   โดย Fittest Function  จะเป็นตัวบ่งชี้ว่าข้อมูลเหมาะกับกลุ่มมากกว่าข้อมูลอื่น ๆ 

                                – GA จะมี Operator  ซึ่งยอมให้มีการเลียนแบบและแก้ไขลักษณะของกลุ่มข้อมูล  Operator จะจำลองหน้าที่ของชีวิตที่ถูกพบในธรรมชาติ  คือ   มีการแพร่พันธุ์  จับคู่ผสมพันธ์  และเปลี่ยนรูปร่างตามต้นแบบของพันธุกรรม  เปรียบกับข้อมูลถ้ามีข้อมูลใดในกลุ่มถูกพบว่าตรงกับคุณสมับัติของ Fittest function  แล้ว  มันจะคงอยู่และถูกถ่ายเข้าไปในกลุ่มนั้น  แต่ถ้าไม่ตรงกับคุณสมบัติ ก็ยังมีโอกาสที่จะถ่ายข้ามไปยังกลุ่มอื่นได้

                7. Rule Induction    ดึงเอาชุดกฎเกณฑ์ต่าง ๆ   มาสร้างเป็นเงื่อนไขหรือกรณี  วิธีการของ Rule Induction    จะสร้างชุดของกฎที่เป็นอิสระ  ซึ่งไม่จำเป็นต้องอยู่ในรูปแบบของโครงสร้างต้นไม้

                8.  K-nearest neighbor  (K-NN)  จะใช้วิธีในการจัดแบ่งคลาส  โดยจะตัดสินใจว่าคลาสไหนที่จะแทนเงื่อนไขหรือกรณีใหม่ ๆ ได้บ้าง  โดยการตรวจสอบจำนวนบางจำนวนของกรณีหรือเงื่อนไขที่เหมือนกันหรือใกล้เคียงกันมากที่สุด  โดยจะหาผลรวม (Count Up)   ของจำนวนเงื่อนไข  หรือกรณีต่าง ๆ สำหรับแต่ละคลาส  และกำหนดเงื่อนไขใหม่ ๆ ให้คลาสที่เหมือนกันกับคลาสที่ใกล้เคียงกับมันมากที่สุด

                K-NN ค่อนข้างใช้ปริมาณงานในการคำนวณสูงมากบนคอมพิวเตอร์  เพราะเวลาสำหรับการคำนวณจะเพิ่มขึ้นแบบแฟคทอเรียล  ตามจำนวนจุดทั้งหมด  เทคนิคของ K-NN  จะมีการคำนวณเกิดขึ้นทุกครั้งที่มีกรณีใหม่ ๆ เกิดขึ้น  ดังนั้นถ้าจะให้เทคนิคแบบ K-NN ทำงานได้เร็ว  ข้อมูลที่ใช้บ่อยควรเก็บอยู่ใน MBR (Memory-Based Reasoning) 

                9.  Association and Sequence Detection 

Association   ใช้หากฎความสัมพันธ์ที่เกิดขึ้นระหว่างกลุ่มของข้อมูล (Item)  ต่าง ๆ  ใช้ใน

Market-basket analysis  อาจใช้เพื่อวิเคราะห์การสั่งซื้อสินค้า

Sequence Detection  เหมือนกับ Association  แต่จะนำเหตุการณ์ที่เกิดขึ้น  และเพิ่มตัวแปร

ด้านเวลาเข้ามาเกี่ยวข้องด้วย    เพื่อใช้วิเคราะห์พฤติกรรมของข้อมูล

การเขียนความสัมพันธ์ (Association)   เช่น    AàB        หมายถึง 

A เป็นเหตุการณ์ที่เกิดขึ้นก่อน (Antecedent) หรือ  LHS (Left-Hand Side)

B  เป็นผลของเหตุการณ์ (Consequent)  หรือ RHS (Right- Hand Side)

เช่น  ในกฎของความสัมพันธ์  “ถ้าซื้อค้อน  แล้วจะซื้อตะปู “  เหตุการณ์ที่เกิดขึ้นก่อนคือ ค้อน  เกิดหลังคือ ตะปู

10. Logic Regression  เป็นการวิเคราะห์ความถดถอยแบบเส้นตรงทั่วๆ ไป  ใช้ในการพยากรณ์ผลลัพธ์ของ 2 ตัวแปร  เช่น   Yes/No  , 0/1  แต่เนื่องจากตัวแปรตาม (Dependent Variable)  มีค่าเพียง 2 อย่างเท่านั้น จึงไม่สามารถสร้างแบบจำลอง (Model) ได้สำหรับการวิเคราะห์แบบ   Logic Regression 

ดังนั้นแทนที่จะทำการพยากรณ์โดยอาศัยเพียงค่าของตัวแปรตามที่ได้   เราจะสร้าง Model โดยอาศัย Algorithm  ของความน่าจะเป็นของการเกิดเหตุการณ์  เราเรียก Algorithm นี้ว่า Log Odds หรือ Logic Transtromation

                อัตราส่วนความน่าจะเป็น  :  ความน่าจะเป็นที่จะเกิดเหตุการณ์

                                                                ความน่าจะเป็นที่จะไม่เกิดเหตุการณ์

                11. Discriminant Analysis :  เป็นวิธีการทางคณิตศาสตร์ที่เก่าแก่วิธีหนึ่งซึ่งใช้ในการจำแนก  และวิเคราะห์  วิธีนี้ได้รับการเผยแพร่ครั้งแรกในปี 1936  โดย R.A Fisher   เพื่อแยกต้น  Iris  ออกเป็น 3 พันธุ์  วิธีการนี้ทำให้ค้นพบต้นไม้ประเภทอื่น ๆ อีกมาก   ผลลัพธ์ที่ได้จากแบบจำลองชนิดนี้ง่ายต่อการทำความเข้าใจ  เพราะผู้ใช้งานทั่ว ๆ ไปก็สามารถพิจาณาได้ว่าผลลัพธ์จะอยู่ทางด้านใดของเส้นทางในแบบจำลอง    การเรียนรู้สามารถทำได้ง่าย  วิธีการที่ใช้มีความไวต่อรูปแบบของข้อมูล  วิธีนี้ถูกนำมาใช้มาในทางการแพทย์  สังคมวิทยา  และชีววิทยา  แต่ไม่เป็นที่นิยมในการทำ Data Mining 

                12.  Generalized Additive Models (GAM) :   พัฒนามาจาก Linear Regression และ Logistic Regression  มีการตั้งสมมติฐานว่า Model สามารถเขียนออกมาได้ในรูปของผลรวมของ Possibly Non-Linear Function    GAM สามารถใช้ได้กับปัญหาแบบ Regression และ Classification

                GAM จะใช้ความสามารถของคอมพิวเตอร์ในการค้นหารูปแบบอง Function ที่ให้ Curve ที่เหมาะสม ทำการรวมค่าความสัมพันธ์ต่าง ๆ เข้าด้วยกัน  แทนที่จะใช้ Parameter จำนวนมาก เหมือนที่ Neural Network ใช้   แต่ GAM จะก้าวไปเหนือกว่านั้นอีกขั้นหนึ่ง    GAM  จะประเมินค่าของ Output  ในแต่ละ Input  เช่นเดียวกับ Neural Network      GAM จะสร้างเส้นโค้งขึ้นมาอย่างอัตโนมัติ  โดยอาศัยข้อมูลที่มีอยู่

                13.  Multivariate Adaptive Regression Splits (MARS) :   ถูกคิดค้นเมื่อกลางทศวรรษที่ 80   โดย  Jerome H. Friedman  หนึ่งในผู้คิดค้น CART  MARS  สามารถที่จะค้นหาและแสดงรายการตัวแปรอิสระที่มีความสำคัญสูงสุดเช่นเดียวกับปฏิสัมพันธ์ระหว่างตัวแปรอิสระ  และ MARS สามารถ Plot จุดแสดงความเป็นอิสระของแต่ละตัวแปรอิสระ  ออกมาได้  ผลลัพธ์ที่ได้ก็คือ  Non-Linear Step-wise regression tools

ความสามารถที่หลากหลายของ Data Mining

 

รูปที่ 5.5  Data Mining: Confluence of Multiple Disciplines

5.11  การประยุกต์ใช้ Data Mining กับงานด้านธุรกิจ

                สามารถนำเทคนิคของ Data Mining ไปวิเคราะห์ข้อมูลในฐานข้อมูล  เพื่อนำข้อมูลที่ได้ไปใช้ประโยชน์ในงานด้านต่าง ๆ ดังต่อไปนี้

1.  งานด้านการตลาด (Marketing)   เช่น การทำ Promotion ส่งเสริมการขาย

2.  งานด้านธนาคารและการเงิน (Banking / Financial Analysis)    เช่น ใช้ในการวิเคราะห์การให้สินเชื่อแก่

ลูกค้า   การจัดทำ Package ในการกู้ยืม   การทำนายอัตราการจ่ายเงินกู้  การแบ่งกลุ่มลูกค้าเพื่อหาเป้าหมายทางการตลาด (ลูกค้าชั้นดี)

3.  งานด้านการขายปลีก  (Retailing and sales)  เป็นงานที่มีการเก็บข้อมูลจำนวนมาก  ประยุกต์ใช้เพื่อหา

กลยุทธ์  ทำให้เกิดการได้เปรียบคู่แข่งทางการค้าในการหาลักษณะการซื้อของลูกค้า  ความสัมพันธ์ของการซื้อกับช่วงเวลา  ความสัมพันธ์ระหว่างตัวสินค้า  และการวิเคราะห์ประสิทธิภาพของการโฆษณา  เป็นต้น  ช่วยให้สามารถหาวิธีการตอบสนองความต้องการของลูกค้าได้มากที่สุด  และอาจหมายถึงส่วนแบ่งทางการตลาดที่เพิ่มขึ้นนั่นเอง

4.  งานด้านการวางแผนในการผลิตสินค้า (Manufacturing and production)  เช่น   การพยาการณ์ยอด

จำนวนการผลิตสินค้าเพื่อให้ได้กำไรมากสุด

5.  งานด้านนายหน้าและความปลอดภัยด้านการค้า (Brokerage and securities trading)   เช่น  การพัฒนา

วิธีการเพื่อสร้างความเชื่อมั่นในเรื่องความปลอดภัยของข้อมูล  ในขณะที่มีการพัฒนาวิธีการเข้าถึงข้อมูล  การและ Mining ให้สะดวกต่อการใช้งานมากขึ้น

6.  งานด้านชีวการแพทย์และวิเคราะห์ DNA (Biomedical an DNA Analysis)   เช่น  การวิเคราะห์รูปแบบ

การจัดเรียงตัวของหน่วยพันธุกรรม  เพื่อหาสาเหตุความผิดปกติที่ทำให้เกิดโรค  รวมไปถึงด้านการวินิจฉัยโรค  การป้องกัน  และการรักษา

นอกจากที่กล่าวมา  ยังนำไปประยุกใช้กับธุรกิจทางด้านประกันภัย (Insurance), Computer  hardware

และ software, หน่วยงานรัฐบาลและกระทรวงกลาโหม (Government and defense),  สายการบิน (Airlines), งานด้านสุขภาพ (Health care), งานด้านการข่าว  (Broadcasting)  และงานด้านกฎหมาย (Law enforcement)  ได้อีกด้วย

5.12  Intelligent Data Mining

ใช้   Intelligent  Data  Mining  เพื่อการค้นพบข้อมูลและข่าวสารภายในคลังข้อมูล (Data  warehouses)   ที่ซึ่งการสอบถามและการออกรายงาน (Reports) นั้นจะไม่แสดงผลออกมา  เช่น   การค้นหา Patterns ในข้อมูลและลงความเห็นตามกฎ   ที่เราได้กำหนดไว้   การใช้  Patterns  และ  Rules ในการแนะแนวทางการตัดสินใจและ

การทำนาย   ซึ่งข้อมูลที่จัดเป็น  Intelligent Data Mining  ได้แก่ ข้อมูลข่าวสาร 5 ประเภท  ต่อไปนี้   

1) ข้อมูลความสัมพันธ์ (association)

2) ข้อมูลการจัดลำดับ (sequences)

3) ข้อมูลการแยกประเภทหรือจัดหมวดหมู่ (classifications)

4)  ข้อมูลการแบ่งกลุ่มหรือจัดกลุ่ม (clusters)

5)  ข้อมูลการทำนายหรือพยากรณ์ (forecasting)

 

รูปที่ 5.6 ขั้นตอนการเก็บรวบรวมข้อมูลเพื่อประมวลผลใน Data Mining

5.13  เครื่องมือหลักที่ใช้ใน   Intelligent Data Mining

                สามารถใช้เครื่องมือหรือเทคนิคต่อไปนี้ในการขุดค้นข้อมูลใน Intelligent  data  mining

1. Case-based Reasoning

2. Neural Computing

3. Intelligent Agents

4. เครื่องมือชนิดอื่น ๆ (Other Tools) ได้แก่

– Decision  trees

– Rule  induction

– Data  visualization

5.14  ตัวอย่างการวิเคราะห์ของ Data Mining

                ขอแนะนำตัวอย่างการวิเคราะห์ข้อมูลภายใน Data Mining  ด้วยเทคนิคดังต่อไปนี้

5.14.1  Association Rule  ใช้ในการหากฎความสัมพันธ์ซึ่งกันและกัน  ของสินค้า 2 ประเภท   โดยคำนวณหาค่าสนับสนุน (support)   และค่าความน่าเชื่อมั่น (Confidence)  ดังนี้

สูตร : การคำนวณหาค่า Support

Support (ค่าสนับสนุน)         

=  A è B            

= P(A Ù B)

A Intersec  B

สูตร : การคำนวณหาค่า Confidence

Confidence (ค่าความน่าเชื่อถือ)          

 = P(A/B)                

= P(A Ù B)

 = P(A)

ใส่ความเห็น

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out / เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out / เปลี่ยนแปลง )

Google+ photo

You are commenting using your Google+ account. Log Out / เปลี่ยนแปลง )

Connecting to %s