https://sites.google.com/a/bu.ac.th/compcenter/news-information/


การทําเหมืองข้อมูล (Data Mining)

       

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

 
การทําเหมืองข้อมูล (Data Mining)

             การทําเหมืองข้อมูล (Data Mining) คือกระบวนการที่กระทํากับข้อมูลจํานวนมากเพื่อค้นหารูปแบบและความสัมพันธ์ ที่ซ่อนอยู่ในชุดข้อมูลนั้น ในปัจจุบันการทําเหมืองข้อมูลได้ถูกนําไปประยุกต์ใช้ในงานหลายประเภท ทั้งในด้านธุรกิจที่ช่วยในการตัดสินใจของผู้บริหาร ในด้านวิทยาศาสตร์และการแพทย์รวมทั้งในด้านเศรษฐกิจและสังคม

             การทําเหมืองข้อมูลเปรียบเสมือนวิวัฒนาการหนึ่งในการจัดเก็บและตีความหมาย ข้อมูล จากเดิมที่มีการจัดเก็บข้อมูลอย่างง่ายๆ มาสู่การจัดเก็บในรูปฐานข้อมูลที่สามารถดึงข้อมูลสารสนเทศมาใช้จนถึงการทํา เหมืองข้อมูลที่สามารถค้นพบความรู้ที่ซ่อนอยู่ในข้อมูล

 
วิวัฒนาการของการทำเหมืองข้อมูล

          -     ปี 1960 Data Collection คือ การนําข้อมูลมาจัดเก็บอย่างเหมาะสมในอุปกรณ์ที่น่าเชื่อถือและป้องกันการสูญ หายได้เป็นอย่างดี

          -     ปี 1980 Data Access คือ การนําข้อมูลที่จัดเก็บมาสร้างความสัมพันธ์ต่อกันในข้อมูลเพื่อประโยชน์ใน การนําไปวิเคราะห์ และการตัดสินใจอย่างมีคุณภาพ

          -     ปี 1990 Data Warehouse & Decision Support คือ การรวบรวมข้อมูลมาจัดเก็บลงไปในฐานข้อมูลขนาดใหญ่โดยครอบคลุมทุกด้านของ องค์กร เพื่อช่วยสนับสนุนการตัดสินใจ

          -     ปี 2000 Data Mining คือ การนําข้อมูลจากฐานข้อมูลมาวิเคราะห์และประมวลผล โดยการสร้างแบบจําลองและความสัมพันธ์ทางสถิติ

  

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

             ประกอบด้วยขั้นตอนการทำงานย่อยที่จะเปลี่ยนข้อมูลดิบให้กลายเป็นความรู้ ประกอบด้วยขั้นตอนดังนี้

           -    Data Cleaning เป็นขั้นตอนสำหรับการคัดข้อมูลที่ไม่เกี่ยวข้องออกไป

           -    Data Integration เป็นขั้นตอนการรวมข้อมูลที่มีหลายแหล่งให้เป็นข้อมูลชุดเดียวกัน

           -    Data Selection เป็นขั้นตอนการดึงข้อมูลสำหรับการวิเคราะห์จากแหล่งที่บันทึกไว้

           -    Data Transformation เป็นขั้นตอนการแปลงข้อมูลให้เหมาะสมสำหรับการใช้งาน

           -    Data Mining เป็นขั้นตอนการค้นหารูปแบบที่เป็นประโยชน์จากข้อมูลที่มีอยู่

           -    Pattern Evaluation เป็นขั้นตอนการประเมินรูปแบบที่ได้จากการทำเหมืองข้อมูล

           -    Knowledge Representation เป็นขั้นตอนการนำเสนอความรู้ที่ค้นพบ โดยใช้เทคนิคในการนำเสนอเพื่อให้เข้าใจ

  

ส่วนประกอบของระบบการทำเหมืองข้อมูล

               สถาปัตยกรรมของระบบการทำเหมืองข้อมูล ประกอบด้วยส่วนประกอบที่สำคัญดังภาพที่ 1

 

