มีวิธีการทำคลัสเตอร์แบบ "ไม่มีพารามิเตอร์" ซึ่งเราไม่จำเป็นต้องระบุจำนวนกลุ่มหรือไม่ และพารามิเตอร์อื่น ๆ เช่นจำนวนคะแนนต่อกลุ่มเป็นต้น
มีวิธีการทำคลัสเตอร์แบบ "ไม่มีพารามิเตอร์" ซึ่งเราไม่จำเป็นต้องระบุจำนวนกลุ่มหรือไม่ และพารามิเตอร์อื่น ๆ เช่นจำนวนคะแนนต่อกลุ่มเป็นต้น
คำตอบ:
อัลกอริทึมการทำคลัสเตอร์ที่คุณต้องระบุล่วงหน้าจำนวนกลุ่มเป็นส่วนน้อย มีอัลกอริธึมจำนวนมากที่ไม่เป็น มันยากที่จะสรุป มันเหมือนกับการขอคำอธิบายเกี่ยวกับสิ่งมีชีวิตที่ไม่ใช่แมว
อัลกอริทึมการจัดกลุ่มมักแบ่งออกเป็นอาณาจักรกว้าง ๆ :
อาจมีหมวดหมู่เพิ่มเติมและผู้คนสามารถไม่เห็นด้วยกับหมวดหมู่เหล่านี้และอัลกอริทึมใดที่อยู่ในหมวดหมู่ใดเพราะนี่เป็นปัญหา อย่างไรก็ตามสิ่งที่ชอบโครงการนี้เป็นเรื่องธรรมดา การทำงานจากสิ่งนี้เป็นเพียงวิธีการแบ่งพาร์ติชัน (1) ที่ต้องการข้อมูลจำเพาะเบื้องต้นของจำนวนกลุ่มเพื่อค้นหา ข้อมูลอื่นใดที่จำเป็นต้องมีการระบุไว้ล่วงหน้า (เช่นจำนวนคะแนนต่อกลุ่ม) และไม่ว่ามันจะสมเหตุสมผลหรือไม่ที่จะเรียกอัลกอริธึมที่แตกต่างกันของอัลกอริธึมต่างๆ
การจัดกลุ่มแบบลำดับชั้นไม่ต้องการให้คุณระบุจำนวนคลัสเตอร์ล่วงหน้าตามที่ k-mean ทำ แต่คุณเลือกจำนวนคลัสเตอร์จากเอาต์พุตของคุณ ในทางกลับกัน DBSCAN ไม่ต้องการเช่นกัน (แต่มันต้องการสเปคของคะแนนขั้นต่ำสำหรับ 'ละแวกใกล้เคียง' - แม้ว่าจะมีค่าเริ่มต้นดังนั้นในบางแง่มุมคุณสามารถข้ามการระบุสิ่งนั้นได้ จำนวนของรูปแบบในคลัสเตอร์) GMM ไม่ต้องการแม้แต่สามข้อใด ๆ แต่ต้องการสมมติฐานที่เกี่ยวกับกระบวนการสร้างข้อมูล เท่าที่ฉันรู้ไม่มีอัลกอริทึมการจัดกลุ่มที่ไม่ต้องการให้คุณระบุจำนวนของคลัสเตอร์จำนวนข้อมูลขั้นต่ำต่อคลัสเตอร์หรือรูปแบบ / การจัดเรียงของข้อมูลใด ๆ ภายในคลัสเตอร์ ฉันไม่เห็นว่าจะมี
มันอาจช่วยให้คุณอ่านภาพรวมของอัลกอริทึมการจัดกลุ่มประเภทต่างๆ ต่อไปนี้อาจเป็นสถานที่สำหรับเริ่มต้น:
Mclust
ใช้งานได้รับการออกแบบมาเพื่อปรับ BIC ให้เหมาะสม แต่สามารถใช้ AIC หรือลำดับของการทดสอบอัตราส่วนความน่าจะเป็น ฉันเดาว่าคุณสามารถเรียกมันว่า meta-algorithm, b / c มันมีขั้นตอนที่เป็นส่วนประกอบ (เช่น EM) แต่นั่นคืออัลกอริทึมที่คุณใช้ & ในอัตราใด ๆ คุณไม่จำเป็นต้องระบุ k ล่วงหน้า คุณสามารถเห็นได้อย่างชัดเจนในตัวอย่างที่เชื่อมโยงซึ่งฉันไม่ได้ระบุ k ไว้ล่วงหน้า
ตัวอย่างที่ง่ายที่สุดคือการจัดกลุ่มแบบลำดับชั้นที่คุณเปรียบเทียบแต่ละจุดกับจุดอื่น ๆ โดยใช้การวัดระยะทางจากนั้นเข้าร่วมคู่ที่มีระยะทางที่เล็กที่สุดในการสร้างจุดเชื่อมต่อหลอก (เช่นbและcทำให้bcเป็นรูปภาพ) ด้านล่าง) ถัดไปคุณทำซ้ำขั้นตอนโดยการเข้าร่วมจุดและหลอกจุดตามระยะทางตามลำดับของพวกเขาจนกว่าแต่ละจุดจะเข้าร่วมกับกราฟ
(ที่มา: https://en.wikipedia.org/wiki/Hierarchical_clustering )
กระบวนการไม่ใช่แบบพารามิเตอร์และสิ่งเดียวที่คุณต้องการคือการวัดระยะทาง ในที่สุดคุณจะต้องตัดสินใจว่าจะตัดต้นไม้กราฟที่สร้างขึ้นโดยใช้ขั้นตอนนี้ดังนั้นการตัดสินใจเกี่ยวกับจำนวนกลุ่มที่คาดหวังจะต้องทำ
วิธีการ "ปราศจากพารามิเตอร์" หมายความว่าคุณจะได้รับช็อตเด็ดครั้งเดียว (ยกเว้นการสุ่ม) โดยไม่มีความเป็นไปได้ในการปรับแต่ง
ตอนนี้การจัดกลุ่มเป็นเทคนิคการสำรวจ คุณต้องไม่สมมติว่ามีการจัดกลุ่ม "จริง"เดียว คุณควรสนใจสำรวจกลุ่มต่าง ๆ ของข้อมูลเดียวกันเพื่อเรียนรู้เพิ่มเติม การจัดกลุ่มเป็นกล่องดำนั้นไม่ได้ผลดีนัก
ตัวอย่างเช่นคุณต้องการที่จะสามารถปรับแต่งฟังก์ชั่นระยะทางที่ใช้ขึ้นอยู่กับข้อมูลของคุณ (นี่คือพารามิเตอร์!) หากผลลัพธ์นั้นหยาบเกินไปคุณต้องการที่จะได้ผลลัพธ์ที่ดีกว่าหรือถ้ามันดีเกินไป รับรุ่น coarser ของมัน
วิธีที่ดีที่สุดมักจะเป็นวิธีที่ให้คุณสำรวจผลลัพธ์ได้ดีเช่น dendrogram ในการจัดกลุ่มแบบลำดับชั้น จากนั้นคุณสามารถสำรวจโครงสร้างย่อยได้อย่างง่ายดาย
ตรวจสอบDirichlet รุ่นส่วนผสม พวกมันให้วิธีที่ดีในการทำความเข้าใจกับข้อมูลถ้าคุณไม่ทราบจำนวนกลุ่มล่วงหน้า อย่างไรก็ตามพวกเขาตั้งสมมติฐานเกี่ยวกับรูปร่างของกลุ่มซึ่งข้อมูลของคุณอาจละเมิด