La migliore misura della distanza da usare


12

Contesto

Ho due serie di dati che voglio confrontare. Ogni elemento di dati in entrambi i set è un vettore contenente 22 angoli (tutti tra e ). Gli angoli si riferiscono a una determinata configurazione di posa umana, quindi una posa è definita da 22 angoli comuni.πππ

Quello che sto alla fine cercando di fare è determinare la "vicinanza" delle due serie di dati. Quindi per ogni posa (vettore 22D) in un set, voglio trovare il vicino più vicino nell'altro set e creare un diagramma della distanza per ciascuna delle coppie più vicine.

Domande

  • Posso semplicemente usare la distanza euclidea?
    • Per essere significativo, presumo che la metrica della distanza debba essere definita come: , doveè valore assoluto e mod è modulo. Quindi, usando i 22 thetas risultanti, posso eseguire il calcolo della distanza euclidea standard, .| . . . | θ=|θ1θ2|modπ|...|t12+t22++t222
    • È corretto?
  • Sarebbe più utile un'altra metrica di distanza, come chi-quadrato o Bhattacharyya o qualche altra metrica? In tal caso, potresti fornire qualche spunto sul perché.

3
Come nota a : non credo che intendi . Piuttosto qualcosa come . min { | θ 1 - θ 2 | , 2 π - | θ 1 - θ 2 | }|θ1θ2|modπmin{|θ1θ2|,2π|θ1θ2|}
Erik P.

4
Invece di lavorare con gli angoli, suggerisco di convertire prima in coordinate (x, y) sul cerchio unitario. È quindi possibile calcolare normalmente (distanze e simili) e la media non è un problema come con gli angoli.
Caracal,

2
Il suggerimento di @Josh Erik P. è buono. In alternativa, considera ogni angolo come un punto sul cerchio unitario e calcola le distanze euclidee tra di loro usando la solita formula (pitagorica). La differenza tra queste distanze e le distanze angolari non dovrebbe importare. (Credo che questo possa essere anche quello che Caracal ha suggerito.)( cos ( θ ) , sin ( θ ) )θ(cos(θ),sin(θ))
whuber

2
@Josh La media di, ad esempio, e è . In molte circostanze, questo non ha senso e dovrebbe essere invece . Nella tua situazione specifica, questo potrebbe non essere un problema poiché forse le articolazioni umane non hanno un raggio di movimento passato . Inoltre, nel tuo caso, forse vuoi che la media di cui sopra sia poiché il movimento articolare è unidirezionale. Il suggerimento di @ whuber è esattamente quello che intendevo dire. 7 π / 4 π 0 π ππ/47π/4π0ππ
Caracal,

3
Probabilmente il tuo problema diventerà molto più facile da risolvere se puoi specificare le conseguenze di "sbagliarlo". Quindi, se dici che i set di dati sono uguali o simili, ma in realtà non lo sono, cosa ti succederà? Dipenderà da "quanto è stata sbagliata" la tua decisione? Cosa succederà se dichiari dati / pose differenti, ma in realtà sono uguali o simili? Cosa si perde? rispondere a queste domande ti aiuterà a determinare ciò che conta per il confronto che vuoi fare. Questo assicura che stai rispondendo alla domanda giusta.
probabilityislogic

Risposte:


5

puoi calcolare la matrice di covarianza per ogni set e quindi calcolare la distanza di Hausdorff tra i due set usando la distanza di Mahalanobis.

La distanza di Mahalanobis è un modo utile per determinare la somiglianza di un campione sconosciuto impostato su uno noto. Si differenzia dalla distanza euclidea in quanto tiene conto delle correlazioni del set di dati ed è invariante alla scala.


3

Cosa stai cercando di fare con le informazioni sul vicino più vicino?

Risponderei a questa domanda e poi confronterei le diverse misure di distanza alla luce di ciò.

Ad esempio, supponiamo che tu stia cercando di classificare le pose in base alla configurazione del giunto e desideri che i vettori del giunto della stessa posa siano vicini. Un modo semplice per valutare l'idoneità delle diverse metriche di distanza consiste nell'utilizzare ognuna di esse in un classificatore KNN e confrontare le accuratezze fuori campione di ciascuno dei modelli risultanti.


2

Sembra che sia simile a una certa applicazione di Information Retrieval (IR). Qualche anno fa ho partecipato a un discorso sul riconoscimento dell'andatura che sembra simile a quello che stai facendo. In Recupero informazioni, i "documenti" (nel tuo caso: i dati angolari di una persona) vengono confrontati con alcune query (che nel tuo caso potrebbe essere "c'è una persona con i dati angolari (.., ..)"). Quindi i documenti vengono elencati nell'ordine di quello che corrisponde al più vicino fino a quello che corrisponde al meno. Ciò, a sua volta, significa che un componente centrale di IR sta inserendo un documento in una sorta di spazio vettoriale (nel tuo caso: spazio angolare) e confrontandolo con una specifica query o documento di esempio o misurando la loro distanza. (Vedi sotto.) Se hai una definizione sonora della distanza tra due singoli vettori, tutto quello che devi fare è trovare una misura per la distanza di due set di dati. (Tradizionalmente in IR la distanza nel modello dello spazio vettoriale è calcolata dalla misura del coseno o dalla distanza euclidea ma non ricordo come l'hanno fatto in quel caso.) In IR c'è anche un meccanismo chiamato "feedback di pertinenza" che, concettualmente , funziona con la distanza di due serie di documenti. Tale meccanismo normalmente utilizza una misura della distanza che riassume tutte le singole distanze tra tutte le coppie di documenti (o nel tuo caso: vettori personali). Forse ti è utile.

La seguente pagina contiene alcuni articoli che sembrano rilevanti per il tuo problema: http://www.mpi-inf.mpg.de/~mmueller/index_publications.html Soprattutto questo http://www.mpi-inf.mpg.de/ ~ mmueller / publications / 2006_DemuthRoederMuellerEberhardt_MocapRetrievalSystem_ECIR.pdf sembra interessante. Il discorso di Müller a cui ho partecipato menziona misure di somiglianza di Kovar e Gleicher chiamate "nuvola di punti" (vedi http://portal.acm.org/citation.cfm?id=1186562.1015760&coll=DL&dl=ACM ) e una chiamata "quaternioni" . Spero che sia d'aiuto.


Sarebbe utile avere il riferimento se si è in grado di trovarlo. Grazie.
Josh,

2

Questo problema si chiama apprendimento metrico a distanza. Ogni metrica della distanza può essere rappresentata come dove è semi-definito positivo. Metodi in questa sotto-area, apprendi la ottimale per i tuoi dati. In effetti, se la ottimale è una matrice identitaria, va bene usare le distanze euclidee. Se è la covarianza inversa, sarebbe ottimale usare la distanza di Mahalanobis, e così via e così via. Quindi, un metodo di apprendimento della metrica della distanza deve essere utilizzato per apprendere la ottimale , per apprendere la giusta metrica della distanza. AAAA(xy)tA(xy)AAAA


0

Un problema con l'uso degli angoli come proxy per la forma è che piccole perturbazioni negli angoli possono portare a grandi perturbazioni nella forma. Inoltre, diverse configurazioni angolari potrebbero comportare la stessa (o simile) forma.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.