Пошук подібних векторів у підквадратичний час


9

Нехай - функція, яку ми називаємо функцією подібності . Прикладами функції подібності є відстань косинуса, норма, відстань Хеммінга, подібність Жакарда тощо.d:{0,1}k×{0,1}kRl2

Розглянемо двійкових векторів довжини : .nkv({0,1}k)n

Наша мета - згрупувати подібні вектори. Більш формально ми хочемо обчислити графік подібності, де вузлами є вектори, а ребра представляють подібні вектори ( ).d(v,u)ϵ

n і дуже велика кількість, і порівняння двох векторів довжини є дорогим, ми не можемо виконати всі операції грубої сили . Ми хочемо обчислити графік подібності зі значно меншими операціями.kkO(n2)

Чи можливо це? Якщо не можемо ми обчислити наближення до графа, який містить усі ребра в графіку подібності плюс, можливо, щонайбільше інших ребер?O(1)


Якщо це буде а неϵϵ?
usul

@usul Thanks for your comment:) Here, we interested to group items which are highly similar. I have edited the question, I hope it is clear now.
Ram

Sounds to me like you could use Similarity Preserving Hashing (arxiv.org/pdf/1311.7662v1.pdf) to reduce the problem dimension.
RB

4
This question is not well-defined at all, please provide more details. E.g., if d is given by an oracle, then you obviously cannot do better than (n2).
domotorp

5
Do you work for twitter?blog.twitter.com/2014/all-pairs-similarity-via-dimsum Seriously, even detecting if there is an edge in this graph (I.e. that it's not an independent set of vertices) is going to be very hard to do faster than O(n2) for an arbitrary similarity function.
Ryan Williams

Відповіді:


5

There may be a way to shoe horn the Johnson-Lindenstrauss theorem into this problem. Essentially, J-L states that you can project high dimensional data into lower dimensional spaces in such a way that the pairwise distances are nearly preserved. More practically, Achlioptas has a paper called Database-friendly random projections: Johnson-Lindenstrauss with binary coins that does this projection in a random way, which works pretty well in practice.

Now, certainly, your similarity function is not exactly the same as something that would fit into the J-L theorem. However, it looks like a distance function and perhaps some of the theory above may help.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.