ภาพที่ 1 สถาปัตยกรรมระบบการทำเหมืองข้อมูล

 

           -    Database, Data Warehouse, World Wide Web และ Other Info Repositories เป็นแหล่งข้อมูลสำหรับการทำเหมืองข้อมูล

           -    Database หรือ Data Warehouse Server ทำหน้าที่นำเข้าข้อมูลตามคำขอของผู้ใช้

           -    Knowledge Base ได้แก่ ความรู้เฉพาะด้านในงานที่ทำจะเป็นประโยชน์ต่อการสืบค้น หรือประเมินความน่าสนใจของรูปแบบผลลัพธ์ที่ได้

           -    Data Mining Engine เป็นส่วนประกอบหลักประกอบด้วยโมดูลที่รับผิดชอบงานทำเหมืองข้อมูลประเภท ต่างๆ ได้แก่ การหากฎความสัมพันธ์ การจำแนกประเภท การจัดกลุ่ม

           -    Pattern Evaluation Module ทำงานร่วมกับ Data Mining Engine โดยใช้มาตรวัดความน่าสนใจในการกลั่นกรองรูปแบบผลลัทธ์ที่ได้ เพื่อให้การค้นหามุ่งเน้นเฉพาะรูปแบบที่น่าสนใจ

           -    Graphic User Interface ส่วนติดต่อประสานระหว่างผู้ใช้กับระบบการทำเหมืองข้อมูล ช่วยให้ผู้ใช้สามารถระบุงานทำเหมืองข้อมูลที่ต้องการทำ ดูข้อมูลหรือโครงสร้างการจัดเก็บข้อมูล ประเมินผลลัพธ์ที่ได้

  

ประเภทข้อมูลที่ใช้ทำเหมืองข้อมูล

           -    Relational Database เป็นฐานข้อมูลที่จัดเก็บอยู่ในรูปแบบของตาราง โดยในแต่ละตารางจะประกอบไปด้วยแถวและคอลัมน์ ความสัมพันธ์ของข้อมูลทั้งหมดสามารถแสดงได้โดย Entity Relationship Model

           -    Data Warehouses เป็นการเก็บรวบรวมข้อมูลจากหลายแหล่งมาเก็บไว้ในรูปแบบเดียวกันและรวบรวมไว้ในที่ๆ เดียวกัน

           -    Transactional Database ประกอบด้วยข้อมูลที่แต่ละทรานเเซกชันแทนด้วยเหตุการณ์ในขณะใดขณะหนึ่ง เช่น ใบเสร็จรับเงิน จะเก็บข้อมูลในรูปชื่อลูกค้าและรายการสินค้าที่ลูกค้ารายซื้อ

           -    Advanced Database เป็นฐานข้อมูลที่จัดเก็บในรูปแบบอื่นๆ เช่น ข้อมูลแบบ Object-Oriented ข้อมูลที่เป็น Text File ข้อมูลมัลติมีเดีย ข้อมูลในรูปของ Web

    

