The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.

“การทำเหมืองข้อมูลด้านการประมงและเพาะเลี้ยงสัตว์น้ำด้วย RapidMiner” เขียนโดย รศ.ดร.วราห์ เทพาหุดี อาจารย์ประจำสังกัดภาควิชาเพาะเลี้ยงสัตว์น้ำ คณะประมง มหาวิทยาลัยเกษตรศาสตร์

Discover the best professional documents and content resources in AnyFlip Document Base.
Search
Published by Fish_KU, 2022-10-26 08:44:08

การทำเหมืองข้อมูลด้านการประมงและเพาะเลี้ยงสัตว์น้ำด้วย RapidMiner

“การทำเหมืองข้อมูลด้านการประมงและเพาะเลี้ยงสัตว์น้ำด้วย RapidMiner” เขียนโดย รศ.ดร.วราห์ เทพาหุดี อาจารย์ประจำสังกัดภาควิชาเพาะเลี้ยงสัตว์น้ำ คณะประมง มหาวิทยาลัยเกษตรศาสตร์

การทาเหมอื งข้อมลู ด้านการประมงและ
เพาะเลี้ยงสัตว์นา้ ด้วย RapidMiner

Fisheries and Aquaculture Data Mining
with RapidMiner

รองศาสตราจารย์ ดร.วราห์ เทพาหุดี
ภาควิชาเพาะเล้ียงสัตว์นา้ คณะประมง

มหาวิทยาลัยเกษตรศาสตร์

คานา

โ ล ก ข อ ง เ ท ค โ น โ ล ยีเ ป ลี่ย น แ ป ล ง ไ ป อ ย่า ง ร ว ด เร็ว ม า ก
และมีการนามาประยุกต์ใช้เพื่อประโยชน์ต่อมนุษยชาติเพิ่มขึ้น
ทั้ง นี้จ า ก ผ ล ข อ ง ก า ร พัฒ น า เ ท ค โ น โ ล ยีจ ะ เ กิด ข้อ ม ูล เ พิ ่ม ขึ้น
อย่างรวดเร็วและมีปริมาณมาก หรือที่เรียกว่าข้อมูลขนาด
ใหญ่หรือข้อมูลมหัต (Big Data) ถึงแม้ว่ายังไม่ได้มีการกาหนด
ว่าข้อมูลขนาดเท่าไหร่จึงจะถือว่าเป็น Big Data ซึ่งอาจจะมี
ข้อ มูล ม า ก ก ว่า 1 เท ร า ไบ ต์ (Terabyte: TB = 1,000
กิกะไบต์, Gigabyte: GB) ขึ้นไปก็ได้ ทั้งนี้หากสามารถนา
ข้อ มูล เห ล่านั้น ม าทาก ารวิเค ราะ ห์อ ย่างถูก ต้อ งจ ะ เกิด
ประโยชน์อย่างมากในการทางานนั้น ๆ หรือจากคาพูดที่ว่า
“Data is the new oil” จะเป็นการเน้นความสาคัญของ
ข้อมูลเป็นอย่างมาก และในปัจจุบันมีการพัฒนาโปรแกรม
ขึ้น ม าเป็น จาน ว น ม าก เพื่อใช้งาน ด้าน นี้ เช่น Microsoft
Excel, IBM SPSS Modeler, SAS Enterprise Miner, R
program, Weka, Python และ RapidMiner เป็นต้น โดย
ในแต่ละโปรแกรมมีข้อดีและข้อด้อยที่แตกต่างกัน แต่ทั้งน้ี
ปัญ ห า ส ่ว น ใ ห ญ ่ข อ ง ก า ร ทา ด้า น ก า ร วิเ ค ร า ะ ห์ข้อ มูล คือ ไ ม่มี
ข้อมูล ข้อมูลถูกจัดเก็บไว้ไม่ใช่ข้อมูลที่ถูกต้องและข้อมูลไม่ได้
ถูกจัดเก็บในรูปแบบดิจิทัล เป็นต้น ดังนั้นการวิเคราะห์ข้อมูล

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

ดัง นั ้น คู ่ม ือ เ ล ่ม นี ้จ ึง ถ ูก เ ข ีย น ขึ ้น โ ด ย ม ีวัต ถ ุป ร ะ ส ง ค์
เ พื ่อ ใ ห ้ผู ้อ่า น ไ ด้ม ีค ว า ม เ ข ้า ใ จ แ ล ะ ฝ ึก ก า ร ใ ช ้ง า น โ ป ร แ ก ร ม
RapidMiner สาหรับการวิเคราะห์ข้อมูลโดยใช้เทคนิคการ
เรีย น รู้ข อ ง เค รื่อ ง (Machine Learning) เพื ่อ ป ร ะ โย ช น์
ทางด้านการประมง การเพาะเลี้ยงสัตว์น้าและการทาธุรกิจ
อื่นๆ ต่อไป

วราห์ เทพาหุดี
ตุลาคม 2565

บทที่ 1 บทนา สารบัญ
บทท่ี 2 การทาเหมืองข้อมูล
บทท่ี 3 การใช้งานโปรแกรม RapidMiner 1
บทท่ี 4 การนาเข้าและการจดั เตรยี มข้อมลู 12
บทท่ี 5 การวิเคราะห์ข้อมูลการเรียนรู้แบบไม่มี 46
59
ผสู้ อนด้วยโปรแกรม RapidMiner
บทท่ี 6 การวิเคราะห์ข้อมูลการเรียนรู้แบบมีผู้สอน 82

ดว้ ยโปรแกรม RapidMiner 87
บทท่ี 7 การใช้เทคนิคอื่น ๆ ในการวิเคราะห์ข้อมูล
104
ด้วยโปรแกรม RapidMiner 117
บทท่ี 8 ตัวอย่างการนาแบบจาลองไปใช้ประโยชน์ 128
เอกสารอ้างอิง

1

บทที่ 1
บทนา

จากวิวัฒนาการของโลกปัจจุบันมีเทคโนโลยีสมัยใหม่ถูก
พัฒนาข้ึนมาอย่างมากมายและรวดเร็ว ซ่ึงทุกๆกิจกรรมหรือ
อุตสาหกรรมจาเป็นต้องมีการปรบั ตัวและตอบสนองต่อเทคโนโลยีท่ี
เปล่ียนแปลงเหล่าน้ันหรืออาจเรียกว่า Digital Transformation
ซ่ึงหมายถึงการเปล่ียนแปลงกิจกรรมหรือกระบวนการโดยใช้
เทคโนโลยีสมัยใหม่เข้ามามีส่วนร่วมหรือช่วยในการทางาน เพ่ือให้
ทันต่อการเปล่ียนแปลงอย่างรวดเร็วในปัจจบุ ัน ทั้งน้ีส่วนหน่ึงของ
การเปลี่ยนแปลงคือการเก็บข้อมูลและวิเคราะห์ข้อมูล ซ่ึงถ้า
สามารถเก็บข้อมูลได้มากหรือเรียกว่าข้อมูลขนาดใหญ่ (Big Data)
ก็สามารถนาเอาเทคโนโลยีสมัยใหม่ เช่น การทาเหมืองข้อมูล
(Data Mining) การเรียนรู้ของเครื่อง (Machine Learning, ML)
หรือการเรียนรู้เชิงลึก (Deep Learning, DL) นามาวิเคราะห์ข้อมูล
เพื่อใช้ประโยชน์ในแต่ละด้านและสามารถนาไปสู่การพัฒนาระบบ
ปญั ญาประดิษฐ์ (Artificial Intelligence, AI) ตอ่ ไป

2

ขอ้ มูลขนาดใหญ่ (Big Data)
Big Data คือ ข้อมูลขนาดใหญ่หรือมีจานวนมากในทุก

รปู แบบ ซ่ึงอาจเป็นข้อมูลท่ีมีโครงสร้างชัดเจน (Structured Data)
เช่น ข้อมูลที่เก็บอยู่ในตารางข้อมูลต่างๆ หรืออาจเป็นข้อมูลก่ึงมี
โครงสร้าง (Semi-Structured Data) เช่น ล็อกไฟล์ (Log files)
หรือแม้กระทั่งข้อมูลท่ีไม่มีโครงสร้าง (Unstructured Data) เช่น
ข้อมูลผ่านสังคมเครือข่าย (Social Network) เช่น Facebook,
twitter หรือ ไฟล์จาพวกมีเดีย เป็นต้น ซ่ึงอาจจะเป็นข้อมูลภายใน
และภายนอกท่ีมาจากการติดต่อระหว่างกัน หรือจากช่องทางการ
ติดต่อกับลูกค้า แต่ข้อมูลท้ังหมดนี้เป็นเพียงข้อมูลดิบท่ีต้องรอการ
นาปรับปรุงให้อยู่ในรูปท่ีสามารถทาการวิเคราะห์ได้ จากนั้นจึง
นามาประมวลและวิเคราะห์เพ่ือนาผลที่ได้มาใช้ประโยชน์ต่อไป
ท้ังนี้ด้วยเทคโนโลยีทีทันสมัยในปัจจุบัน เช่น การใช้ระบบเซนเซอร์
ระบบการจัดเก็บข้อมูลที่ดีและมีแหล่งท่ีสามารถจัดเก็บข้อมูลได้
อย่างมหาศาล จึงทาให้เกิดระบบ Big data ข้ึนได้ ซ่ึง Big Data มี
คุณลกั ษณะสาคญั อยู่ 4 อย่าง คือ

