이차 시간에 유사한 벡터 찾기


9

허락하다 d:{0,1}케이×{0,1}케이아르 자형우리가 유사성 함수 라고하는 함수 입니다. 유사도 함수의 예는 코사인 거리,2 규범, 해밍 거리, Jaccard 유사성 등

치다 길이의 이진 벡터 케이: v({0,1}k)n.

우리의 목표는 비슷한 벡터를 그룹화하는 것입니다. 더 공식적으로, 우리 는 노드가 벡터이고 가장자리가 비슷한 벡터를 나타내는 유사성 그래프 를 계산하려고합니다.d(v,u)ϵ).

nk 매우 큰 숫자이며 두 길이를 비교 k 벡터는 비싸고 모든 짐승을 다 할 수는 없습니다 O(n2)작업. 연산이 훨씬 적은 유사성 그래프를 계산하려고합니다.

이것이 가능한가? 그렇지 않다면 유사성 그래프의 모든 모서리를 포함하는 그래프에 대한 근사값을 계산할 수 있습니다.O(1) 다른 가장자리?


그럴까요 ϵ 오히려 ϵ?
usul

@usul 귀하의 의견에 감사드립니다. 질문을 편집했습니다. 지금 명확 해지기를 바랍니다.
Ram

유사성 보존 해싱 ( arxiv.org/pdf/1311.7662v1.pdf )을 사용하여 문제의 차원을 줄일 수 있다고 생각 합니다.
RB

4
이 질문은 잘 정의되어 있지 않습니다. 자세한 내용을 제공해주세요. 예를 들어d 오라클에 의해 주어지면, 당신은 분명히 더 나은 것을 할 수 없습니다 (n2).
domotorp

5
트위터에서 일하십니까? blog.twitter.com/2014/all-pairs-similarity-via-dimsum 심각 하게도 ,이 그래프의 가장자리 (즉, 독립 정점 세트가 아님)를 감지하는 것보다영형(2)임의의 유사성 기능.
Ryan Williams

답변:


5

Johnson-Lindenstrauss 정리를이 문제로 구체화 하는 방법이있을 수 있습니다 . 기본적으로 JL은 쌍별 거리가 거의 유지되는 방식으로 높은 차원의 데이터를 낮은 차원의 공간으로 투사 할 수 있다고 말합니다. 보다 실질적으로 Achlioptas는 데이터베이스 친화적 인 랜덤 프로젝션 이라는 논문을 가지고 있습니다 . Johnson-Lindenstrauss는 이진 코인 을 무작위로 사용하여이 프로젝션을 무작위로 수행하여 실제로는 잘 작동합니다.

확실히, 당신의 유사성 함수는 JL 정리에 맞는 것과 정확히 같지 않습니다. 그러나 그것은 거리 함수처럼 보이고 아마도 위의 이론 중 일부가 도움이 될 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.