การทำเหมืองข้อมูลเว็บ (Web Mining)

          การทํา เหมืองข้อมูลเว็บคือการใช้เทคนิคการทําเหมืองข้อมูลเพื่อค้นหาและสกัดข้อมูล และสารสนเทศจากเอกสารเว็บและบริการบนเว็บโดยอัตโนมัติ เพื่อนําความรู้ที่ได้มาแก้ปัญหาที่ต้องการทั้งทางตรงและทางอ้อม นอกจากนี้ยังได้แบ่งประเภทของการทําเหมืองข้อมูลเว็บโดยพิจารณาจากข้อมูลที่ นํามาวิเคราะห์ออกเป็น 3 ประเภท คือ Web Content Mining, Web Structure Mining และ Web Usage Mining

          Web Content Mining เป็นการค้นหาข้อมูลที่มีประโยชน์จากข้อมูลที่อยู่ภายในเว็บ เช่น ข้อความ รูปภาพ เป็นต้น โดย Web Content Mining สามารถแบ่งออกเป็น 2 ประเภทตามมุมมองคือ มุมมองทางด้านการสืบค้นสารนิเทศ (Information Retrieval) และมุมมองทางด้านฐานข้อมูล (Database) สําหรับเป้าหมายของ Web Content Mining จากมุมมองของการสืบค้นสารนิเทศคือการทําเหมืองข้อมูลเว็บเพื่อปรับปรุงการหา ข้อมูลหรือกรองข้อมูลให้ผู้ใช้โดยพิจารณาจากข้อมูลที่ผู้ใช้อ้างอิงหรือร้อง ขอ ในขณะที่เป้าหมายของ Web Content Mining ในมุมมองของฐานข้อมูลส่วนใหญ่พยายามจําลองข้อมูลบนเว็บและรวมข้อมูลนั้น เพื่อให้การสอบถามทํางานดีขึ้นมากกว่าการใช้คําหลักเป็นตัวค้นหาเพียงอย่าง เดียว

          Web Structure Mining เป็นวิธีการที่พยายามค้นหารูปแบบโครงสร้างการเชื่อมโยงที่สําคัญและซ่อนอยู่ ในเว็บ ซึ่งรูปแบบนี้จะขึ้นอยู่กับรูปแบบการเชื่อมโยงเอกสารภายในเว็บ โดยนํารูปแบบที่ได้มาใช้เพื่อจัดกลุ่มเว็บเพจและใช้สร้างข้อมูลสารสนเทศที่ เป็นประโยชน์ เช่น นํามาใช้ในการปรับโครงสร้างของเว็บให้สามารถให้บริการผู้ใช้ได้อย่างรวดเร็ว

           Web Usage Mining เป็นวิธีการที่พยายามค้นหาความหมายของข้อมูลที่สร้างจากช่วงการทํางานหนึ่ง ของผู้ใช้หรือสร้างจากพฤติกรรมของผู้ใช้เรียกอีกชื่อหนึ่งว่า Web Log Mining โดยในขณะที่ Web Content Mining และ Web Structure Mining ใช้ประโยชน์จากข้อมูลจริง หรือข้อมูลพื้นฐานบนเว็บแต่ Web Usage Mining ทําการค้นหาความรู้จากข้อมูลการติดต่อสื่อสารระหว่างกันของผู้ใช้ที่ติดต่อ กับเว็บ โดย Web Usage Mining ทําการรวบรวมข้อมูลจากบันทึกในการดําเนินการต่างๆ เช่น บันทึกการใช้งานของ Proxy (Proxy Server Log) ข้อมูลการลงทะเบียน (Registration Data) หรือข้อมูลอื่นอันเป็นผลจากการทํางานร่วมกันมาใช้วิเคราะห์ ดังนั้น Web Usage Mining จึงเป็นวิธีการทํางานที่เน้นใช้เทคนิคที่สามารถทํานายพฤติกรรมของผู้ใช้ใน ขณะที่ผู้ใช้ทํางานกับเว็บ กระบวนการทํางานของ Web Usage Mining สามารถแบ่งออกเป็น 2 วิธีคือ

           1. ทําการจับคู่ข้อมูลการใช้งานของเครื่องให้บริการเว็บให้อยู่ในรูปของตาราง ความสัมพันธ์ ก่อนที่นําข้อมูลนี้มาปรับใช้กับเทคนิคการทําเหมืองข้อมูลการใช้เว็บ  

           2. ใช้ประโยชน์จากข้อมูลในบันทึกการใช้งานโดยตรงซึ่งจะใช้เทคนิคการเตรียม ข้อมูล (Preprocessing) เพื่อเตรียมข้อมูลก่อนหาความสัมพันธ์ (Pattern Discovery) และวิเคราะห์รูปแบบ (Pattern Analysis)

  

เทคนิคการทำเหมืองข้อมูลการใช้เว็บไซต์

        เทคนิคสำหรับการทําเหมืองข้อมูลการใช้เว็บไซต์ดังนี้

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

        -    Association Rule เป็นการค้นหากฎความสัมพันธ์ของข้อมูล โดยค้นหาความสัมพันธ์ของข้อมูลทั้งสองชุดหรือมากกว่าสองชุดขึ้นไปไว้ด้วยกัน ความสําคัญของกฎทําการวัดโดยใช้ข้อมูลสองตัวด้วยกันคือค่าสนับสนุน (Support) ซึ่งเป็นเปอร์เซ็นต์ของการดําเนินการที่กฎสามารถนําไปใช้ หรือเป็นเปอร์เซ็นต์ของการดําเนินการที่กฎที่ใช้มีความถูกต้อง และข้อมูลตัวที่สองที่นํามาใช้วัดคือค่าความมั่นใจ (Confidence) ซึ่งเป็นจํานวนของกรณีที่กฎถูกต้องโดยสัมพันธ์กับจํานวนของกรณีที่กฎสามารถ นําไปใช้ได้ ในการหากฎความสัมพันธ์นั้นจะมีขั้นตอนวิธีการหาหลายวิธีด้วยกัน แต่ขั้นตอนวิธีที่เป็นที่รู้จักและใช้อย่างแพร่หลายคือ อัลกอริทึม Apriori

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

        -    Classification เป็นการจัดแบ่งประเภทของข้อมูล โดยหาชุดต้นแบบหรือชุดของการทํางานที่อธิบายและแบ่งประเภทข้อมูล วัตถุประสงค์เพื่อให้สามารถใช้เป็นต้นแบบทํานายประเภทของวัตถุหรือข้อมูลที่ ไม่มีการระบุประเภทหรือชนิดของข้อมูล ซึ่งต้นแบบสร้างจากการวิเคราะห์ชุดของข้อมูลฝึกสอน (Training Data) โดยอาจจะเป็นกลุ่มข้อมูลที่มีการระบุประเภทหรือกลุ่มเรียบร้อยแล้ว รูปแบบของต้นแบบแสดงได้หลายแบบเช่น Classification Rules, Decision Trees หรือ Neural Networks เป็นต้น

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

        -    Dependency Modeling เป็นแบบจำลองการพึ่งพา เป็นการค้นพบรูปแบบอื่นๆ ที่มีประโยชน์ในการทำเหมืองข้อมูลเว็บ เป้าหมายคือการพัฒนาต้นแบบที่สามารถทำได้ของตัวแทนที่สำคัญของการพึ่งพาท่าม กลางตัวแปรต่างๆ ในโดเมนเว็บ เช่น อาจจะใช้วิธีการสร้างแบบจำลองสถานที่แตกต่างกัน ให้ผู้เยี่ยมชมได้เห็นในขณะที่เลือกซื้อซื้อสินค้าทางออนไลน์ มีหลายเทคนิคการเรียนรู้ที่เป็นไปได้ สามารถถูกใช้เป็นแบบของการค้นหาพฤติกรรมของผู้ใช้ เช่น ตัวแบบฮิดเดนมาร์คอฟ (Hidden Markov Model) และแนวคิดข่ายงานความเชื่อเบย์ (Bayesian Belief Network)

 