1. ข้อมูลมีปริมาณหรือจานวนมากมหาศาล (Volume)
หมายถึง ข้อมูลนั้นมันต้องมีขนาดใหญ่มาก ซึ่งไม่
สามารถประมวลผลปริมาณของข้อมูลด้วยระบบ
ฐาน ข้อ มู ลได้ จาเป็ น ต้ องใช้ค ลังข้อมู ล (Data

3

Warehouse) และซอฟต์แวร์เพื่อทางานประสานกัน
ในการบริหารจัดการขอ้ มลู
2. ข้อมูลมีการเปลี่ยนแปลงอย่างรวดเร็ว (Velocity)
หมายถึง ข้อมูลดังกล่าวต้องมีอัตราการเพิ่มข้ึนอย่าง
รวดเร็วตลอดเวลา เช่น ขอ้ มูลจากภาพถ่ายโทรศัพท์ที่
ถูกอับโหลดขึ้น ข้อมูลการพิมพ์ การสนทนา ข้อมูล
วดิ ีโอและขอ้ มูลการสัง่ ซือ้ สนิ้ ค้า เป็นตน้
3. ข้อมูลมีความหลากหลาย (Variety) หมายถึง รูปแบบ
ข้อมูลต้องมีความหลากหลาย อาจจะเป็นข้อมูลท่ีมี
โครงสร้าง ไม่มโี ครงสร้าง และก่ึงมโี ครงสร้าง
4. ข้อมูลท่ีมีความไม่ชัดเจน (Veracity) ไม่สามารถ
นามาใช้เป็นข้อมูลท่ีสมบูรณ์ เพ่ือการประกอบการ
พจิ ารณาได้
(ศูนย์เทคโนโลยีสารสนเทศและการส่ือสาร สานักงาน
ปลัดกระทรวงการอุดมศึกษา วิทยาศาสตร์ วิจัยและ
นวตั กรรม, 2564)
การทาเหมืองข้อมูล คือ การนาข้อมูลขนาดใหญ่ (Big
data) มาวิเคราะห์และประมวลผล โดยการสร้างแบบจาลองและ
ความสัมพันธ์ทางสถิติ เพื่อหาความสัมพันธ์เชิงลึกของข้อมูลที่ซ่อน
อยู่ภายใน และได้องค์ความรู้ใหม่ท่ีสามารถนาไปใช้ประกอบการ

4

ตัดสินใจในด้านต่างๆ เช่น ด้านธุรกิจการเงิน ด้านการตลาด ด้าน
การลงทุน ด้านการแพทย์หรือด้านการเกษตร เป็นต้น (Che และ
คณะ, 2013) ซึ่งแนวทางการการวิเคราะห์ขอ้ มูลขนาดใหญ่ที่นิยม
ใ ช้ คื อ Cross-Industry Standard Process for Data mining
(CRISP-DM) โดยมขี ั้นตอนการทางาน 6 ข้ันตอน ดังน้ี

1 . Business Understanding คื อ ก า ร ท า ค ว า ม เข้ า
ใจความต้องการและปญั หาของธุรกิจ เพื่อจะได้วเิ คราะห์ข้อมูลและ
นาผลที่ไดม้ าใชใ้ ห้ตรงกบั ความตอ้ งการ

2. Data Understanding คือการทาความเข้าใจข้อมูลที่มี
อยู่ว่ามีความน่าเชื่อถือและเพียงพอต่อการนาไปวิเคราะห์หรือไม่
หรือจาเป็นต้องเก็บเพิ่มเติม และต้องเก็บมากขนาดไหนถึงสามารถ
ใหผ้ ลการวเิ คราะหท์ ่ีดี

3. Data Preparation คือการจัดการข้อมูลท่ีได้มาทั้งหมด
เพื่อใหพ้ รอ้ มตอ่ การวเิ คราะห์ โดยขัน้ ตอนนี้

ใช้เวลาในการทางานมากที่สดุ ซ่ึงประกอบดว้ ย
• การคัดเลือกข้อมูล (Data Selection) คือการ

เลือกขอ้ มูลท่ีจะมสี ว่ นเกย่ี วขอ้ งกับการ
วิเคราะหม์ ากทส่ี ดุ
• การกลั่นกรองข้อมูล (Data cleaning, Data
cleansing หรือ Data scrubbing) คือการ

5

จัดการข้อมูลให้ถูกต้อง โดยการแก้ไขเพิ่มเติม
ข้อมูลทีไ่ ม่ถกู ตอ้ ง สญู หายหรอื ไมท่ นั สมยั
หรือลบการซ้าซ้อนของข้อมูล ซึ่งวิธีการอาจใช้
ค่าทางสถติ ิต่าง ๆ เช่น ค่ากลาง (mean)
ค่ า มั ธ ย ฐ าน (median) แ ล ะ ค่ า ฐ า น นิ ย ม
(mode) หรอื การทาแบบจาลอง (simulation)
• ก า ร แ ป ล ง รู ป แ บ บ ข้ อ มู ล ( Data
transformation) คือการเปลี่ยนแปลงขอ้ มูลให้อยใู่ น
รูปแบบที่พร้อมสาหรับการนาไปวิเคราะห์ตาม
อลั กอริทึม (Algorithm) และแบบจาลองท่ี
ใช้ในการทา data mining ต่อไป เช่นการ
แบ่งเป็นกลมุ่ หรอื การแบง่ ระดับ เป็นตน้
4. Modeling คือการวิเคราะห์ข้อมูลด้วยเทคนิค data
mining เช่น การใช้เทคนิคการหาความสัมพันธ์ (Association)
เทคนิคการจัดกลุ่มข้อมูล (Clustering) เทคนิคการจาแนกประเภท
ข้อมูล (Classification) และการทาสมการถดถอย (Regression)
เปน็ ตน้
5. Evaluation คือการวัดประสิทธิภาพของรูปแบบจาลอง
ที่ได้จากข้ันตอนที่ 4 ว่ามีประสทิ ธภิ าพเป็นอย่างไร

6

6 . Deployment คื อ ก า ร น า ไป ใช้ ป ร ะ โ ย ช น์ ใน
สถานการณจ์ ริงต่อไป

โดยส่วนใหญ่การทา Data mining จะใชเ้ ทคนิคการเรียนรู้
ของเครอ่ื ง (Machine learning) เปน็ หลัก (เอกสทิ ธิ์, 2562)
ปัญญาประดิษฐ์ (Artificial Intelligence, AI) คือการรวบรวม
ความฉลาดของมนุษย์สู่เคร่ืองจักร (Machine) หรือคอมพิวเตอร์
โดยผ่านทางการเขียนโค้ด (code) หรือการใช้อัลกอริทึม ที่ทาให้
ระบบคอมพิวเตอร์สามารถเลียนแบบ พัฒนาและแสดงพฤติกรรม
ของมนุษย์ได้ เมื่อใดก็ตามท่ี Machine สามารถแก้ปัญหาหรือแก้
อัลกอริทึมตามชุดของคาส่ังที่สร้างไว้ได้สาเรจ็ การทางานแบบน้ีจะ
เรียกว่า “ปัญญาประดิษฐ์” ซ่ึงจะแบ่งเป็นสองกลุ่มคือแบบทั่วไป
(General AI) คือสามารถแก้ปัญหาท่ัวไปได้อย่างดี และแบบแคบ
(Narrow AI) คือสามารถทางานได้เฉพาะดา้ น
การเรียนรู้ของเครื่อง (Machine Learning, ML) คือ การสอน
ให้ระบบคอมพิวเตอร์ทาการเรียนรู้ได้ด้วยตนเองโดยการใช้ข้อมูล
และตัดสินใจได้ด้วยตัวเองจากข้อมูลท่ีมนุษย์ป้อนเข้าไป ซ่ึงการ
เรียนรขู้ อง Machine น้นั เป็นไปในสามรปู แบบ คือ

1. การเรียนรู้แบบไม่มีผู้สอนหรือไม่มีคาตอบให้ก่อน
(Unsupervised Learning) โดยเครื่องจะเรียนรู้และทานายผลได้
จากการจาแนกและสร้างรูปแบบจากข้อมลู ท่ีได้รับ เป็นแบบจาลอง

7

เชิงบรรยาย (Descriptive Modeling) วิธีการที่นิยมใช้คือ การหา
ความสัมพันธ์ระหว่างข้อมูล (Association algorithm) และการ
แบง่ กลมุ่ ข้อมูล (Clustering Algorithm)

