การวิเคราะห์คลัสเตอร์ใน R: คู่มือฉบับสมบูรณ์ที่คุณต้องการ [2022]

เผยแพร่แล้ว: 2021-01-04

หากคุณเคยก้าวแม้แต่ก้าวเดียวในโลกของ data science หรือ Python คุณจะเคยได้ยินเกี่ยวกับ R.

พัฒนาขึ้นเป็นโครงการ GNU R เป็นทั้งภาษาและสภาพแวดล้อมที่ออกแบบมาสำหรับกราฟิกและการคำนวณทางสถิติ มันคล้ายกับภาษา S ดังนั้นจึงถือได้ว่าเป็นการใช้งาน

ในภาษา R สามารถขยายได้อย่างมาก มีเทคนิคทางสถิติและกราฟิกที่หลากหลาย เช่น การวิเคราะห์อนุกรมเวลา การสร้างแบบจำลองเชิงเส้น การสร้างแบบจำลองแบบไม่เชิงเส้น การจัดกลุ่ม การจำแนกประเภท การทดสอบทางสถิติแบบคลาสสิก

เป็นหนึ่งในเทคนิคเหล่านี้ที่เราจะทำการสำรวจอย่างลึกซึ้งยิ่งขึ้น นั่นคือ การวิเคราะห์คลัสเตอร์หรือคลัสเตอร์!

สารบัญ

การวิเคราะห์คลัสเตอร์คืออะไร

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

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

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

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

  1. ไม่ทราบจำนวนของพวกเขาล่วงหน้า
  2. ได้มาจากการดำเนินการทางสถิติ
  3. แต่ละคลัสเตอร์มีอ็อบเจ็กต์ที่คล้ายคลึงและมีลักษณะทั่วไป

แม้จะไม่มีชื่อ 'แฟนซี' ของการวิเคราะห์คลัสเตอร์ แต่ก็มีการใช้สิ่งเดียวกันนี้ในชีวิตประจำวันเป็นจำนวนมาก

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

บริษัทต่างๆ ใช้การวิเคราะห์กลุ่มเช่นกัน เมื่อทำการแบ่งส่วนรายชื่ออีเมลและจัดหมวดหมู่ลูกค้าตามอายุ ภูมิหลังทางเศรษฐกิจ พฤติกรรมการซื้อก่อนหน้านี้ ฯลฯ

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

3 วิธีการจัดกลุ่ม

เรามีสามวิธีที่มักใช้สำหรับการจัดกลุ่ม เหล่านี้คือ:

  1. การจัดกลุ่มแบบลำดับชั้นแบบรวมกลุ่ม
  2. การจัดกลุ่มเชิงสัมพันธ์/ วิธี Condorcet
  3. k-หมายถึงการจัดกลุ่ม

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

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

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

การแสดงภาพและการวาดภาพแต่ละขั้นตอนของกระบวนการ AHC จะนำไปสู่การสร้างต้นไม้ที่เรียกว่า dendrogram

การย้อนกลับกระบวนการ AHC จะนำไปสู่การแบ่งกลุ่มและการสร้างคลัสเตอร์

เดนโดรแกรมยังสามารถแสดงเป็นภาพได้ดังนี้:

แหล่งที่มา

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

2. วิธีการจัดกลุ่มเชิงสัมพันธ์/ วิธี Condorcet

'การจัดกลุ่มโดยการรวมความคล้ายคลึงกัน' เป็นอีกชื่อหนึ่งสำหรับวิธีนี้ มันทำงานดังนี้:

มีการเปรียบเทียบแต่ละอ็อบเจ็กต์เป็นคู่ที่สร้างคลัสเตอร์ส่วนกลาง สำหรับเวกเตอร์ m(A, B) และ d(A, B) จะมีการกำหนดค่าแต่ละคู่ (A, B) ในเวกเตอร์ b(A, B) ทั้ง A และ B มีค่าเท่ากัน ในขณะที่ในเวกเตอร์ d(A, B) ทั้งคู่มีค่าต่างกัน)

ค่าแต่ละค่าของ A และ B ทั้งสองค่านั้นเป็นไปตามเกณฑ์ Condorcet ดังนี้:

c(A, B) = m(A, B)- d(A, B)

สำหรับค่าส่วนบุคคลเช่น A และคลัสเตอร์ที่เรียกว่า S เกณฑ์ Condorcet จะเป็นดังนี้:

