คู่มืออธิบายการทำคลัสเตอร์ในเหมืองข้อมูล – คำจำกัดความ แอปพลิเคชัน และอัลกอริทึม

เผยแพร่แล้ว: 2021-02-25

สารบัญ

บทนำ – การทำเหมืองข้อมูลและการทำคลัสเตอร์คืออะไร?

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

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

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

ทำไมต้องใช้คลัสเตอร์? – การใช้คลัสเตอร์

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

กรณีการใช้งานจริงของการทำคลัสเตอร์ – แอปพลิเคชัน

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

วิธีการจัดกลุ่มประเภทต่างๆ – อัลกอริธึม

1. วิธีการจัดกลุ่มแบบลำดับชั้น

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

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

  • การ เชื่อมโยงเดียว – ระยะห่างระหว่างสองคลัสเตอร์จะแสดงด้วยระยะทางที่สั้นที่สุดระหว่างจุดในสองคลัสเตอร์นั้น
  • การ เชื่อมโยงที่สมบูรณ์ – ระยะห่างระหว่างสองคลัสเตอร์นั้นแสดงด้วยระยะห่างสูงสุดระหว่างจุดในสองคลัสเตอร์นั้น
  • การ เชื่อมโยงเฉลี่ย – ระยะห่างระหว่างสองคลัสเตอร์นั้นแสดงโดยการคำนวณระยะทางเฉลี่ยระหว่างจุดในสองคลัสเตอร์นั้น

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

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

2. วิธีการจัดกลุ่มการแบ่งพาร์ติชัน

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

  • K-หมายถึงการจัดกลุ่ม

K-Means ใช้ตัววัดระยะทาง เช่น ระยะทางแมนฮัตตัน ระยะทางแบบยุคลิด ฯลฯ เพื่อสร้างจำนวนคลัสเตอร์ที่ระบุ มันคำนวณระยะห่างระหว่างจุดข้อมูลและเซนทรอยด์ของคลัสเตอร์ จากนั้นจุดข้อมูลจะถูกกำหนดให้กับคลัสเตอร์ที่ใกล้ที่สุด และเซนทรอยด์ของคลัสเตอร์จะถูกคำนวณใหม่ การวนซ้ำดังกล่าวจะถูกทำซ้ำจนกว่าจำนวนการวนซ้ำที่กำหนดไว้ล่วงหน้าจะเสร็จสิ้นหรือเซนทรอยด์ของคลัสเตอร์ไม่เปลี่ยนแปลงหลังจากการวนซ้ำ

  • PAM (การแบ่งพาร์ติชันรอบ Medoids)

อัลกอรึทึม K-Medoid หรือที่เรียกว่าอัลกอริธึม K-Medoid การทำงานของอัลกอริธึมนี้คล้ายกับ K-Means มันแตกต่างจาก K-Means ในแง่ของการกำหนดศูนย์กลางของคลัสเตอร์ ใน PAM เส้นกลางของคลัสเตอร์เป็นจุดข้อมูลจริง ในขณะที่ K-Means จะคำนวณเซนทรอยด์ของจุดข้อมูลซึ่งอาจไม่ใช่พิกัดของจุดข้อมูลจริง ใน PAM จุดข้อมูล k จะถูกสุ่มเลือกเป็น medoid ของคลัสเตอร์ และคำนวณระยะทางระหว่างจุดข้อมูลทั้งหมดและ medoid ของคลัสเตอร์

อ่าน: Data Analytics vs Data Science

3. วิธีการจัดกลุ่มตามความหนาแน่น

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

  • DBSCAN (การจัดคลัสเตอร์เชิงพื้นที่ของแอปพลิเคชันที่มีเสียงรบกวนตามความหนาแน่น) : – DBSCAN สร้างคลัสเตอร์ตามระยะห่างของจุดข้อมูล มันจัดกลุ่มจุดข้อมูลที่อยู่ในละแวกเดียวกัน ในการพิจารณาเป็นคลัสเตอร์ จะต้องมีจุดข้อมูลจำนวนหนึ่งในภูมิภาคนั้น ต้องใช้พารามิเตอร์สองตัว - eps และจุดต่ำสุด - eps ระบุว่าจุดข้อมูลควรอยู่ใกล้เพียงใดเพื่อพิจารณาว่าเป็นเพื่อนบ้าน และจุดต่ำสุดคือจำนวนจุดข้อมูลที่ต้องอยู่ภายในภูมิภาคนั้นจึงจะถือเป็นคลัสเตอร์
  • OPTICS (จุดสั่งซื้อเพื่อระบุโครงสร้างคลัสเตอร์) : – เป็นการปรับเปลี่ยนอัลกอริทึม DBSCAN ข้อจำกัดอย่างหนึ่งของอัลกอริทึม DBSCAN คือการไม่สามารถสร้างคลัสเตอร์ที่มีความหมายได้เมื่อจุดข้อมูลกระจายเท่ากันในพื้นที่ข้อมูล เพื่อเอาชนะข้อจำกัดนี้ อัลกอริธึม OPTICS ต้องใช้พารามิเตอร์เพิ่มเติมอีก 2 ตัว นั่นคือ ระยะทางหลักและระยะที่สามารถเข้าถึงได้ ระยะทางหลักบ่งชี้ว่าจุดข้อมูลเป็นจุดหลักหรือไม่โดยกำหนดค่าให้จุดข้อมูลนั้น ระยะการเข้าถึงได้ถูกกำหนดให้เป็นระยะห่างสูงสุดของแกนและค่าของตัววัดระยะทางที่ใช้สำหรับคำนวณระยะห่างระหว่างจุดข้อมูลสองจุด