2. ก า ร เรี ย น รู้ แ บ บ มี ผู้ ส อ น ห รื อ แ บ บ มี ค า ต อ บ
(Supervised Learning) โดยเครื่องจะเรียนรู้และทานายผลลัพธ์ได้
โดยผูเ้ ช่ียวชาญในด้านนั้นๆ จะบอกคาตอบของเหตุการณ์ท่ีเคยเกิด
ข้ึนมาก่อนไว้แล้ว เมื่อเกิดเหตุการณ์ใหม่เกิดขนึ้ เครื่องก็จะสามารถ
หาคาตอบได้เอง เป็นแบบจาลองเพื่อการทานาย (Predictive
Modeling) วิธีก ารท่ี นิ ย ม ใช้ เช่ น ก ารแ ย ก ป ระ เภ ท ข้ อ มู ล
(Classification) โดยใช้แบบจาลองต้นไมต้ ัดสินใจ (Decision Tree
Algorithm) แ บ บ จ าล อ งแ บ บ เบ ย์ อ ย่ างง่าย (Naïve Bayes
Algorithm) เครื่องเวกเตอร์ค้ายัน (Support Vector Machine)
การสุ่มต้นไม้ (Random Forest) แบบจาลองแบบโครงข่าย
ป ร ะ ส า ท เที ย ม (Neural Network ห รื อ Artificial Neural
Network Algorithm) การเรียนรู้เชิงลึก (Deep Learning) การ
สร้างสมการถดถอย (Regression) การจาแนกภาพ (Image
Classification) และ การจาแนกข้อความ (Text Classification)
เป็นตน้

3 การเรียนรแู้ บบเสรมิ กาลัง (Reinforcement Learning)
วิธกี ารน้ีเครอ่ื งจะมีหลักการทางานเสมือนกบั การท่ีมนษุ ย์เรียนร้บู าง

8

ส่ิงบางอย่างด้วยการลองผิดลองถูก และมีการเรยี นรู้เกิดข้ึนระหว่าง
ทางว่าการกระทาไหนดีหรือไม่ดี และเคร่ืองจะพยายามทาให้ได้ผล
ทีด่ ีที่สุด

ซึ่งประเภทและรายละเอียดของ Machine Learning
แสดงดงั ภาพที่ 1-1

ภาพท่ี 1-1 ประเภทหลักของ Machine learning
แหลง่ ท่มี า shorturl.at/qyHNV
การเรียนรู้เชิงลึก (Deep Learning, DL) คือการทางานของ
ระบบคอมพิวเตอร์ท่ีมีวิธีการทางานเหมือนระบบประสาทในสมอง
มนุษย์ โดยเซลล์ประสาทมีการเช่ือมต่อกันเป็นระบบประสาทและ

9

ส่ือสารกัน โดยใช้วิธีประมวลผลแบบขนาน (parallel processing)
เพื่อทาให้เครื่องสามารถเข้าใจและเรียนรู้จากข้อมูลจานวนมากท่ี
ได้รับอย่างตอ่ เน่อื ง แต่วิธีการนจ้ี าเป็นต้องใชข้ ้อมูลจานวนมากเพื่อ
เพมิ่ ความถกู ตอ้ งของการทานาย

ซ่ึงความแตกต่างของ Machine learning กับ Deep
learning คือ Machine learning จาเป็นต้องได้รับข้อมูลเหล่านี้
จากผู้ให้ข้อมูลโดยตรง ในขณะที่ Deep Learning สามารถค้นพบ
คาตอบหรือคณุ สมบัติโดยอัตโนมัติ และทง้ั หมดจะนาไปสู่ Artificial
Intelligence ซึ่งความสัมพันธ์ระหว่าง Artificial Intelligence,
Machine learning และ Deep learning แสดงดังภาพที่ 1-2 ซึ่ง
KL และ DL ทั้งหมดเป็น AI แต่มี AI บางส่วนท่ีไม่ได้ทางานด้วย
วธิ กี ารเรียนรู้จากเครอื่ ง แต่ไดถ้ กู โปรแกรมไว้กอ่ นเทา่ น้ัน

Artificial intelligence

Machine learning

Deep
learning

ภาพท่ี 1-2 ความสัมพนั ธ์ระหว่าง Artificial Intelligence,
Machine learning และ Deep learning

10

โปรแกรม RapidMiner
เกิดจากการร่วมพัฒนาระหว่าง SPSS, DaimlerChrysler

และ NCR และเกิดแนวทางการการวิเคราะห์ข้อมูลขนาดใหญ่
(Big data) ใช้สาหรับการทาเหมืองข้อมูล การเตรียมข้อมูล การ
เรียนรู้ของเคร่ือง การเรียนรู้เชิงลึกและการวิเคราะห์เพื่อการ
ทานาย (Predictive analysis) โดยการใช้งานโปรแกรมไม่ต้องใช้
การเขียนโค้ดแต่ใช้การเชื่อมต่อของบล็อกคาส่ังแทน จึงทาให้
ผู้ใช้งานเกิดความสะดวกในการใช้งาน ซ่ึงตัวโปรแกรมสามารถ
ดาวน์โหลดได้ที่
https://docs.rapidminer.com/latest/studio/installation/
หรือท่ี shorturl.at/fGQW7 ทั้งนี้ในคู่มือเล่มนี้ใช้ RapidMiner
Studio Version 9.10

การฝึกใช้งานโปรแกรม RapidMiner ในตัวโปรแกรมมี
ข้อมูลตัวอย่างไว้ให้ใช้ทดลองใช้ หรือผู้ใช้อาจจะใช้ข้อมูลขนาด
ใหญ่จากแหล่งอื่น ๆ มาทดลองใช้ก็ได้ ซึ่งมีจากหลายแหล่งท่ี
สามารถนามาใช้ได้แบบไม่มีค่าใช้จ่าย เช่น Free Dataset
Archives-Zdataset, UCI Machine Learning Repository,
Data World, Subreddit/Datasets, Kaggle Datasets และ R
Package-DSLabs เป ็น ต ้น ร ว ม ถ ึง โ ป ร แ ก ร ม ม ีต ้น แ บ บ
(Template) และส่วนขยาย (Extensions) เพ่ิมเติมอย่างต่อเนื่อง

11

ทั้งนี้ข้อจากัดของ RapidMiner สาหรับเพื่อการศึกษา ซึ่ง
ไม่มีค่าใช้จ่ายจะอนุญาตให้ใช้ข้อมูลได้สูงสุด 10,000 แถว หาก
กรณีที่มีข้อมูลมากกว่าโปรแกรมจะลดจานวนข้อมูลลงแบบ
อัตโนมัติ กรณีที่ต้องการเพิ่มข้อมูลหรือใช้งานส่วนอื่น ๆเพิ่มขึ้น
จะมีค่าใช้จ่ายเกิดข้ึน

12

บทที่ 2
การทาเหมืองข้อมูล

กระบวนการทางานของเหมืองข้อมูลประกอบด้วย
แบบจาลองทใี่ ช้กบั การเรียนรู้แบบไม่มีผสู้ อน (Unsupervised
learning)

วิธีน้ีจะใช้ในการจัดกลุ่มข้อมูล (Clustering) ซ่ึงวิธีหรือ
โมเดลที่นิยมใช้คือ การหาความสัมพันธ์ของข้อมูล (Association
Algorithm) การใช้ K-Means

1. Association algorithm (การหาความสัมพันธ์) ใช้
กฎความสัมพันธ์ (Association Rule) ในการค้นหาความสัมพันธ์
ของข้อมูลจากข้อมูลขนาดใหญ่ เพื่อนาไปใช้ในการวิเคราะห์หรือ
ทานายปรากฏการณ์ต่าง ๆ หรือมาจากการวิเคราะห์การซื้อสินค้า
ของลูกค้าทเ่ี รยี กว่า “Market Basket Analysis” ตัวอย่างเช่น การ
นา ธุรกรรม (transaction) การซื้อสินค้ามาทาการวิเคราะห์ว่า
ลูกค้าใช้อะไรคู่กับสินค้าอะไรบ่อยๆ ทาให้สามารถแนะนาสินค้า
เฉพาะกับลูกค้าแต่ละคนได้ และสามารถใช้เป็นกลยุทธ์ในการ
สง่ เสรมิ การขายได้ ทาใหย้ อดขายสนิ คา้ เพ่ิมขน้ึ
คาสาคัญท่ีใชใ้ นกฎความสัมพันธ์ประกอบดว้ ย

13

คา่ support คือจานวนคร้ังของการซ้อื สินค้าแตล่ ะชนิดคิด
เปน็ % ของการซ้ือสนิ คา้ หรือคา่ สนบั สนนุ