ขั้นตอนการทำเหมืองข้อมูลการใช้เว็บไซต์

         กระบวนการทําเหมืองข้อมูลการใช้เว็บไซต์ประกอบด้วยกระบวนการ 3 ขั้นตอนด้วยกันคือ

         -    การเตรียมข้อมูล (Preprocessing) เป็นขั้นตอนการแปลงข้อมูลเว็บให้อยู่ในรูปแบบที่เหมาะสมสําหรับการค้นหาความ สัมพันธ์ เช่น Data Cleaning, Data Fltering

         -    การค้นหารูปแบบ (Pattern Discovery) เป็นขั้นตอนที่นําเทคนิคการทําเหมืองข้อมูล เช่น Association Rule Discovery, Sequential Pattern Discovery เพื่อค้นหาความสัมพันธ์หรือรูปแบบจากข้อมูลเว็บที่ผ่านขั้นตอนการเตรียม ข้อมูลแล้ว

         -    การวิเคราะห์รูปแบบ (Pattern Analysis) เป็นรูปแบบการนําผลลัพธ์จากการค้นหามาทำการวิเคราะห์เพื่อช่วยในการตัดสินใจ หรือการวางแผนทางธุรกิจ

 

ภาพที่ 2 ขั้นตอนการทํา Web Usage Mining (Srivastava, 2000)

 

        ข้อมูลที่ใช้ในการทำเหมืองข้อมูลเว็บไซต์ สามารถนำมาจาก 3 แหล่งด้วยกันดังนี้

         -   การรวบรวมข้อมูลจากบันทึกการเข้าใช้งานเครื่องให้บริการเว็บ (Server-Side)

         -   การรวบรวมข้อมูลจากบันทึกการเข้าใช้งานเครื่องใช้บริการเว็บ (Client-Side)

         -   การรวบรวมข้อมูลจากบันทึกของเครื่องให้บริการการเป็นตัวแทนเชื่อมต่อ (Proxy Server)

         การประยุกต์ใช้ Data Mining จะมีได้หลากหลายแต่สามารถจัดกลุ่มกว้างๆ ได้เป็นสองกลุ่ม คือกลุ่มที่ใช้เพื่อการทำนายและกลุ่มที่ใช้เพื่อการอธิบาย

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

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

 

 

เรียบเรียงโดย อ.อดุลย์ ยิ้มงาม
หัวหน้าแผนกเครือข่ายสารสนเทศรังสิต
ศูนย์คอมพิวเตอร์

 


References

Bartolini, G. (2001).  Web usage mining and discovery of association rules from http servers logs.  Melbourne: Monash University.

Cooley, R., Tan, P. & Srivastava, J.  (1999).  "Websift: The web site information filter system" Internet.  สืบค้นวันที่ 13 สิงหาคม 
      2551 จาก http://citeseer.ist.psu.edu/cooley99websift.html.

Han, J. & Kamber, M. (2006).  Data mining concepts and techniques (2nd ed.).  United States of America: Morgan Kaufman
      Publishers.

Kosala, R. & Blockeel, H. (2000).  Web mining research: A survey.  ACM SGKDD, 2(1), 1-15.

Srivastava, J., Cooley, R., Deshpande, M. & Tan, P.  (2000).  Web usage miming: Discovery and application of usage patterns from
      web data.  SIGKDD Exploration, 1(2), 12-23.