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


21

อัลกอริธึมการจัดกลุ่มและการลดขนาดแบบคลาสสิกส่วนใหญ่ (การจัดกลุ่มแบบลำดับชั้นการวิเคราะห์องค์ประกอบหลัก, k-mean, การจัดระเบียบแผนที่เอง ... ) ได้รับการออกแบบมาโดยเฉพาะสำหรับข้อมูลตัวเลขและข้อมูลอินพุตของพวกเขาถูกมองว่าเป็นจุด

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

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

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

มันง่ายมากและไม่เคยทำเลยดังนั้นฉันคิดว่ามันผิดมาก แต่ทุกคนสามารถบอกฉันได้ว่าทำไม และ / หรือให้ฉันอ้างอิงบางอย่าง? ขอบคุณ


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

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

การจัดกลุ่มตามลำดับชั้นทำงานด้วยความคล้ายคลึงกันใด ๆ btw (ยกเว้นบางกรณีเช่น Ward) - โดยเฉพาะคุณสามารถใช้เช่นค่าสัมประสิทธิ์ Jaccard ซึ่งมีความหมายสำหรับบางกรณี categorial / ไบนารี
Anony-Mousse - Reinstate Monica

คำตอบ:


5

มันไม่ได้เกี่ยวกับการที่จะไม่สามารถที่จะคำนวณบางสิ่งบางอย่าง

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

หากคุณมีขนาดของรองเท้าและมวลกายระยะทางแบบยุคลิดก็ไม่สมเหตุสมผลเช่นกัน เป็นเรื่องที่ดีเมื่อ x, y, z เป็นระยะทาง จากนั้นระยะทางแบบยุคลิดก็คือระยะสายตาระหว่างจุดต่าง ๆ

ทีนี้ถ้าคุณจำลองตัวแปรที่เข้ารหัสแล้วค่านี้จะให้ความหมายอะไร?

นอกจากนี้ระยะทางแบบยุคลิดก็ไม่สมเหตุสมผลเมื่อข้อมูลของคุณไม่ต่อเนื่อง

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

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

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


3

หัวใจสำคัญของปัญหาการทำคลัสเตอร์แบบอิงเมตริกเหล่านี้คือแนวคิดของการแก้ไข

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

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


1
ขอบคุณ! ฉันเข้าใจปัญหาการแก้ไข แต่ในหลาย ๆ แอปพลิเคชันไม่มีปัญหา (เช่นเมื่อเรารู้ว่ารถเมล์เป็นสีเขียวสีแดงหรือสีน้ำเงินและไม่มีสีอื่นอยู่ในชุดข้อมูลของเรา) และฉันคิดว่ามีวิธีง่าย ๆ ในการกำหนดมาตรฐานตัวแปรดัมมี่เพื่อให้ตัวแปรเด็ดขาดแต่ละตัวมี "น้ำหนัก" คล้ายกับของตัวแปรตัวเลขแต่ละตัว (หากตัวแปรตัวเลขนั้นเป็นมาตรฐานด้วยเช่นกัน) หรือจะกำหนดน้ำหนักโดยพลตัวแปรที่แตกต่างกัน ...
jubo

0

ปัญหาเกี่ยวกับค่าหมวดหมู่ที่ไม่ได้จัดระเบียบคือถ้าคุณจำลองการเข้ารหัสพวกคุณบังคับให้มีการสั่งซื้อและทำให้ความหมายใหม่กับตัวแปร เช่นถ้าคุณเข้ารหัสสีน้ำเงินเป็น 1 และสีส้มเป็น 2 และสีเขียว 3 คุณหมายความว่ารูปแบบข้อมูลที่มีค่าสีส้มอยู่ใกล้กับรูปแบบที่มีค่าสีเขียวมากกว่ารูปแบบที่มีค่าสีฟ้า

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

คุณไม่มีปัญหาเดียวกันกับ "คลาสความจุ" คือประเภทที่สั่งซื้อเนื่องจากในกรณีนั้นการกำหนดค่าตัวเลขทำให้รู้สึกได้

และแน่นอนว่าคุณใช้คุณสมบัติที่แตกต่างกันตามลักษณะหรือหน่วยการวัดหรือช่วงค่าที่แตกต่างกันดังนั้นคุณควรทำให้ค่าปกติเป็นมาตรฐาน

/programming/19507928/growing-self-organizing-map-for-mixed-type-data/19511894#19511894

/programming/13687256/is-it-right-to-normalize-data-and-or-weight-vectors-in-a-som/13693409#13693409


นั่นคือสิ่งที่ฉันหมายถึงโดย "การเข้ารหัสแบบจำลอง" สำหรับตัวแปรเด็ดขาด แต่ขอบคุณ และ btw ฉันไม่เห็นด้วยกับคำสั่งของคุณเกี่ยวกับปัจจัยที่สั่งซื้อ ("คลาสความจุ") เนื่องจากไม่มีวิธีให้เลือกเช่น (1,2,3) หรือ (1,2,100) ซึ่งจะสร้างความแตกต่างอย่างมากสำหรับอัลกอริทึมที่อิงตามระยะทาง
jubo

0

คำตอบนั้นง่ายมากเราแค่ต้องเข้าใจว่าข้อมูลในตัวแปรจำลองคืออะไร แนวคิดของตัวแปรดัมมี่แสดงถึงการมีอยู่หรือไม่มีระดับปัจจัย (ค่าแยกของตัวแปรหมวดหมู่) มันหมายถึงการแสดงบางสิ่งบางอย่างที่ไม่สามารถวัดได้และไม่สามารถวัดได้โดยการจัดเก็บข้อมูลว่ามีหรือไม่ นี่คือเหตุผลที่ตัวแปรดัมมี่แสดงเป็นเลขฐานสองซึ่งมีค่าไม่ต่อเนื่องของตัวแปรหมวดหมู่ที่มันแทน (หรือลบ 1)

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


1
ขอบคุณ! ที่จริงแล้วประเด็นของฉันคือว่าตัวแปรหมวดหมู่ที่เข้ารหัสแบบหลอกตาทำให้รู้สึกในระยะทางแบบยูคลิด: หากค่าแตกต่างกันมันจะบวก 2 กับระยะทางกำลังสองถ้าไม่เพิ่ม 0 และคุณสามารถทำให้ค่าเฉลี่ยของหุ่นแตกต่างกัน วิธีในการพิจารณาจำนวนหมวดหมู่หรือความน่าจะเป็น
jubo
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.