Support = ความถ่ีของ itemset / จานวน
transection ทงั้ หมด
คา่ frequent itemset คือรูปแบบการซื้อสินค้าหรือกลมุ่
เหตุการณ์ (itemset) ที่มีค่า support ≥ minimum support (คือ
ค่าสนับสนนุ ขน้ั ต่า ซึง่ แลว้ แต่จะกาหนดคา่ นี)้ หรอื เป็นความถ่ีของ
กลุ่มข้อมูลท่ีมักเกิดรว่ มกนั บ่อยๆ
คา่ infrequent itemset คือรูปแบบการซ้ือสินค้า
(itemset) ทม่ี ีคา่ support < minimum support
ค่า LHS คือ Left Hand Side หมายถึงสนิ ค้าที่ซ้อื พร้อม
กันบอ่ ย ๆ ดา้ นซ้ายของกฎ
ค่า RHS คอื Right Hand Side หมายถึงสินค้าที่ซือ้ พรอ้ ม
กันบ่อย ๆ ดา้ นขวาของกฎ
ท้งั นี้วธิ ีการหากฎความสัมพนั ธม์ ี 2 ขน้ั ตอนใหญ่คอื
1. หา frequent itemset ซึ่งมี 2 เทคนิคคอื

1.1 เทคนิค Apriori เป็นอัลกอริทึมจะใช้ความรู้
ก่อนหน้านี้ (prior knowledge) ของ frequent itemset มาใช้หรื
อนา frequent itemset ที่ ได้ก่อนห น้านี้ มาใช้หา frequent
itemset ในระดับถัดไป (Agrawal และ Srikant, 1994) ซ่ึงจะเป็น

14

การสร้างรูปแบบของสินค้า (itemset) ท่ีมีจานวนเพิ่มขึ้นทีละ 1
จากนั้นคานวณค่า support จากในฐานข้อมูล ซ่ึงวิธีการน้ีมีข้อเสีย
คอื ต้องดงึ ข้อมูลจากฐานขอ้ มลู หลายรอบทาให้การทางานช้า

หลักการของ Apriori
o superset ของรปู แบบทีเ่ ปน็ frequent itemset
มีโอกาสจะเปน็ frequent itemset ท่มี ีความยาว
มากข้นึ
o superset ของรปู แบบทีเ่ ปน็ infrequent
itemset จะมีค่า support < minimum
support จะสามารถตดั รูปแบบท่เี ป็น superset
ทมี่ ีความยาวมากขึน้ ทง้ิ ได้
1.2 เทคนคิ FP-Growth ใชห้ ลักการสร้างต้นไม้

(FP-tree) การทาซ้าแบบ divide-and-conquer ในการสร้างกฎ
ความสมั พนั ธท์ ี่พบบ่อย (Han และคณะ, 2000) โดยเริ่มจากการ
อ่านข้อมลู ในฐานข้อมูลและสร้าง FP-tree จากน้ันคานวณค่า
support จาก FP-tree ข้อดีของวิธีการนคี้ ือจะทางานได้เร็วกว่า
เทคนคิ Apriori

หลักการของเทคนคิ FP-Growth มี 2 ข้นั ตอน คอื
o สร้าง compact data structure ทเ่ี รยี กวา่ FP-
Growth

15

การสรา้ ง FP-Tree โดยการอ่านขอ้ มูล
จากฐานข้อมลู เพียงแค่ 2 ครงั้ เท่าน้ัน

หาคา่ support ของรปู แบบการซือ้
สินค้า (item) ทีม่ ีความยาว 1

ในแตล่ ะ transection จะเรียงลาดับ
ตามค่า support

สรา้ ง FP-Tree จากการอ่านข้อมลู ใน
ฐานขอ้ มลู เพยี งหนงึ่ รอบ

o สรา้ งรูปแบบของสนิ ค้าท่ีซื้อบ่อยๆ (frequent
itemset) จาก FP-Tree

2. สร้างกฎความสัมพนั ธจ์ าก frequent itemset ทีห่ าได้
จากข้ันตอนที่ 1

การวัดประสทิ ธิภาพของกฎความสมั พนั ธ์
Confidence เป็นค่าแสดงความเช่อื ม่นั ของกฎ
ความสัมพนั ธท์ ีเ่ มอื่ รูปแบบ LHS เกดิ ขนึ้ แลว้ รูปแบบ RHS จะ
เกดิ ขนึ้ ด้วยเป็นจานวนก่เี ปอร์เซน็ ต์ กรณที ่ีความนา่ จะเปน็ เทา่ กับ 1
หมายความวา่ เหตกุ ารณจ์ ะเกิดขน้ึ 100 เปอร์เซน็ ต์

16

Lift คือค่าทบี่ ่งบอกว่าการเกิดรปู แบบ LHS และ RHS มี
ความสมั พนั ธ์กนั แค่ไหน โดยถ้าคา่ Lift มคี ่ามากกวา่ 1 แสดงว่า
รูปแบบ LHS และ RHS มกั จะซื้อพร้อมกันมากกวา่ การซื้อแยกกัน

2. Clustering Algorithm เป็ น เท ค นิ ค ท่ี ใช้ ใน ก า ร
จาแนกกลุ่มข้อมูลใหม่ท่ีมีลักษณะหรือคุณสมบัติที่คล้ายกันไว้ใน
กลุ่มเดียวกัน โดยขั้นตอนในการแบ่งกลุ่มจะอาศัยความเหมือน
(similarity) หรือ ความใกล้ชิด (proximity) โดยคานวณจากการ
วัดระยะระหว่างเวกเตอร์ของข้อมูล ตัวอย่างเช่น การแบ่งกลุ่ม
ลูกค้าโดยจาแนกจากเพศ อายุ รายได้ หรือพฤติกรรมเป็นต้น โดย
อลั กอรทิ มึ ทนี่ ิยมใชค้ ือ K-means

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

17

 หาระยะห่างระหวา่ งข้อมูลแต่ละตวั กบั จุดศูนย์กลางของ
แต่ละคลสั เตอร์ (Centroid) โดยใชส้ ูตร Euclidean ดังน้ี

เชน่ การหาความห่างกนั ระหว่างข้อมลู 2 ข้อมลู คือ หา
ความหา่ งจากขอ้ มูล A ณ ตาแหนง่ (x1, y1)และ
Centroid ณ ตาแหนง่ = (x2, y2) ดังภาพท่ี 2-1

ภาพที่ 2-1 การหาคา่ Euclidean
 กาหนดให้ข้อมลู ท่ีอยู่ในคลัสเตอร์ทใี่ กลท้ ีส่ ุด
 คานวณหาจุดศนู ย์กลางของแตล่ ะคลัสเตอร์ใหม่
 ทาซ้าจนข้อมูลอยู่ในคลัสเตอร์เดิมไม่มกี ารเปลย่ี นแปลง
3. Time Series Algorithm (อนุกรมเวลา) เป็นวิธีการ
พยากรณ์แบบข้อมูลอนกุ รมเวลา ใช้ในการทานายหรือพยากรณ์ ว่า
อะไรจะเกิดขน้ึ ในอนาคต โดยมสี ่วนทเี่ กีย่ วขอ้ งกบั แนวโนม้
(Trend) ฤดกู าล (Seasonality) หรือวฏั จักร (Cycle)

18

โมเดลทีใ่ ช้กบั การเรยี นรแู้ บบมีผู้สอน (Supervised learning)
วิธีการน้ีเคร่ืองคอมพวิ เตอร์จะถูกสอนให้รถู้ ึงต้นแบบท่เี ป็น

เป้าหมายหรือมีคาตอบอยู่แล้ว ซึ่งวิธีการนี้จะใช้ในการจาแนก
ประเภทข้อมูล (Classification) โดยวิธีหรือโมเดลท่ีนิยมใช้คือ
Decision tree (ต้นไม้ตัดสินใจ), K-Nearest Neighbors (การ
คานวณเพ่ือนบ้านใกล้ที่สุด), Naïve Bayes (การเรียนรู้แบบเบย์),
Random forest (การจาเเน กป ระเภ ท เเบ บ การสุ่มป่าไม้),
Support Vector Machines (ซัพพอร์ตเวกเตอร์ แมทชีนหรือ
เครื่องเวกเตอร์ค้ายัน) และ Neural network (โครงข่ายประสาท
เทียม) เป็นต้น และใช้ในการทานายผล (Prediction) โดยวิธีท่ีนิยม
ใช้คือ การทาสมการถดถอย(Regression) ท้ัง linear regression
และ logistic regression
แบบจาลองทใ่ี ชใ้ นการแยกข้อมลู

1. Decision Trees Algorithm (ตน้ ไมก้ ารตัดสนิ ใจ)
เป็นการแยกข้อมูลออกเป็นกลุ่มโดยใช้คุณ ลักษณ ะของ
ข้อมูล (Attribute) เป็นตัวกาหนด ซ่ึงวิธีการวิเคราะห์แบบน้ีเป็น
การค้นหาจากบนลงล่าง (Top-down) โดยเร่ิมต้นจากการเลือก
คุณสมบัติที่ดีที่สุดหรือมีอิทธิพลมากท่ีสุดมาเป็นโหนดราก (Root
node) และวนสร้างโหนดลูก (Internal node) และเส้นเชื่อมต่อ
หรือก่ิง (Link or branch) ไปเรื่อย ๆจนกว่าข้อมูลที่ได้จะถูกจัดไว้

