Ukuran jarak terbaik untuk digunakan

12

Konteks

Saya memiliki dua set data yang ingin saya bandingkan. Setiap elemen data dalam kedua set adalah vektor yang berisi 22 sudut (semua antara dan ). Sudut berhubungan dengan konfigurasi pose manusia yang diberikan, sehingga pose ditentukan oleh 22 sudut sendi.πππ

Apa yang akhirnya saya coba lakukan adalah menentukan "kedekatan" dari dua set data. Jadi untuk setiap pose (vektor 22D) dalam satu set, saya ingin menemukan tetangga terdekat di set lainnya, dan membuat plot jarak untuk masing-masing pasangan terdekat.

Pertanyaan

  • Bisakah saya menggunakan jarak Euclidean saja?
    • Agar bermakna, saya berasumsi bahwa metrik jarak perlu didefinisikan sebagai: , di manaadalah nilai absolut dan mod adalah modulo. Kemudian dengan menggunakan 22 thetas yang dihasilkan, saya dapat melakukan perhitungan jarak Euclidean standar, .| . . . | θ=|θ1θ2|modπ|...|t12+t22++t222
    • Apakah ini benar?
  • Akankah metrik jarak lain lebih bermanfaat, seperti chi-square, atau Bhattacharyya, atau beberapa metrik lainnya? Jika demikian, bisakah Anda memberikan beberapa wawasan mengapa.
Josh
sumber
3
Sebagai catatan: Saya tidak berpikir Anda bermaksud . Lebih sesuatu seperti . min { | θ 1 - θ 2 | , 2 π - | θ 1 - θ 2 | }|θ1θ2|modπmin{|θ1θ2|,2π|θ1θ2|}
Erik P.
4
Daripada bekerja dengan sudut, saya sarankan mengkonversi ke (x, y) -mengkoordinasikan pada unit-lingkaran terlebih dahulu. Anda kemudian dapat menghitung secara normal (jarak dan sejenisnya), dan rata-rata bukan masalah seperti dengan sudut.
caracal
2
@Josh saran Erik P. adalah saran yang bagus. Sebagai alternatif, pertimbangkan setiap sudut sebagai titik pada lingkaran satuan dan menghitung jarak Euclidean di antara mereka menggunakan rumus biasa (Pythagoras). Perbedaan antara jarak ini dan jarak sudut seharusnya tidak masalah. (Saya percaya ini mungkin yang disarankan Caracal juga.)( cos ( θ ) , sin ( θ ) )θ(cos(θ),sin(θ))
whuber
2
@ Josh Rata-rata, misalnya, dan adalah . Dalam banyak keadaan, ini tidak masuk akal, dan seharusnya sebagai gantinya. Dalam situasi spesifik Anda, ini mungkin tidak menjadi masalah karena mungkin sendi manusia tidak memiliki rentang gerakan melewati . Juga, dalam kasus Anda, mungkin Anda ingin rata-rata tersebut menjadi karena gerakan bersama adalah satu arah. @ Whuber's saran adalah apa yang saya maksud. 7 π / 4 π 0 π ππ/47π/4π0ππ
caracal
3
Masalah Anda mungkin akan menjadi jauh lebih mudah untuk dipecahkan jika Anda dapat menentukan konsekuensi "salah". Jadi jika Anda mengatakan kumpulan data sama atau serupa, tetapi sebenarnya tidak, apa yang akan terjadi pada Anda? Apakah ini tergantung pada "seberapa salah" keputusan Anda? Apa yang akan terjadi jika Anda menyatakan data / pose berbeda, tetapi sebenarnya sama atau serupa? Apa yang hilang? menjawab pertanyaan-pertanyaan ini akan membantu menentukan apa yang penting untuk perbandingan yang ingin Anda buat. Ini memastikan bahwa Anda menjawab pertanyaan yang tepat.
probabilityislogic

Jawaban:

5

Anda dapat menghitung matriks kovarians untuk setiap set dan kemudian menghitung jarak Hausdorff antara dua set menggunakan jarak Mahalanobis.

Jarak Mahalanobis adalah cara yang berguna untuk menentukan kesamaan dari sampel yang tidak diketahui ditetapkan ke yang diketahui. Ini berbeda dari jarak Euclidean karena memperhitungkan korelasi dari kumpulan data dan berskala-invarian.

