รายงานเร่ือง เทคนิคการจัดกลุม่ (Clustering)
จัดทำโดย
นายพรี ศกั ดิ์ ศรีสองเมือง รหสั นกั ศึกษา 64644401013
เสนอ
อาจารย์ ดร.อณุ นดาทร มูลเพ็ญ
รายงานนี้เป็นสว่ นหนง่ึ ของรายวชิ าหลกั การเขยี นโปรแกรมและอัลกอริทึมทางธุรกิจ (BDT1140)
คณะบริหารธรุ กิจและการบัญชี สาขาวิชาเทคโนโลยีดิจิทลั ทางธรุ กจิ
ภาคเรยี นที่ 2 ปีการศึกษา 2565
ก
คำนำ
รายงานเล่มนี้จัดทำขึ้นเพื่อเป็นส่วนหนึ่งของรายวิชา เทคนิคทำเหมืองข้อมูลทางธุรกิจ
(BDT2107) เพื่อให้ได้ศึกษาหาความรู้ในเรื่องวิวัฒนาการของภาษาคอมพิวเตอร์และได้ศึกษาอย่างเข้าใจ
เพอื่ เปน็ ประโยชนก์ บั การเรียน
ผู้จัดทำหวังว่า รายงานเล่มนี้จะเป็นประโยชน์กับผู้อ่าน หรือนักเรียน นักศึกษา ที่กำลังหาข้อมูล
เรื่องนอี้ ยู่ หากมีข้อแนะนำหรือขอ้ ผดิ พลาดประการใด ผู้จดั ทำขอนอ้ มรับไวแ้ ละขออภัยมา ณ ทน่ี ้ดี ว้ ย
ผู้จัดทำ
นายพีรศักดิ์ ศรสี องเมอื ง
ข
สารบัญ
เร่ือง หน้า
คำนำ .......................................................................................................................................................ก
สารบัญ ....................................................................................................................................................ข
เทคนิคการจัดกลมุ่ (Clustering)..............................................................................................................1
ความหมายของการจัดกลุ่มด้วยเทคนคิ Cluster Analysis.......................................................................1
วตั ถุประสงค์ของ Cluster Analysis.........................................................................................................1
1. การจัดกลมุ่ แบบ K-means Clustering...............................................................................................2
2. การจดั กลมุ่ แบบลำดบั ชน้ั Hierarchical Clustering ...........................................................................3
3. การจดั กลมุ่ แบบสุ่ม Random Clustering ..........................................................................................3
4. การจัดกลมุ่ แบบ DBSCAN...................................................................................................................3
ตัวอยา่ งการใชโ้ ปรแกรม RapidMiner Studio ........................................................................................5
1. การจดั กลุ่มแบบ K-means Clustering ..........................................................................................6
2. การจดั กลุ่มแบบลำดบั ชั้น Hierarchical Clustering.......................................................................7
3. การจดั กลุ่มแบบสุ่ม Random Clustering ......................................................................................7
4. การจัดกลมุ่ แบบ DBSCAN...............................................................................................................8
อ้างอิง ......................................................................................................................................................9
เทคนคิ การจัดกลมุ่ (Clustering)
เทคนิคการจัดกลุ่ม (Clustering) ตามหลักการของการขุดค้นข้อมูล (Data Mining) จะต่างกับ
การแบง่ กลุม่ ในเชงิ สถิติ เนื่องจากการแบ่งกลุ่มทางสถติ ิ จะหมายถงึ การทำการสุ่มข้อมูล(Sampling) เช่น
มีข้อมูลอยู่ 30 กลุ่มซึ่งมีลักษณะไม่แตกต่างกันมาก ก็จะแบ่งกลุ่มโดยวิธีการสุ่มใช้ข้อมูลเพียงบางกลุ่ม
เทา่ นัน้ สว่ นการทำการแบ่งกลมุ่ ทางดา้ นการขดุ ค้นข้อมูลน้นั จะหมายถงึ การแบ่งกล่มุ ที่ต้องใช้ข้อมูลของ
ทุกกลุ่มในการหาจุดเด่นของแต่ละกลุ่มออกมาให้เห็นอย่างชัดเจน เพื่อได้มาซึ่งลักษณะเฉพาะของกลุ่ม
นัน้ ๆ
ความหมายของการจัดกลุ่มด้วยเทคนิค Cluster Analysis
Cluster Analysis เป็นเทคนิคท่ีใช้จำแนกหรอื แบง่ Case (หมายถงึ คน สตั ว์ ส่ิงของ หรือ องค์กร
ฯลฯ) หรือแบ่งตัวแปรออกเป็นกลุ่มย่อย ๆ ตั้งแต่ 2 กลุ่มขึ้นไป Case ที่อยู่ในกลุ่มเดียวกันจะมีลกั ษณะที่
เหมอื นกนั หรือคล้ายกัน สว่ น Case ทีอ่ ยูต่ ่างกลุม่ กัน จะมลี ักษณะท่แี ตกต่างกัน ดังนัน้ การพิจารณาเลือก
ลกั ษณะหรือตัวแปรทจี่ ะนำมาใช้ในการแบ่งกล่มุ Case จึงมคี วามสำคัญ นอกจากนั้น Case ใด Case หนึง่
จะต้องอยู่ในกลุ่มหนึ่งเพียงกลุ่มเดียวถ้านำเทคนิค Cluster Analysis มาใช้ในการแบ่งกลุ่มตัวแปร จะให้
ตัวแปรอยู่ในกลุ่มเดียวกันมีความสัมพันธ์กันมากกว่าตัวแปรที่อยู่ต่างกลุ่มกัน ตัวแปรที่อยู่ต่างกลุ่มกันมี
ความสัมพันธ์กันน้อยหรือไม่มีความสัมพันธ์กันเลย ส่วนใหญ่การแบ่งกลุ่มตัวแปรจะใช้เทคนิค Factor
สว่ นการแบง่ กลุ่ม Case (คน สตั ว์ สิ่งของ) จะใชเ้ ทคนิค Cluster Analysis
วตั ถปุ ระสงค์ของ Cluster Analysis
เพื่อการลดขนาดข้อมูล (data reduction) ด้วยเทคนิคที่แม่นยำและมีประสิทธิภาพเป็นอีก
แนวทางหนงึ่ เพ่ือจดั การกบั ปญั หาดงั กล่าว หลกั การทส่ี ำคญั ของการลดขนาดข้อมลู คือ การทำให้ข้อมลู ต้ัง
ต้นมีขนาดลดลงโดยสูญเสียลักษณะสำคัญของข้อมูลน้อยที่สุด เนื่องจากข้อมูลแต่ละตัวจะมีความสำคัญ
ตอ่ การจัดกลุ่มข้อมลู ไมเ่ ทา่ กัน ด้วยเทคนคิ การเลือกข้อมลู ที่ดจี ะ ทำให้สามารถเลอื กข้อมลู ท่ีมีความสำคัญ
และสามารถใช้เป็นตัวแทนของข้อมูลส่วนใหญ่ได้ ขอ้ มลู ท่มี กี ารรวมกลมุ่ กนั อยา่ งหนาแน่นจะเป็นข้อมูลที่มี
ความสำคัญตอ่ การจัดกลุ่มข้อมูลในอนาคต
1. ความต้องการทางด้านข้อมูล สำหรบั การวเิ คราะหจ์ ัดกล่มุ หน่วยวเิ คราะห์ ผู้วิจัยอาจใช้ข้อมูลท่ี
ระบุหน่วยวเิ คราะหแ์ ละตวั แปรตามทจ่ี ัดเกบ็ มาไดเ้ ลย เชน่ การวิเคราะหท์ ไ่ี ด้ กล่าวมาแลว้ ขอ้ งตน้ ส่วน
2
การวิเคราะห์จัดกลุ่มตัวแปร ผู้วิจัยไม่อาจจะใช้แฟ้มข้อมูลดังกล่าวได้โดยใช้เมตริกแ สดงความสัมพันธ์
ระหวา่ งตวั แปรแทนได้
2. แนวคดิ พนื้ ฐาน สง่ิ สำคญั ท่ีสุดของการวเิ คราะห์การจัดกลุ่มคือ ตวั แปรท่ีใช้หากผู้วิจัยไม่ได้เก็บ
ข้อมูลเกี่ยวกับตัวแปรที่สำคัญ ๆ ผลที่ได้ก็จะไม่ดีหรือทำให้ไขว้เขวได้ ทั้งนี้เพราะตัวแปรที่เลือกไว้ตั้งแต่
แรกจะเปน็ สิ่งที่กำหนดคุณสมบัติของสิ่งทร่ี ะบุความเปน็ กลุ่มย่อย เช่นในการจดั กลุ่มโรงเรียนในเมือง หาก
ผวู้ จิ ยั ไม่เกบ็ ขอ้ มูลเกีย่ วกับจำนวนนักเรยี นและครู ขนาดของโรงเรยี นก็ไมอ่ าจเป็นเกณฑใ์ นการแบ่งกลุม่ ได้
3. ความคล้ายกันของหน่วย ความคิดเกี่ยวกับความคล้ายของหน่วยศึกษาเป็นเทคนิคของกา ร
วิเคราะห์ทางสถิติหลายวิธี โดยทั่วไปการวัดความคล้ายจะพิจารณาจากความห่างระหว่างวัตถุ หรือ
พิจารณาจากความคล้ายกัน ซง่ึ จะกลา่ วโดยละเอยี ดในหัวขอ้ ต่อไป
4.การวัดความห่าง วิธีการวัดความห่างสามารถวัดได้หลายวิธี วิธีการหนึ่งที่นิยมวัดกันมากก็คือ
วธิ ีท่เี รยี กวา่ ระยะหา่ งเชงิ ยูคลิดยกกำลังสอง (Squared Euclidean distance) คือ ผลรวมของผลต่างยก
กำลังสองของทุกตัวแปร เช่น ต้องการดูความห่างกันของเบียร์ 2 ย่ีหอ้ ซงึ่ ทราบราคา
1. การจดั กลมุ่ แบบ K-means Clustering
K-means คือ หนึ่งในอัลกอริทึมเทคนิคการเรียนรู้โดยไม่มีผู้สอนที่ง่ายที่สุด เพราะเป็นการ
แก้ปัญหาการจัดกลุ่มที่รู้จักกันทั่วไป โดยอัลกอริทึม K-Means จะตัดแบ่ง (Partition) วัตถุออกเป็น K
กลุ่ม โดยแทนแต่ละกลุ่มด้วยค่าเฉลี่ยของกลุ่ม ซึ่งใช้เป็นจุดศูนย์กลาง (centroid) ของกลุ่มในการวัด
ระยะห่างของข้อมูลในกลุ่มเดียวกัน ในขั้นแรกของการจัดกลุ่มโดยการหาค่าเฉลี่ยแบบเคย์ต้องกำหนด
จำนวนกลุ่ม (K) ที่ต้องการ และกำหนดจุดศูนย์กลางเริ่มต้นจำนวน K จุด สิ่งสำคัญในการกำหนดจุด
ศนู ย์กลางเรม่ิ ต้นของแต่ละกลมุ่ น้ี ควรจะถูกกำหนดดว้ ยวธิ ีทเี่ หมาะสม เพราะตำแหน่งจุดศูนยก์ ลางเริ่มต้น
ที่แตกต่างกันทำให้ได้ผลลัพธส์ ุดท้ายแตกต่างกัน ดังน้นั ในทางที่ดคี วรจะกำหนดจุดศูนย์กลางนี้ให้หางจาก
จุดศนู ยก์ ลางอืน่ ๆ ข้นั ตอนต่อไปคือสร้างกลุ่มข้อมลู และความสัมพันธ์กบั จุดศูนย์กลางท่ีใกล้มากท่ีสุด โดย
แตล่ ะจดุ จะถูกกำหนดไปยังจุดศูนย์กลางท่ีใกล้เคียงท่สี ุดจนครบหมดทุกจุด และคำนวณจุดศูนย์กลางใหม่
โดยการหาค่าเฉลี่ยทุกวัตถุที่อยู่ในกลุ่ม หากจุดศูนย์กลางในแต่ละกลุ่มถูกเปลี่ยนตำแหน่ง จะได้จุดมี
ความสมั พนั ธก์ บั กลุ่มใหมแ่ ละใกล้กับจุดศูนย์กลางใหม่ ทำซ้ำแบบนีไ้ ปเร่อื ย ๆ จะสังเกตเห็นวา่ ผลลพั ธจ์ าก
การทำซ้ำแบบนี้ทำให้จุดศนู ย์กลางเปล่ยี นตำแหนง่ ทุกรอบ จนกระทง่ั จดุ ศูนย์กลางจำนวน K จุด ไม่มีการ
เปล่ยี นแปลงจงึ จะสน้ิ สุดกระบวนการ
3
2. การจัดกลุ่มแบบลำดบั ชน้ั Hierarchical Clustering
การแบ่งกลุ่มประเภทนี้จะสร้างให้เกิดต้นไม้ของกลุ่มข้อมูลขึ้น เหมาะสำหรับข้อมูลที่มีลำดับชั้น เช่น
อนุกรมวิธาน (Taxonomy) การแบ่งกลุ่มลักษณะนี้มี 2 ประเภท คือ ล่างขึ้นบน (Agglomerative) และ
บนลงลา่ ง (Divisive) ดงั น้ี
2.1. Agglomerative – ในเริ่มแรก data point นั้นนับเป็นหนึ่ง cluster จากนั้นจะคำนวณหา
ค่าความใกล้ชิด cluster ที่อยู่ใกล้กันจะถูกจับรวมตัวกัน และจะวนทำเช่นนี้ไปเรื่อย ๆ จนกว่าจะ
กลายเป็น cluster เดยี วในทสี่ ดุ แผนภาพทถ่ี ูกใช้นำเสนอการทำ cluster เช่นน้ี คือ Dendrogram
2.2 Divisive – เทคนิคนี้จะทำตรงกันข้ามกับ Agglomerative คือเริ่มจาก cluster กลุ่มใหญ่
กลมุ่ เดยี ว และแยกกลุม่ ท่ีไมเ่ หมอื นกนั ออกไปเรื่อย ๆ จะเปน็ เปน็ n กลมุ่ ท่แี ยกต่อไม่ได้แลว้
ตัวอยา่ งกนั ใชง้ าน เชน่ การแบง่ กลุ่มพืช หรอื สิง่ มชี ีวติ , การแบ่งกลุ่มสนิ ค้า ดว้ ยวิธีนี้เราใช้คลัสเตอร์ขนาด
ใหญ่และเริม่ แตกออกเป็นคลัสเตอร์ขนาดเล็กจนกวา่ จะถึงจดุ ข้อมูลแตล่ ะจดุ (หรอื คลัสเตอรจ์ ุดเดียว)
ตวั อยา่ งกนั ใช้งาน เชน่ การแบ่งกลมุ่ พชื หรอื ส่ิงมีชีวติ , การแบง่ กล่มุ สินค้า การทำ clustering มี
หลากหลายวิธี แต่ 4 ตัวอย่างที่ยกมานี้เป็นการแบ่ง cluster ที่พบได้ทั่วไป เราควรเลือกใช้การแบ่ง
cluster ประเภทใดนั้นขึ้นอยู่กับโจทย์ของเรา เมื่อเราแบ่ง cluster แล้ว ขั้นตอนต่อไปคือการประเมิน
cluster ที่เราแบ่ง ว่ามีคุณภาพเป็นอย่างไร แล้วเราจะสามารถปรับ parameters เพื่อให้ดีขึ้นได้แค่ไหน
เราจะอธบิ ายเร่อื งน้ีในโอกาสตอ่ ไปครบั
3. การจดั กลุ่มแบบสุ่ม Random Clustering
การจัดกลุ่มแบบสุ่ม คือ การเปลี่ยนแปลงจานวนและขนาดของกลุ่ม วิธีการนี้เครื่องมือ เรียนรู้
จากตัวอย่างต้นแบบแล้วฝึกให้ระบบคิดแก้ไขปัญหา วิธีการจะส่งการท างานผ่านโหนดตา่ งๆ ตามล าดับ
ช้ันกระจายอยูใ่ นโครงสร้าง
4. การจัดกล่มุ แบบ DBSCAN
DBSCAN คืออะไร ทำหน้าที่ยังไง ในส่วนของคำว่า DBSCAN ชื่อเต็มๆก็คือ Density-based
spatial clustering of applications with noise (การจัดกลุ่มเชิงพื้นที่ตามความหนาแน่นของแอป
พลิเคชันพร้อมเสียงรบกวน) ถ้าพูดถึงการจัดกลุ่มแล้ว DBSCAN จะมีส่วนเกี่ยวข้องยังไงกับ Clustering
สามารถอ่านเพิ่มเติมไดบ้ ริเวณด้านล่างเลยครบั DBSCAN หรอื
4
ก็คือ Density-based spatial clustering of applications with noise การหาบริเวณขอ้ มลู ท่ีอยู่รวมกนั
เป็นกล่มุ โดยจะหากลุ่มข้อมลู ได้จากการคำนวณท่เี กิดจาก Data Point หรือจดุ ที่ข้อมูลแสดงทอี่ ยู่รอบรศั มี
วงกลมสว่ นการทำงานของ DBSCAN น้ันจะใช้ 2 parameter เพื่อหากลมุ่ ขอ้ มูล
4.1 eps = รัศมีจากจดุ ศูนย์กลางวงกลม
4.2 MinPts = จำนวน Data point ขั้นตำ่ ในการกำหนด center
MinPts = 6
ตำแหนง่ x คือ Core point และ MinPts จากภาพจะมี Neighbor point 6 จุด
5
วิธีการแบง่ กลุ่มข้อมูลและลดปัญหาความผดิ พลาดของข้อมูลคำอธบิ ายแตล่ ะตวั อักษร x y z , n
ตำแหนง่ x คือ Core point มี Neighbor point 6 จดุ
ตำแหน่ง y คือ Border มี Neighbor point ไม่ถึง 6 จุดแต่อยู่ในรัศมขี อง Core point x
ตำแหน่ง z คอื Border มี Neighbor point ไม่ถงึ 6 จุดแต่อยูใ่ นรศั มีของ Core point y ซง่ึ y นน้ั กอ็ ยใู่ น
รัศมี z นบั เป็นกลมุ่ ข้อมลู เดียวกนั กบั x และ y
ตำแหนง่ n คือ ค่าทผ่ี ดิ ปกตเิ พราะจดุ น้ันไม่อยใู่ นรัศมีของ x y z เลยขอ้ มลู สว่ นน้ีเลยตดั ออกไปไมน่ ับเป็น
กลุ่มเดยี วกันกบั x y z DBSCAN คอื การหาบริเวณข้อมลู ท่ีอยู่รวมกันเปน็ กล่มุ โดยจะหากล่มุ ข้อมลู ไดจ้ าก
การคำนวณที่เกดิ จาก Data Pointและเป็นหน่ึง Algorithm ท่มี กี ารจัดการกลมุ่ ข้อมลู แบบ Clustering
รวมไปถึงการแสดงข้อมลู นั้นจะมีรูปรา่ งทแ่ี ตกต่างกับ K-mean และลดปญั หาข้อมลู ที่ผดิ พลาดออกไป
ตัวอยา่ งการใชโ้ ปรแกรม RapidMiner Studio
ขนั้ ตอนแรกคือ Import ข้อมูลเขา้ โปรแกรม RapidMiner Studio
6
1. การจดั กลมุ่ แบบ K-means Clustering
1.1 กำรจดั กลุ่มแบบ K-means Clustering
1.2 นำขอ้ มูลตัวอยา่ ง Ex_tourist มาวางแลว้ เลือก Normailize
1.3 ทำการเลือก Attribute ของข้อมลู
1.4 จากนน้ั เลือกตัว K-Means Clustering มาทำการจดั กลุม่ เลอื กตัว Performance (Cluster
distance) มาทำการวิเคราะห์
7
2. การจัดกล่มุ แบบลำดบั ช้นั Hierarchical Clustering
2.1 นำขอ้ มูลตัวอยา่ ง Ex_tourist มาวางแล้วเลือก Select Attributes
2.2 ทำาการเลือก Attribute ของข้อมูล
2.3 จากนน้ั เลือกตวั Agglomerative Clustering และ K-Means Clustering มาทำการจดั กล่มุ
2.4 เลือกตวั Performance (Cluster distance) มาทำการวเิ คราะห์
3. การจดั กลุม่ แบบสมุ่ Random Clustering
8
3.1 นำขอ้ มลู ตวั อยา่ ง Ex_tourist มาวางแลว้ เลือก Select Attributes
3.2 ทำาการเลือก Attribute ของขอ้ มูล
3.3 จากนน้ั เลือกตัว Random Clustering และ K-Means Clustering มาทำการจดั กลุ่ม
3.4 เลือกตัว Performance (Cluster distance) มาท าการวเิ คราะห์
4. การจัดกลมุ่ แบบ DBSCAN
4.1 นำขอ้ มลู ตัวอยา่ ง Ex_tourist มาวางแล้วเลือก Select Attributes
4.2 ทำการเลือก Attribute ของข้อมลู
4.3 จากน้นั เลอื กตัว DBSCAN Clustering และ K-Means Clustering มาทำการจัดกลุ่ม
4.4 เลือกตัว Performance (Cluster distance) มาทำการวิเคราะห์ ทำาการปรับพารามิเตอร์
ทั้ง 4 เทคนิคการจดั กลุ่มให้เปน็ 2 – 7 แล้วรันดผู ลวเิ คราะห์
จากผลการวิเคราะห์พบว่าการปรับพารามิเตอร์ที่ 4 เป็นผลผลลัพธ์ที่ดีทีส่ ุดโดยสามารถ เลือกใช้
เทคนคิ การจัดกลุ่มได้ 3 เทคนคิ ไดแ้ ก่ Herical,Random และ DBSCAN เหมาะสมในการจัด กลุ่มข้อมูลน้ี
เพราะมคี ่าผลผลลัพธ์นอ้ ยสุด
9
อ้างอิง
อ้างอิง
ความหมายเทคนคิ Cluster Analysis
แหล่งท่ีมา https://datamining-techniques.blogspot.com/2012/09/clustering.html
การจดั กลมุ่ แบบ K-means Clustering
แหลง่ ท่มี า https://datamining-techniques.blogspot.com/2012/09/k-means-k-means-
clustering.html
การจดั กลุ่มแบบสุม่ Random Clustering
แหล่งทม่ี า https://www.sites.google.com/site/bbbenjamas21/prapheth-khxng-kar-sum-
klum-tawxyang
การจัดกล่มุ แบบ DBSCAN
แหลง่ ทม่ี า https://shorturl.asia/qJaBn