19

เป็นกลุ่มเดียวกัน แยกต่อไปไม่ได้หรือเรียกว่าโหนดใบ (Leaf
node) ซึ่งจะเป็นผลลัพธ์กจ็ ะหยดุ การสรา้ งตน้ ไม้

ส าห รับ ข้ั น ต อ น ก ารส ร้าง decision tree จะเลื อ ก
คุณลักษณะ (Attribute) ที่มีความสัมพันธ์กับคลาสมาใช้งาน โดย
ใช้ค่าความสับสนของข้อมูล (Entropy) และการเพิ่มคุณค่าของ
ขอ้ มลู (Information Gain, IG) ดังสมการ

เม่ือ คือ ความน่าจะเป็นท่ีข้อมูลจะมีคุณลักษณะ

ใดๆอยู่ เช่น หมายถึงคุณลักษณะตัวแรก โดยถา้ คุณลักษณะใดมี
ค่า Information Gain มากทส่ี ุด ก็จะถกู นามาเป็นโหนดแมส่ าหรับ
การแบง่ กลมุ่ ขอ้ มูลในรอบนั้น

ในกรณีท่ีข้อมูลเป็นตวั เลขต้องมีการเรียงลาดับขอ้ มูลที่เป็น
ตัวเลขจากน้อยไปมาก แบ่งข้อมูลออกเป็น 2 ส่วนโดยการหาจุด
ก่ึงกลางระหว่างค่าตัวเลข 2 ค่า คานวณค่า Information Gain

20

จากข้อมูล 2 ส่วนท่ีแบ่งได้ เลือกจุดก่ึงกลางที่ให้ค่า Information
Gain สงู ท่ีสุดมาใช้งานต่อ

ข้อดีของโมเดลการจาแนกข้อมูลแบบต้นไม้ตัดสินใจ คือ
ไม่จาเป็นต้องใช้ทุกคุณสมบัติในการแบ่งกลุ่มข้อมูล เพราะถ้าเลือก
คุณสมบัติที่มีค่า Information Gain สูงๆ หลายค่า ก็อาจจะ
เพียงพอตอ่ การแบ่งกลมุ่ ข้อมูลทัง้ หมดแลว้

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

2. K-Nearest Neighbors (K-NN) (การคานวณเพอ่ื น
บ้านใกล้ท่สี ุด)

หลักการของวิธีน้ีคือ การจาแนกข้อมูลที่มีลักษณะคล้ายๆ
กันให้อยู่ใน class หรือกลุ่มเดียวกัน ซ่ึงจานวนกลุ่ม (k) ข้ึนกับ
ความต้องการในการแบ่งโดยควรกาหนดเปน็ เลขคี่เสมอ เพ่ือให้แยก
ข้อมูลได้ชัดเจน ทั้งนี้การกาหนดค่า k ควรให้มีความเหมาะสม
เพราะจะมีผลกระทบต่อความแม่นยาของโมเดลได้ ในกรณีที่
กาหนดค่า k น้อยเกินไปจะทาให้ความแม่นยาลดลงเน่ืองจากสนใจ
เพียงแค่ข้อมูลเพียงตัวเดียวที่อยู่ใกล้ที่สุด หรือในกรณีที่กาหนดค่า
k มากเกินไปก็จะทาให้ครอบคลุมพ้ืนที่ของข้อมูลท่ีไม่เก่ียวข้องมาก
ตามไปด้วย ความคล้ายคลึงของข้อมูลที่คล้ายกันจะเกิดจากการ

21

คานวณระยะทางโดยใช้สมการจากทฤษฎีการวัดระยะทางของ
Euclidean ดงั นี้

=

เมื่อ คือระยะห่างระหวา่ งข้อมลู และขอ้ มลู ใน

ปริภมู ขิ นาด มิติ

คือค่าของชุดขอ้ มูลทต่ี ้องการจาแนก

คือค่าของชดุ ข้อมูลเพ่ือนบ้านท่นี ามาพจิ ารณา

คอื จานวนมติ ขิ องขอ้ มลู และ
3. Naïve Bayes (การเรียนรู้แบบเบย์)
เป็นเทคนิคที่สร้างโมเดลเพ่ือการจาแนกหมวดหมู่โดยใช้
การคานวณค่าความน่าจะเป็น (probability) ตามกฎของเบย์
(Bayes’ Theorem) เพ่ือหาว่าสมมติฐานใดน่าจะถกู ต้องท่ีสุด ข้อดี
ของวิธีการน้ีคือสามารถสร้างโมเดลโดยใช้จานวนชุดฝึก (Training

22

data) ไมม่ าก แตไ่ ดค้ วามแม่นยาในระดับทีน่ ่าพอใจ รวมถึงนาไปใช้
ไดง้ ่าย ดงั สมการ

กฎของเบย์ (Bayes’ Theorem) คอื
หรือ

ซง่ึ
ดังนนั้ หรือ

ทง้ั น้ี

เม่ือ คอื คลาส (Class)

คือ แอตทริบวิ ต์ (Attribute) หรอื คณุ ลักษณะ

คือความน่าจะเป็นของข้อมลู ที่มีแอตทรบิ ิวต์

จะมคี ลาส

23

คอื ความนา่ จะเปน็ ของข้อมลู ที่มีแอตทริบวิ ต์

จะมคี ลาส

คือคา่ Joint Probability หรือคา่ ความน่าจะ

เป็นทเ่ี หตกุ ารณ์ และเหตุการณ์ เกิดขน้ึ ร่วมกัน

คอื ความนา่ จะเป็นของข้อมลู ที่มีแอตทริบิวต์

จะมีคลาส (Posterior probability)

คอื ความน่าจะเปน็ ของข้อมูลใน training data

ที่มีแอตทรบิ วิ ต์ และมีคลาส (Likelihood)

คอื จานวน Classท่ีอาจจะเกดิ ข้นึ ตอ่ จานวน Class

ทง้ั หมดหรือความน่าจะเป็นของ Class (Prior
probability)

24

คอื จานวนของแอตทริบิวต์ (Predictor Prior
probability)

นาค่าความนา่ จะเป็นที่ไดม้ าเปรียบเทยี บกัน ถา้ อนั ไหนมี
ค่าความนา่ จะเป็นมากกวา่ ก็จะเกิดผลลัพธ์แบบนนั้ ท้ังน้ีเม่ือทา

การพจิ ารณาค่า นี้แลว้ จะเหน็ ได้ว่า ค่าน้จี ะมีค่าคงที่กับทุกๆ
หมวดหมูข่ องข้อมูล ดงั นั้นเราอาจจะสามารถละเลยคา่ นไ้ี ด้

4. Random Forest (การจาแนกประเภทแบบการสุ่ม
ป่าไม้) คือ การสร้างโมเดลแบบ Decision Tree ขึ้นมาหลายๆ
โมเดลย่อย ๆ โดยแตล่ ะ model จะได้รับ data set ไม่เหมือนกัน
ซ่ึงเป็น subset ของ data set ทั้งหมด แต่ละ Decision Tree
ทา prediction แยกจากกันและเมื่อมีผลออกมาแล้วจะมาทาการ
Vote เพ่ือให้ได้ผลที่ดีท่ีสุด ซึ่งเป็นการสร้างโมเดลแบบ
Ensemble (วิธีการใชห้ ลาย ๆโมเดลมาช่วยในการวิเคราะห์) แบบ
หน่ึง

25

5. Support Vector Machines (SVM) (ซัพพอร์ต
เวกเตอร์แมทชีน) เป็นการจัดกลุ่มข้อมูลโดยการแบ่ง Class ของ
ข้อมูลออกจากกันโดยใช้เส้นแบ่ง (hyperplane) (ภาพท่ี 2-2) ซ่ึง
ก็คือ Model ท่ีดีที่สุด จากระยะห่างสูงสุดของแต่ละ Class ข้อมูล
ส่วนใหญ่ใช้สมการเชิงเส้นแบบเส้นตรง (Linear) หรือในบางกรณี
ที่ข้อมูลไม่สามารถแบ่งได้ด้วยเส้นตรง อาจต้องมีการแปลงข้อมูล
โดยใช้ kernel function เช่น เคอร์-เนลพหุนาม (polynomial)
และ เรเดียลเบสิสฟังก์ชัน (radial basis function (RBF))ก่อน
แล้วจึงแบ่งข้อมูลด้วยเส้นตรง แต่ในบางกรณีที่ไม่สามารถทาแบบ
น้ีได้อาจต้องใช้สมการเชิงเส้นแบบไม่เป็นเส้นตรง (Non-Linear)
ได้ ซึ่งวิธีการนี้พบปัญหา Overfitting น้อย