skyde
sumber
3

Apa yang Anda coba lakukan dengan informasi tetangga terdekat?

Saya akan menjawab pertanyaan itu, dan kemudian membandingkan ukuran jarak yang berbeda dalam terang itu.

Misalnya, Anda mencoba untuk mengklasifikasikan pose berdasarkan konfigurasi sambungan, dan ingin vektor gabungan dari pose yang sama berdekatan. Cara langsung untuk mengevaluasi kesesuaian metrik jarak yang berbeda adalah dengan menggunakan masing-masing dalam pengklasifikasi KNN, dan membandingkan akurasi out-of-sampel dari masing-masing model yang dihasilkan.

Benhamner
sumber
2

Ini kedengarannya mirip dengan aplikasi Information Retrieval (IR) tertentu. Beberapa tahun yang lalu saya menghadiri ceramah tentang gaya berjalan yang kedengarannya mirip dengan apa yang Anda lakukan. Dalam Pengambilan Informasi, "dokumen" (dalam kasus Anda: data sudut seseorang) dibandingkan dengan beberapa permintaan (yang dalam kasus Anda bisa jadi "apakah ada orang dengan data sudut (.., ..)"). Kemudian dokumen-dokumen tersebut tercantum dalam urutan yang paling cocok ke yang paling cocok. Itu, pada gilirannya, berarti bahwa satu komponen utama IR adalah meletakkan dokumen dalam beberapa jenis ruang vektor (dalam kasus Anda: ruang sudut) dan membandingkannya dengan satu permintaan spesifik atau contoh dokumen atau mengukur jaraknya. (Lihat di bawah.) Jika Anda memiliki definisi suara tentang jarak antara dua vektor individu, yang harus Anda lakukan adalah membuat ukuran untuk jarak dua set data. (Secara tradisional di IR jarak dalam model ruang vektor dihitung baik dengan ukuran cosinus atau jarak Euclidean tapi saya tidak ingat bagaimana mereka melakukannya dalam kasus itu.) Di IR juga ada mekanisme yang disebut "umpan balik relevansi" yang, secara konseptual , bekerja dengan jarak dua set dokumen. Mekanisme itu biasanya menggunakan ukuran jarak yang menjumlahkan semua jarak individual antara semua pasangan dokumen (atau dalam kasus Anda: vektor orang). Mungkin itu berguna bagi Anda.

Halaman berikut memiliki beberapa makalah yang tampaknya relevan dengan masalah Anda: http://www.mpi-inf.mpg.de/~mmueller/index_publications.html Terutama yang ini http://www.mpi-inf.mpg.de/ ~ mmueller / publikasi / 2006_DemuthRoederMuellerEberhardt_MocapRetrievalSystem_ECIR.pdf tampaknya menarik. Pembicaraan Müller yang saya hadiri menyebutkan langkah-langkah kesamaan dari Kovar dan Gleicher yang disebut "point cloud" (lihat http://portal.acm.org/citation.cfm?id=1186562.1015760&coll=DL&dl=ACM ) dan satu disebut "quaternions" . Semoga bermanfaat.

xmjx
sumber
Akan bermanfaat jika memiliki referensi jika Anda dapat menemukannya. Terima kasih.
Josh
2

Masalah ini disebut Distance Metric Learning. Setiap metrik jarak dapat direpresentasikan sebagai mana adalah semi-pasti positif. Metode di bawah sub-area ini, pelajari optimal untuk data Anda. Bahkan, jika optimal adalah matriks identitas, boleh saja menggunakan jarak euclidean. Jika itu adalah kovarians terbalik, akan lebih optimal untuk menggunakan jarak Mahalanobis, dan seterusnya dan seterusnya. Oleh karena itu, metode pembelajaran metrik jarak harus digunakan untuk mempelajari optimal , untuk mempelajari metrik jarak yang tepat.(xy)tA(xy)A A AAAAA

mobil jenazah
sumber
0

Satu masalah dengan menggunakan sudut sebagai proksi untuk bentuk adalah bahwa gangguan kecil di sudut dapat menyebabkan gangguan besar dalam bentuk. Selanjutnya, konfigurasi sudut yang berbeda dapat menghasilkan bentuk yang sama (atau serupa).

Suresh Venkatasubramanian
sumber