Contexto
Eu tenho dois conjuntos de dados que eu quero comparar. Cada elemento de dados nos dois conjuntos é um vetor contendo 22 ângulos (todos entre e ). Os ângulos referem-se a uma determinada configuração de pose humana, portanto, uma pose é definida por 22 ângulos articulares.
O que estou tentando finalmente fazer é determinar a "proximidade" dos dois conjuntos de dados. Portanto, para cada pose (vetor 22D) em um conjunto, quero encontrar seu vizinho mais próximo no outro conjunto e criar um gráfico de distância para cada um dos pares mais próximos.
Questões
- Posso simplesmente usar a distância euclidiana?
- Para ser significativo, presumo que a métrica de distância precisaria ser definida como: , ondeé valor absoluto e mod é módulo. Então, usando os 22 thetas resultantes, eu posso executar o cálculo da distância euclidiana padrão, .
- Isso está correto?
- Outra métrica de distância seria mais útil, como qui-quadrado, ou Bhattacharyya, ou alguma outra métrica? Em caso afirmativo, você pode fornecer algumas dicas sobre o porquê.
Respostas:
você pode calcular a matriz de covariância para cada conjunto e, em seguida, calcular a distância de Hausdorff entre os dois conjuntos usando a distância de Mahalanobis.
A distância de Mahalanobis é uma maneira útil de determinar a similaridade de uma amostra desconhecida configurada para uma conhecida. Difere da distância euclidiana, pois leva em consideração as correlações do conjunto de dados e é invariável em escala.
fonte
O que você está tentando fazer com as informações do vizinho mais próximo?
Eu responderia a essa pergunta e depois compararia as diferentes medidas de distância à luz disso.
Por exemplo, suponha que você esteja tentando classificar poses com base na configuração da articulação e que os vetores da mesma pose estejam próximos. Uma maneira direta de avaliar a adequação de diferentes métricas de distância é usar cada uma delas em um classificador KNN e comparar as precisões fora da amostra de cada um dos modelos resultantes.
fonte
Parece que é semelhante a uma certa aplicação do Information Retrieval (IR). Alguns anos atrás, participei de uma palestra sobre o reconhecimento da marcha que soa semelhante ao que você está fazendo. Na recuperação de informações, "documentos" (no seu caso: dados de ângulo de uma pessoa) são comparados a alguma consulta (que no seu caso poderia ser "existe uma pessoa com dados de ângulo (.., ..)"). Em seguida, os documentos são listados na ordem do que corresponder ao mais próximo ao que corresponder ao menos. Isso, por sua vez, significa que um componente central do IR está colocando um documento em algum tipo de espaço vetorial (no seu caso: espaço angular) e comparando-o com uma consulta específica ou exemplo de documento ou medindo sua distância. (Veja abaixo.) Se você tiver uma definição sólida da distância entre dois vetores individuais, tudo o que você precisa fazer é criar uma medida para a distância de dois conjuntos de dados. (Tradicionalmente na RI, a distância no modelo de espaço vetorial é calculada pela medida do cosseno ou pela distância euclidiana, mas não me lembro como eles fizeram isso nesse caso.) Na RI, também existe um mecanismo chamado "feedback de relevância" que, conceitualmente, , trabalha com a distância de dois conjuntos de documentos. Esse mecanismo normalmente usa uma medida de distância que resume todas as distâncias individuais entre todos os pares de documentos (ou no seu caso: vetores de pessoas). Talvez isso seja útil para você.
A página a seguir apresenta alguns documentos que parecem relevantes para o seu problema: http://www.mpi-inf.mpg.de/~mmueller/index_publications.html Especialmente este http://www.mpi-inf.mpg.de/ ~ mmueller / publicações / 2006_DemuthRoederMuellerEberhardt_MocapRetrievalSystem_ECIR.pdf parece interessante. A palestra de Müller em que participei menciona medidas de similaridade de Kovar e Gleicher chamadas "nuvem de pontos" (consulte http://portal.acm.org/citation.cfm?id=1186562.1015760&coll=DL&dl=ACM ) e uma chamada "quaternions" . Espero que ajude.
fonte
Esse problema é chamado de aprendizado métrico à distância. Cada métrica de distância pode ser representada como(x−y)tA(x−y)−−−−−−−−−−−−−√ A é semi-definido positivo. Métodos nesta subárea, aprenda o melhorUMA para seus dados. De fato, se o idealUMA por ser uma matriz de identidade, não há problema em usar distâncias euclidianas. Se for a covariância inversa, seria ideal usar a distância de Mahalanobis, e assim por diante. Portanto, um método de aprendizado métrico à distância deve ser usado para aprender o melhorUMA , para aprender a métrica da distância certa.
fonte
Um problema ao usar os ângulos como proxy da forma é que pequenas perturbações nos ângulos podem levar a grandes perturbações na forma. Além disso, configurações de ângulo diferentes podem resultar na mesma forma (ou similar).
fonte