ภาพที่ 2-2 การแบ่งข้อมูลโดยใช้ Hyperplane
แหล่งท่ีมา
https://codeinsane.wordpress.com/2018/12/08/support
-vector-machine/

26

6. K-Nearest Neighbors (K-NN) (การคานวณเพ่ือน
บ้านใกล้ท่ีสุด)

หลักการของวิธีน้ีคือ การจาแนกข้อมูลท่ีมีลักษณะคล้ายๆ
กันให้อยู่ใน class หรือกลุ่มเดียวกัน ซึ่งจานวนกลุ่ม (k) ขึ้นกับ
ความต้องการในการแบ่งโดยควรกาหนดเป็นเลขคี่เสมอ เพื่อให้
แยกข้อมูลได้ชัดเจน ทั้งนี้การกาหนดค่า k ควรให้มีความเหมาะสม
เพราะจะมีผลกระทบต่อความแม่นยาของโมเดลได้ ในกรณีที่
กาหนดค่า k น้อยเกินไปจะทาให้ความแม่นยาลดลงเนื่องจาก
สนใจเพียงแค่ข้อมูลเพียงตัวเดียวที่อยู่ใกล้ที่สุด หรือในกรณีที่
กาหนดค่า k มากเกินไปก็จะทาให้ครอบคลุมพื้นที่ของข้อมูลที่ไม่
เกี่ยวข้องมากตามไปด้วย ความคล้ายคลึงของข้อมูลที่คล้ายกันจะ
เกิดจากการคานวณระยะทางโดยใช้สมการจากทฤษฎีการวัด
ระยะทางของ Euclidean ดังนี้

=

เมื่อ คือระยะห่างระหว่างข้อมูล และข้อมูล ใน

ปริภูมิขนาด มิติ

27

คือค่าของชุดข้อมูลท่ีต้องการจาแนก
คือค่าของชุดข้อมูลเพื่อนบ้านท่ีนามาพิจารณา
คือจานวนมิติของข้อมูล และ
7. Neural Network (NN, Neural Net ห รือ
Artificial Neural Network, ANN) ห รือ โค ร ง ข่า ย
ประสาทเทียม เป็นเทคนิคที่สร้างโมเดลท่ีซับซ้อนมากที่สุด
โดยมีแนวคิดมาจากการจาลองการทางานของเซลล์สมอง
ของมนุษย์ (Neuron) ซึ่งแต่ละ Neuron จะประกอบไป
ด้วย soma, dendrites, axon, axon terminals และส่วนอื่น ๆ
(ภาพท่ี 2-3)

ภาพท่ี 2-3 แสดง Neural cell
แหล่งท่ีมา Szymik (2011)

28

โครงสร้างของ Neural network ประกอบด้วย Input
layer, Hidden layer และ Output layer ดังภาพที่ 2-4 มีหน่วย
ย่อยเรียกว่า Perceptron ซึ่งเทียบเท่าได้กับเซลล์สมองของมนุษย์
เซลล์หน่ึง (Neuron) โดยหลักการของ Neural network จะมีการ
กาหนดคา่ น้าหนกั weight และ threshold ใหแ้ ก่ Input แต่ละตัว
โดยใช้ back-propagation algorithm ในการคานวณ ซ่ึงเรา
สามารถนามาประยุกต์ใช้กับงานด้านต่างๆ อาทิเช่น การพยากรณ์
การจดจาใบหนา้ เรียนรจู้ าลายมอื ลายเซ็นและรูปเปน็ ตน้
Neurons

ข้างใน Neuron จะต่างกันตาม layer ท่ีมันอยู่ โดยถ้าเป็น
Input ข้างในตัวมันก็จะมีข้อมูลท่ีรับมา แต่ถ้าเป็น Hidden Layer
ก็จะมีสมการท่ีช่วยในการคานวณเพ่ือทานายว่าเป็นคลาสอะไร
หรือคานวณแบบถดถอย (Regression) ก็ได้ แต่ถ้าเป็น Output ก็
จะเปน็ ตัวท่บี ่งบอกวา่ เป็นคลาสอะไรนน้ั เอง
Input Layer

มีหน้าท่ีในการรับข้อมูลเข้ามาในโครงข่ายประสาทโดย
Input Layer จะเพียงช้ันเดียวเท่านั้นและมีหน้าส่งข้อมูลไปยังช้ัน
ถัดไป (Hidden Layer)

29

Hidden Layer
มีหน้าท่ีรับข้อมูลจาก Layer ก่อนหน้า ซ่ึงภายในแต่ละ

โหนด(node)ของ hidden layer จะมกี ารคานวณคา่ โดยใช้ Linear
function และ non-linear function และจานวน Hidden Layer
สามารถมีจานวนมากกว่า 1 ได้ และโดยหลักการถ้าย่ิงต้องการ
ความแม่นยาท่ีมากขึ้นก็สามารถทาได้โดยการเพ่ิมจานวนช้ันของ
Hidden Layer และจานวน Neurons ให้มากข้ึนก็อาจจะช่วยให้
การทานายท่ีแม่นยาข้ึนได้ ทั้งนี้ในกรณี ที่มี Hidden layer
มากกว่า 1 ช้ัน อาจเรียกว่าการทาการเรียนรู้เชิงลึก (Deep
learning) Output คอื ผลลพั ธท์ จ่ี ะเกดิ ขนึ้

Input Hidden 1 Output

ภาพที่ 2-4 องคป์ ระกอบของ Neural Network

30

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

การวิเคราะห์การถดถอย วธิ กี ารที่นิยม คือ
1. Linear Regression เป็นวิธีการทางสถติ ิอยา่ งหนึ่งใน
การหาความสัมพนั ธ์แบบเส้นตรงระหวา่ งตัวแปรตน้
(Independent variable) และตวั แปรตาม (Dependent
variable) เช่น y = mx + c
เมื่อ Y เป็นตัวแปรตาม และ X เป็นตัวแปรต้นหรือตัวแปร
อสิ ระ จุดประสงค์ของการวเิ คราะห์แบบนี้เพ่อื ใช้ในการพยากรณ์ผล
ข้อดีของการเทคนิคนี้คือโมเดลท่ีได้แปลความได้ง่ายเพราะแสดงใน
รปู ของสมการทางคณิตศาสตร์ทีเ่ ราสามารถแทนค่าเข้าไปได้เลย
2. Logistic Regression เป็นเทคนิคการวิเคราะห์สถิติ
เชิงคุณภาพ (qualitative statistical techniques) โดยการสร้าง
สมการคณิตศาสตร์เพ่ือแบ่งแยก (classify) ข้อมูลออกเป็น 2 กลุ่ม
คาตอบ เป็นเทคนิคที่นิยมใช้เช่นกันเนื่องจากแปลความได้ง่าย ถูก
นามาใช้เพื่อทานายว่า จะเกิดเหตุการณ์หน่ึงข้ึนหรือไม่หรือมี

31

โอกาสเกิดขึ้นมากน้อยเพียงใด โดยมีการกาหนดค่าตัวแปรตัวหนึ่ง
หรอื หลายตัวทคี่ าดวา่ จะสง่ ผลตอ่ การเกิดเหตกุ ารณน์ น้ั ๆ

เทคนิคนี้มีความแตกต่างจากเทคนิคการวิเคราะห์เชิง
ปริมาณ (quantitative techniques) ส่วนหน่ึงคือ ข้อมูลที่เป็นตัว
แปรตามเป็นตัวแปรเชิงคุณภาพ คือเป็นตัวแปรเชิงกลุ่ม การ
วิเคราะห์การถดถอยแบบน้ีจะแบ่งเป็น 2 ประเภท คือ (1) การ
วิเคราะห์การถดถอยโลจิสติคทวิ (binary logistic regression
analysis) และ (2) การวิเคราะห์การถดถอยโลจิสติคพหุกลุ่ม
(multinomial logistic regression analysis) การวิเคราะห์การ
ทั้ง 2 ประเภทมีความแตกต่างกันในด้านตัวแปรตาม โดยท่ีการ
วเิ คราะห์การถดถอยโลจิสติคทวจิ ะใช้กับตัวแปรตามที่แบ่งออกเป็น
2 กลุ่มย่อย (dichotomous variable) มี 2 ค่า คือมีค่าเป็น 0 กับ
1 เช่น กลุ่มที่มีเหตุการณ์กับกลุ่มท่ีไม่มีเหตุการณ์ ส่วนการ
วเิ คราะห์โลจิสติคแบบพหุกลุ่มที่ใช้จะใช้กับตัวแปรตามท่ีมีมากกว่า
2 กลุม่ ข้นึ ไป (polytomous variable) (ยุทธ, 2555)

