Menemukan vektor serupa dalam waktu subquadratic

9

Misalkan menjadi fungsi yang kita sebut sebagai fungsi kesamaan . Contoh fungsi kesamaan adalah jarak cosinus, norma , jarak Hamming, kesamaan Jaccard, dll.l 2d:{0,1}k×{0,1}kRl2

Pertimbangkan vektor biner dengan panjang : .k v( { 0 , 1 } k ) nnkv({0,1}k)n

Tujuan kami adalah untuk mengelompokkan vektor yang serupa. Secara lebih formal, kami ingin menghitung grafik kesamaan di mana simpul adalah vektor dan ujungnya mewakili vektor yang serupa ( ).d(v,u)ϵ

n dan adalah angka yang sangat besar, dan membandingkan dua vektor panjang adalah mahal, kita tidak bisa melakukan semua operasi brute-force . Kami ingin menghitung grafik kesamaan dengan operasi yang jauh lebih sedikit.k O ( n 2 )kkO(n2)

Apakah ini mungkin? Jika tidak, bisakah kita menghitung perkiraan grafik yang berisi semua tepi dalam grafik kesamaan ditambah mungkin paling banyak tepi lainnya?O(1)

Ram
sumber
Haruskah ϵ daripada ϵ ?
usul
@ usul Terima kasih atas komentar Anda :) Di sini, kami tertarik pada item grup yang sangat mirip. Saya sudah mengedit pertanyaan, saya harap sudah jelas sekarang.
Ram
Bagi saya sepertinya Anda bisa menggunakan Similarity Preserving Hashing ( arxiv.org/pdf/1311.7662v1.pdf ) untuk mengurangi dimensi masalah.
RB
4
Pertanyaan ini sama sekali tidak terdefinisi dengan baik, berikan detail lebih lanjut. Misalnya, jika diberikan oleh oracle, maka Anda jelas tidak bisa melakukan lebih baik dari . d(n2)
domotorp
5
Apakah Anda bekerja untuk twitter? blog.twitter.com/2014/all-pairs-similarity-via-dimsum Serius, bahkan mendeteksi jika ada kelebihan pada grafik ini (yaitu bahwa itu bukan kumpulan simpul independen) akan sangat sulit untuk dilakukan lebih cepat daripada untuk fungsi kesamaan yang sewenang-wenang. O(n2)
Ryan Williams

Jawaban:

5

Mungkin ada cara untuk menanduk teorema Johnson-Lindenstrauss ke dalam masalah ini. Pada dasarnya, JL menyatakan bahwa Anda dapat memproyeksikan data dimensi tinggi ke dalam ruang dimensi yang lebih rendah sedemikian rupa sehingga jarak berpasangan hampir dipertahankan. Secara lebih praktis, Achlioptas memiliki sebuah makalah yang disebut proyeksi acak ramah-Database: Johnson-Lindenstrauss dengan koin biner yang melakukan proyeksi ini secara acak, yang bekerja dengan cukup baik dalam praktiknya.

Sekarang, tentu saja, fungsi kesamaan Anda tidak persis sama dengan sesuatu yang cocok dengan teorema JL. Namun, sepertinya fungsi jarak dan mungkin beberapa teori di atas dapat membantu.

Wyer33
sumber