เมื่อไหร่ที่จะใช้ระยะทางแมนฮัตตันเมื่อเทียบกับระยะทางแบบยุคลิด


18

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

สิ่งที่ใกล้เคียงผมพบว่าการโต้แย้งที่ดีเพื่อให้ห่างไกลในการบรรยายนี้เอ็มไอที

ที่ 36:15 คุณสามารถดูคำสั่งต่อไปนี้บนสไลด์:

"โดยทั่วไปใช้ตัวชี้วัดแบบยุคลิดแมนฮัตตันอาจเหมาะสมถ้าขนาดที่แตกต่างกันไม่สามารถเทียบเคียงได้ "

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

วิธีที่ดีกว่าในการแก้ปัญหาข้างต้นคือการทำให้ปกติคุณสมบัติ "จำนวนขา" ดังนั้นค่าของมันจะอยู่ระหว่าง 0 ถึง 1

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

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

คำตอบ:


4

จากบทความที่น่าสนใจนี้ระยะทางแมนฮัตตัน (ค่าปกติ L1) อาจจะดีกว่าระยะทางแบบยุคลิด (L2 แบบปกติ) สำหรับข้อมูลมิติสูง:

https://bib.dbvis.de/uploadedFiles/155.pdf

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


stats.stackexchange.com/a/99191ให้คำตอบแบบเต็ม
ไมค์

3

ฉันสามารถขอแนะนำความคิดคู่จากวิกิพีเดีย

  1. หากคุณต้องการให้ความสำคัญกับค่าผิดปกติน้อยกว่าระยะทางแมนฮัตตันจะพยายามลดข้อผิดพลาดทั้งหมดอย่างเท่าเทียมกันเนื่องจากการไล่ระดับสีมีขนาดคงที่
  2. หากเสียงของคุณมีการกระจาย Laplacian, MLE ที่พบโดยการลดประมาณการแมนฮัตตัน

3

ฉันพบบางสิ่งที่อาจเป็นสัญชาตญาณเกี่ยวกับปัญหานี้ในการเรียนรู้ของเครื่องบนมือกับ Scikit-Learn และ TensorFlow

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

  • การคำนวณรากของผลรวมของกำลังสอง (RMSE) สอดคล้องกับบรรทัดฐานของยูคลิด: มันเป็นแนวคิดเกี่ยวกับระยะทางที่คุณคุ้นเคย มันจะเรียกว่าบรรทัดฐาน norm2 (... )

  • การคำนวณผลรวมของสัมบูรณ์ (Mae) สอดคล้องกับค่ามาตรฐานℓ1, (... ) บางครั้งเรียกว่าเกณฑ์ปกติของแมนฮัตตันเพราะมันวัดระยะห่างระหว่างจุดสองจุดในเมืองถ้าคุณสามารถเดินทางไปตามช่วงตึกแบบมุมฉาก

  • โดยทั่วไปแล้ว (... ) ℓ 0 เพียงแค่ให้จำนวนองค์ประกอบที่ไม่เป็นศูนย์ในเวกเตอร์และℓ∞ให้ค่าสัมบูรณ์สูงสุดในเวกเตอร์

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


2

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

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

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

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

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.