การวิเคราะห์โลจิสตคิ ท่ีเปน็ แบบทวิ ตวั แปรตามหรือตัว
แปรเกณฑ์ (y) มี 2 คา่ คอื ไม่เกดิ เหตกุ ารณ์ (y = 0) หรือเกิด
เหตกุ ารณ์ (y = 1) มคี วามสัมพนั ธ์กบั ตวั แปรทานาย (x) ไม่อยู่ใน
รูปเชงิ เสน้ ดังสมการ

32

หรอื
หรือ

สาหรับกรณตี ัวแปรทานายมากกว่า 1 ตัว จะได้ฟังก์ชัน
ดังนี้

เม่ือ = ความนา่ จะเป็นของการเกดิ เหตุการณ์
= exponential function ( = 2.71828)
= ฟงั กช์ ่ันของตวั แปรทานาย

สาหรบั การวิเคราะหโ์ ลจสิ ตคิ แบบพหกุ ลุ่ม มีสมการ
ดังต่อไปนี้

33

สมการ (1)

สมการ (2)
โดยที่ เปน็ ตวั แปรตามทคี่ า่ แตล่ ะค่าจะบง่ บอกประเภท (

)

แสดง odd ratio ท่คี า่ ของ y

จะเทา่ กับ 1

แสดงคา่ สมั ประสทิ ธิห์ นา้ ตัวแปรอิสระแตล่ ะตวั

34

= ค่าของตัวแปรที่ ในสมการที่
สมการที่ (1) จะใช้ในการพยากรณ์ความนา่ จะเป็นที่
ตัวอยา่ งจะถกู จดั อยูใ่ นตวั แปรตามประเภททห่ี นึ่ง
สมการท่ี (2) จะใชใ้ นการพยากรณค์ วามน่าจะเป็นที่
ตวั อย่างจะถูกจัดอยูใ่ นตวั แปรตามประเภทที่สอง
จานวนสมการทงั้ หมดจะมี (k-1) สมการ โดยสมการ
สดุ ทา้ ยจะใชใ้ นการพยากรณ์ความนา่ จะเป็นทตี่ ัวอยา่ งจะจัดอยู่ใน
ตัวแปรตามประเภทที่ (k-1)
ซึง่ ความสมั พันธ์ของตัวแปรจะอยูใ่ นรปู คล้ายตัว s ดงั ภาพ
ท่ี 2-5

ภาพท่ี 2-5 ฟงั กช์ ัน่ โลจิสติค (logistic function)
แหล่งที่มา ยทุ ธ (2555)

35

การแยกรูปภาพ (Image classification)
เป็นเทคนิคหนึ่งของการทา data mining จุดประสงค์เพ่ือ
ใช้ในการแยกประเภทจากรูป เช่น การแยกลายมือ ใบหน้า ป้าย
ทะเบียน เป็นต้น ซ่ึงถือว่าเป็นการวิเคราะห์แบบ deep learning
แบบหน่ึง โดยส่วนใหญ่จะมีการแปลงภาพสีให้เป็นภาพขาว-ดา
(gray scale) และคานวณหาค่าต่างๆ เช่น ค่าเฉลี่ยของสี ค่ากลาง
ของระดับสี ค่าเบ่ียงเบนมาตรฐาน ค่าระดับสีขาว-ดามากท่ีสุดและ
น้อยทีส่ ดุ เป็นต้น เพือ่ นาค่าท่ไี ด้มาใชใ้ นการแยกประเภทต่อไป
ในโปรแกรม RapidMiner Studio 9.10 จะใช้ส่วนขยายที่
เรียกว่า Image Mining Extension for RapidMiner (IMMI)

วิธกี ารทดสอบประสิทธิภาพของแบบจาลอง (Model)
เมื่อมสี รา้ งโมเดลต้นแบบขึ้นมาแล้วจาเปน็ ต้องมีการ

ทดสอบประสทิ ธิภาพของโมเดลน้ัน ทง้ั นวี้ ธิ ีการทดสอบจะทาการ
แบง่ ข้อมูลออกเปน็ ส่วนๆ ซง่ึ จะมี 3 วิธกี าร ดังน้ีคือ

1. วธิ ี Self-Consistency Test
บางคร้ังเรียกว่า Use Training Set นี้เป็นวิธีการที่ง่าย
ท่ีสุด นั่นคือ ข้อมูลที่ใช้ในการสร้างโมเดล (model) และข้อมูลที่ใช้
ในการทดสอบโมเดลเป็นข้อมูลชุดเดียวกัน กระบวนการนี้เริ่มจาก
ส ร้ า ง โ ม เด ล ด้ ว ย ข้ อ มู ล ชุ ด ข้ อ มู ล ที่ น า ไป ท า ก า ร ส อ น ใ ห้ กั บ

36

คอมพิวเตอร์ (training data) หลังจากนั้นนาโมเดลท่ีสร้างได้มา
ทานายข้อมูลชุดข้อมูลชุดเดิม การวัดประสิทธิภาพด้วยวิธีน้ีจะ
ให้ผลการวัดประสิทธิภาพที่มีค่าสูงมาก (อาจจะเข้าใกล้ 100%)
เน่ืองจากเป็นข้อมูลชดุ เดิมท่ีระบบได้ทาการเรียนร้มู าแล้ว ดังนนั้ ผล
การวัดท่ีได้ไม่เหมาะสมท่ีจะนาไปใช้ในงานวิจัยต่างๆ วิธีการน้ีจะ
เหมาะสาหรับใช้ในการทดสอบประสิทธิภาพเพ่ือดูแนวโน้มของ
โมเดลท่ีสร้างข้ึน ถ้าได้ผลการวัดท่ีน้อยแสดงว่าโมเดลไม่เหมาะสม
กับข้อมูล และไม่ควรจะนาไปใช้งานต่อ

2. วธิ ี Split Test
วิธี Split Test เป็นการแบ่งข้อมูลด้วยการสุ่มออกเป็น 2
ส่วน เช่น 70% ต่อ 30% หรือ 80% ต่อ 20% โดยข้อมูลส่วนท่ี
หนึ่ง (70% หรือ 80%) ใช้ในการสร้างโมเดลและข้อมูลส่วนที่สอง
(30% หรือ 20%) ใช้ในการทดสอบประสิทธิภาพของโมเดล แต่
การทดสอบแบบ Split Test นี้ทาการสุ่มข้อมูลเพียงครั้งเดียวซ่ึงใน
บางคร้ังถ้าการสุ่มข้อมูลที่ใช้ในการทดสอบที่มีลักษณะคล้ายกับ
ขอ้ มูลทใ่ี ช้สร้างโมเดลกจ็ ะทาให้ผลการวดั มปี ระสทิ ธิภาพที่ดี ในทาง
ตรงข้ามถ้าการสุ่มข้อมูลที่ใช้ในการทดสอบที่มีลักษณะแตกต่างกับ
ข้อมูลท่ีใช้ในการสร้างโมเดลมากก็จะทาให้ผลการวัดประสิทธิภาพ
ออกมาไม่ดี ดังน้ันวิธี Split Test ควรทาการสุ่มหลายๆ คร้ัง แต่
ข้อดขี องวิธกี ารนค้ี ือใชเ้ วลาในการสร้างโมเดลนอ้ ย

37

3. วิธี Cross-validation Test
วิธีน้ีเป็นวิธีที่นิยมมากท่ีสุดในการทางานวิจัยเพ่ือใช้ในการ
ทดสอบประสิทธิภาพของโมเดล เนื่องจากผลที่ได้มีความน่าเช่ือถือ
การวัดประสิทธิภาพด้วยวิธีนี้จะทาการแบ่งข้อมูลออกเป็นหลาย
ส่วน (มกั จะแสดงดว้ ยค่า k) เชน่ 5-fold cross-validation คือ ทา
การแบ่งข้อมูลออกเป็น 5 ส่วน (k = 5) หรือ 10-fold cross-
validation คือ การแบ่งขอ้ มลู ออกเปน็ 10 สว่ น (k = 10) โดยท่แี ต่
ละส่วนมีจานวนข้อมูลเท่ากัน ต่อจากนั้นข้อมูลหน่ึงส่วนจะใช้ไปทา
โมเดล และส่วนท่ีเหลือจะถูกใช้เป็นตัวทดสอบประสิทธิภาพของ
โมเดล ทาวนแบบนี้ไปเรื่อย ๆจนครบจานวนที่แบ่งไว้ เช่น การ
ท ด ส อบ ด้ วยวิธี 4-fold cross-validation ข้อ มู ล จะถูก แบ่ ง
ออกเป็น 4 ส่วนท่ีมีจานวนเท่ากัน หลังจากน้ันทาการทดสอบ
ประสิทธิภาพของโมเดล 4 ครั้ง สีแดงคือกลุ่มข้อมูลทดสอบ (Test)
และสีนา้ เงนิ คือกลมุ่ ข้อมูลทใ่ี ชท้ าโมเดล (ภาพที่ 2-6) ดังนี้
รอบท่ี 1 ใช้ขอ้ มลู สว่ นท่ี 2, 3 และ 4 สรา้ งโมเดลและใช้โมเดล
ทานายข้อมูลส่วนท่ี 1 เพอื่ ทาการทดสอบ
รอบท่ี 2 ใช้ข้อมลู ส่วนที่ 1, 3 และ 4 สรา้ งโมเดลและใชโ้ มเดล
ทานายข้อมลู สว่ นท่ี 2 เพอ่ื ทาการทดสอบ
รอบที่ 3 ใชข้ อ้ มลู สว่ นท่ี 1, 2 และ 4 สรา้ งโมเดลและใชโ้ มเดล
ทานายข้อมลู สว่ นที่ 3 เพ่ือทาการทดสอบ