4. วิธีการจัดกลุ่มตามตาราง

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

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

5. วิธีการจัดกลุ่มตามแบบจำลอง

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

6. วิธีการจัดกลุ่มตามข้อจำกัด

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

แต่ในระหว่างกระบวนการนี้ เนื่องจากคลัสเตอร์ที่ก่อตัวขึ้นจะเน้นไปที่การตั้งค่าของผู้ใช้ จึงอาจไม่เกิดลักษณะพื้นฐานและคลัสเตอร์ที่ชาญฉลาดบางอย่าง อัลกอริทึมที่ปฏิบัติตามแนวทางนี้คือ COP K-Means, PCKMeans (Pairwise Constrained K-Means) และ CMWK-Means (Constrained Minkowski Weighted K-Means)

อ่านเพิ่มเติม: แนวคิดโครงการวิทยาศาสตร์ข้อมูล

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

บทสรุป

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

หากคุณอยากเรียนรู้เกี่ยวกับวิทยาศาสตร์ข้อมูล ลองดู Executive PG ของ IIIT-B & upGrad ใน Data Science ซึ่งสร้างขึ้นสำหรับมืออาชีพที่ทำงานและมีกรณีศึกษาและโครงการมากกว่า 10 แบบ เวิร์กช็อปภาคปฏิบัติ การให้คำปรึกษากับผู้เชี่ยวชาญในอุตสาหกรรม 1- on-1 กับที่ปรึกษาในอุตสาหกรรม การเรียนรู้มากกว่า 400 ชั่วโมงและความช่วยเหลือด้านงานกับบริษัทชั้นนำ

ข้อดีและข้อเสียของ Agglomerative Clustering คืออะไร?

AGNES เริ่มต้นด้วยการตระหนักว่าทุกจุดข้อมูลจะมีคลัสเตอร์ของตัวเอง และถึงแม้ว่าจะมีแถวข้อมูล n แถว อัลกอริทึมก็จะเริ่มต้นด้วย n คลัสเตอร์ จากนั้น กระจุกดาวที่คล้ายกันมากที่สุดซ้ำแล้วซ้ำเล่าจะรวมกันเป็นกระจุกขนาดใหญ่ขึ้น ขึ้นอยู่กับระยะทางที่วัดใน DIANA การวนซ้ำจะดำเนินการจนกว่าเราจะได้คลัสเตอร์ขนาดใหญ่กลุ่มเดียวที่มีจุดข้อมูลทั้งหมด
ข้อดี:
1. แม้ว่าผู้ใช้จะต้องกำหนดเกณฑ์การแบ่ง แต่ก็ไม่จำเป็นต้องมีความรู้เกี่ยวกับจำนวนคลัสเตอร์ก่อน
2. นำไปใช้ได้ง่ายกับข้อมูลประเภทต่างๆ และเป็นที่รู้จักในการสร้างผลลัพธ์ที่เชื่อถือได้สำหรับข้อมูลที่ได้รับจากแหล่งต่างๆ จึงทำให้มีการใช้งานที่หลากหลาย
ข้อเสีย:
1. การแบ่งคลัสเตอร์ (DIANA) หรือการรวมกัน (AGNES) ค่อนข้างเข้มงวด และเมื่อเสร็จแล้ว จะไม่สามารถย้อนกลับหรือมอบหมายใหม่ในการทำซ้ำหรือเรียกใช้ซ้ำในภายหลัง
2. มีความซับซ้อนทางเวลาสูงสำหรับจุดข้อมูลทั้งหมด n จุด ตามลำดับ O(n^2logn) ดังนั้นจึงไม่สามารถใช้กับชุดข้อมูลขนาดใหญ่ได้
3. ไม่สามารถจัดการกับสิ่งผิดปกติและเสียงรบกวนได้

ความคาดหวังสูงสุดใน GMM คืออะไร?

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

แอพพลิเคชั่นของคลัสเตอร์คืออะไร?

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