c(A,S) = Σ ฉัน c(A,B ฉัน )

ผลรวมโดยรวมคือ Bi ∈ S

เมื่อปฏิบัติตามเงื่อนไขข้างต้นแล้ว จะมีการสร้างกลุ่มของรูปแบบ c(A, S) A สามารถมีค่าน้อยที่สุดเป็น 0 และเป็นจุดข้อมูลที่ใหญ่ที่สุดในคลัสเตอร์

ในที่สุด เกณฑ์ Condorcet ทั่วโลกจะถูกคำนวณ ทำได้โดยทำการรวมจุดข้อมูลแต่ละจุดที่มีอยู่ใน A และคลัสเตอร์ S A ที่มีจุดข้อมูลเหล่านี้

ขั้นตอนข้างต้นทำซ้ำจนกว่าเกณฑ์ Condorcet ทั่วโลกจะไม่ดีขึ้นหรือถึงจำนวนการทำซ้ำที่ใหญ่ที่สุด

3. k-หมายถึงการจัดกลุ่ม

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

  1. เลือก k กลุ่มโดยการสุ่ม k แถว เหล่านี้ จะหมายถึงการค้นหา k centroids สำหรับแต่ละคลัสเตอร์
  2. จากนั้นจุดข้อมูลแต่ละจุดจะถูกกำหนดให้กับเซนทรอยด์ที่ใกล้เคียงที่สุด
  3. เมื่อมีการกำหนดจุดข้อมูลมากขึ้นเรื่อยๆ เซนทรอยด์จะถูกคำนวณใหม่เป็นค่าเฉลี่ยของจุดข้อมูลทั้งหมด (กำลัง) ที่เพิ่มเข้ามา
  4. กำหนดจุดข้อมูลต่อไปและขยับเซนทรอยด์ตามต้องการ
  5. ทำซ้ำขั้นตอนที่ 3 และ 4 จนกว่าจะไม่มีจุดข้อมูลเปลี่ยนคลัสเตอร์

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

  1. ระยะทางแบบยุคลิด
  2. ระยะทางแมนฮัตตัน
  3. ระยะทางมินลอฟสกี้

ที่นิยมมากที่สุดของสิ่งเหล่านี้- ระยะทางแบบยุคลิด- คำนวณได้ดังนี้:

ทุกครั้งที่รันอัลกอริทึม ผลที่ได้คือกลุ่มต่างๆ การมอบหมายครั้งแรกให้กับตัวแปร k เป็นการสุ่มโดยสมบูรณ์ สิ่งนี้ทำให้ k-mean มีความอ่อนไหวต่อตัวเลือกแรกมาก ด้วยเหตุนี้ จึงแทบจะเป็นไปไม่ได้เลยที่จะจัดคลัสเตอร์เดียวกัน เว้นแต่ว่าจำนวนกลุ่มและการสังเกตโดยรวมจะมีน้อย

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

โดยที่ n คือจำนวนจุดข้อมูลในชุดข้อมูล

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

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

การประยุกต์ใช้การวิเคราะห์คลัสเตอร์

ดังนั้นวิธีการจัดกลุ่มที่มีประสิทธิภาพใช้ที่ไหน? เราได้กล่าวถึงตัวอย่างบางส่วนข้างต้นคร่าวๆ ด้านล่างนี้คือบางกรณีเพิ่มเติม:

ยาและสุขภาพ

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

สังคมวิทยา

ในแวดวงสังคม การรวมกลุ่มของผู้คนตามข้อมูลประชากร อายุ อาชีพ ที่ตั้งที่อยู่อาศัย ฯลฯ ช่วยให้รัฐบาลบังคับใช้กฎหมายและกำหนดนโยบายที่เหมาะสมกับกลุ่มที่หลากหลาย

การตลาด

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

โปรไฟล์ไซเบอร์

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

ค้าปลีก

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

บทสรุป

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

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

เตรียมความพร้อมสู่อาชีพแห่งอนาคต

PG DIPLOMA จาก IIIT-B, การเรียนในห้องเรียนมากกว่า 100 ชั่วโมง, การเรียนออนไลน์มากกว่า 400 ชั่วโมง & การสนับสนุนด้านอาชีพ 360 องศา
เรียนรู้เพิ่มเติม