38

รอบที่ 4 ใช้ข้อมูลส่วนท่ี 1, 2 และ 3 สร้างโมเดลและใชโ้ มเดล
ทานายข้อมูลสว่ นท่ี 4 เพื่อทาการทดสอบ

ภาพท่ี 2-6 การทดสอบด้วยวิธี 4-fold cross-validation
แหล่งที่มา Halil และคณะ (2011)

การวัดประสทิ ธิภาพแบบจาลองแบบจาแนกข้อมูล
(Classification)

เมื่อทาการเลือกวิธีการแบ่งข้อมูลเพื่อวัดประสิทธิภาพของ
โมเดลแล้ว ตารางที่ใช้วัดประสิทธิภาพหรือแสดงผลลัพธ์ของการ
ทานายดว้ ยโมเดลนั้น ๆ คือ ตาราง Confusion Matrix ดังตารางท่ี
2-1

39

ตารางท่ี 2-1 แสดง Confusion Matrix
Accuracy 80.28% +/-9.86% (micro average: 80.29%)

True YES True NO Class
precision

Pred. YES 76 20 79.17%
TP FP

Pred. NO 21 91 81.25%
FN TN

Class recall 78.35% 81.98%
เมอ่ื True Positive (TP) คือ การทานายตรงกับสงิ่ ท่ี

เกดิ ขนึ้ จริง ในกรณที ่ีทานายว่าเปน็ จรงิ และสง่ิ ทเี่ กดิ ขึ้นคือ จรงิ
True Negative (TN) คือ การทานายตรงกับสิ่งทีเ่ กิดข้ึน

ในกรณที ่ีทานายวา่ ไมเ่ ป็นจรงิ และสง่ิ ที่เกดิ ข้ึน คือ ไม่จรงิ
False Positive (FP) คือ การทานายไม่ตรงกับสิ่งท่ีเกดิ ข้นึ

คอื ทานายว่า จริง แต่ส่ิงทเ่ี กิดขึ้น คอื ไมจ่ รงิ
False Negative (FN) คอื การทานายไม่ตรงกับทเ่ี กดิ ขนึ้

จริง คอื ทานายวา่ ไมจ่ ริง แตส่ ่ิงทเี่ กิดขึน้ คือ จรงิ
ซง่ึ จากผลของตาราง Confusion Matrix สามารถหา

ประสทิ ธิภาพของโมเดลได้ดงั วิธกี ารตอ่ ไปนี้ คือ

40

1. Accuracy คือ การวัดความถกู ต้องโดยพิจารณาทุก
กล่มุ ทใ่ี ห้คา่ ความถกู ต้องท้ังหมด หรือความถกู ต้องท่ีเราทายไดต้ รง
กบั สงิ่ ทเ่ี กิดขนึ้ จริง ซึ่งคานวณได้จากสูตร

Accuracy

 จานวนขอ้ มู ลทพี่ ยากรณ ถ์ กู ต้องทุกกลมุ่  x 100
จานวนขอ้ มู ลทงั้ หมดทุ กกลมุ่

จากตาราง

แสดงว่าโมเดลสามารถทานายถูก=
2. Precision ห รื อ Positive Predictive Value คื อ
ความเท่ียงตรงหรือความแม่นยา หมายถึงจานวนข้อมูลท่ีโมเดล
สามารถทานายได้ถูกต้องในกลุ่มที่พิจารณา ส่วนด้วยจานวนข้อมูล
ทัง้ หมดทโ่ี มเดลทานายถกู และผดิ ดังสมการ

41

กลุ่มท่ี 1

 จานวนขอ้ มู ลที่มีผลพย ากรณ์ถกู ต้ อง  x 100
จานวนขอ้ มู ลทัง้ หมดใน กลมุ่ คาตอบ

หรอื

ผลจากตาราง

3. Recall คอื ค่าความระลึกหรือความไว หมายถึง จานวน
ขอ้ มลู ท่ีทานายไดถ้ ูกต้องในกลมุ่ ที่ต้องการ

คา่ Recall ของกลุ่มท่ี 1

 จานวนขอ้ มู ลทีม่ ีผลกา รพยากรณ์ถู กต้อง  x 100
จานวนขอ้ มู ลทง้ั หมดใน กลมุ่ เป้าห มาย 1

หรอื

42

ผลจากตาราง

4. F1-score (F-measure) คือค่าเฉล่ยี ระหว่าง
precision และ recall เพอื่ เปน็ ตวั วัดประสิทธภิ าพโดยรวมของคา่
precision และ recall ดงั สมการ

5. Receiver operating characteristic curve (ROC
curve) คือกราฟความสัมพันธ์ระหว่างแกน x และ y โดยท่ีแกน x
คือ false positive rate แกน y คือ true positive rate เป็นค่าท่ี
ถูกใช้ในการบ่งบอกความถูกต้องของการพยากรณ์ (ภาพท่ี 2-7) ซึ่ง
ถ้ามีค่าใกล้ 1 แสดงว่ามีประสิทธิภาพดี และถ้าพ้ืนที่ใต้โค้ง ROC

43

หรือท่ีเรียกว่า AUC (Area under the ROC curve) มีค่ามาก
แสดงวา่ ตวั แบบนน้ั มีความถกู ตอ้ งมาก

ทัง้ น้ีในกรณที ่คี ่า AUC มคี ่าเข้าใกล้ 1 แสดงวา่ มปี ระสิทธิภาพดี
ซึ่งการแปลผลคือ

AUC > 0.9 โมเดลทางานได้มีประสิทธภิ าพสูงมาก
AUC > 0.8 โมเดลทางานได้มีประสทิ ธิภาพดี
AUC > 0.7 โมเดลมปี ระสิทธิภาพอยู่ในเกณฑ์มาตรฐานสาหรบั
โมเดลสว่ นใหญ่หรอื ระดบั ปานกลาง
AUC >0.6 โมเดลมีประสิทธิภาพตา่
AUC > 0.5 โมเดลมปี ระสิทธิภาพตา่ มาก
AUC < 0.5 ไมส่ มควรใชโ้ มเดลน้ี

ภาพที่ 2-7 กราฟแสดง Receiver operating characteristic
curve (ROC) และพ้ืนท่ี Area under the ROC curve (AUC)

44

การวดั ประสทิ ธิภาพแบบจาลองการถดถอยเชิงเส้น
(Regression)

1. Mean Absolute Error (MAE) คือ ผลรวมของค่า
absolute(error) แล้วคูณกบั 1/n เพอื่ เปลี่ยนเป็น
ค่าเฉลย่ี

2. Mean Squared Error (MSE) จะคล้ายกับ MAE
แคเ่ ปลย่ี นจากการทา absolute เป็น squared (ยก
กาลังสองค่า error) ก่อนหาค่าเฉลย่ี

3. Root Mean Square Error (RMSE) คือการทา
square root คา่ MSE เพื่อให้ไดค้ ่า loss ทมี่ หี นว่ ย
เดยี วกบั ตัวแปร y

ค่า MAE, MSE, RMSE มีค่ายิง่ ต่ายิ่งดี ถา้ เท่ากับ 0 แปลว่า
โมเดลทานายค่า y ได้ถูกต้อง 100% ซึ่งในทางปฏิบัติโอกาสท่ีจะ
เกิดขึ้นน้อยมาก และอาจนาไปสู่ปัญหา Overfitting ได้ ทั้งนี้การ
เกิด Overfitting คือการท่ีโมเดลมีความแม่นยาในการทานายสูง

45

มากเม่ือใช้กับข้อมูลท่ีใช้ฝึก แต่เม่ือนาไปใช้งานจริงกับข้อมูล
ทดสอบกลบั ได้ผลในการทานายต่า

4. R-Squared (R2) คือคา่ สัมประสทิ ธิแ์ สดงการ
ตดั สนิ ใจ (Coefficient of Determination)

ทั้งนี้คา่ ถา้ มีค่าใกล้ 1 จะถอื ว่ามีประสิทธิภาพมาก
หรือการทานายมคี วามแมน่ ยาสูง แตก่ รณีเทา่ กับ 1 อาจมีปัญหา
เรอ่ื ง Overfittingไดเ้ ชน่ กัน


Click to View FlipBook Version