Jump to content

Хэширование с учетом местоположения

В информатике , хеширование с учетом локальности ( LSH ) — это метод нечеткого хеширования который с высокой вероятностью хэширует аналогичные входные элементы в одни и те же «корзины». [1] (Количество сегментов намного меньше, чем совокупность возможных входных элементов.) [1] Поскольку похожие элементы попадают в одни и те же сегменты, этот метод можно использовать для кластеризации данных и поиска ближайшего соседа . Он отличается от традиционных методов хеширования тем, что хеш-коллизии максимизируются, а не минимизируются. Альтернативно, этот метод можно рассматривать как способ уменьшить размерность многомерных данных; входные элементы большой размерности можно уменьшить до версий с низкой размерностью, сохраняя при этом относительные расстояния между элементами.

на основе хеширования Алгоритмы приблизительного поиска ближайших соседей обычно используют одну из двух основных категорий методов хеширования: либо независимые от данных методы, такие как хеширование с учетом местоположения (LSH); или методы, зависящие от данных, такие как хеширование с сохранением локальности (LPH). [2] [3]

Хеширование с сохранением локальности изначально было разработано как способ облегчить конвейерную обработку данных в реализациях алгоритмов массового параллелизма , которые используют рандомизированную маршрутизацию и универсальное хеширование для уменьшения конфликтов памяти и перегрузки сети . [4] [5]

Определения

[ редактировать ]

Конечная семья функций определяется как семейство LSH [1] [6] [7] для

  • метрическое пространство ,
  • порог ,
  • коэффициент аппроксимации ,
  • и вероятности

если оно удовлетворяет следующему условию. Для любых двух точек и хеш-функция выбираются равномерно случайным образом из :

  • Если , затем (т.е. a и b сталкиваются) с вероятностью не менее ,
  • Если , затем с вероятностью не более .

Такая семья называется -чувствительный.

LSH по мере сходства

[ редактировать ]

Альтернативно [8] можно определить семейство LSH в совокупности элементов U, наделенных функцией сходства . В этом случае схема LSH представляет собой семейство хэш-функций H, связанных с распределением вероятностей D по H, таким образом, что функция выбранный согласно D удовлетворяет для каждого .

Усиление

[ редактировать ]

Учитывая -чувствительная семья , мы можем построить новые семьи с помощью И-конструкции или ИЛИ-конструкции . [1]

Для создания И-конструкции определяем новое семейство хеш-функций g , где каждая функция g состоит из k случайных функций от . Затем мы говорим, что для хеш-функции , тогда и только тогда, когда все для . Поскольку члены независимо выбираются для любого , это -чувствительная семья.

Для создания OR-конструкции определяем новое семейство хеш-функций g , где каждая функция g состоит из k случайных функций от . Затем мы говорим, что для хеш-функции , тогда и только тогда, когда для одного или нескольких значений i . Поскольку члены независимо выбираются для любого , это -чувствительная семья.

Приложения

[ редактировать ]

LSH применялся к нескольким проблемным областям, в том числе:

Выборка битов для расстояния Хэмминга

[ редактировать ]

Один из самых простых способов создания семейства LSH — побитовая выборка. [7] Этот подход работает для расстояния Хэмминга над d -мерными векторами. . Здесь семья хеш-функций — это просто совокупность всех проекций точек на одну из координаты, т.е. , где это координата . Случайная функция от просто выбирает случайный бит из входной точки. Это семейство имеет следующие параметры: , . То есть любые два вектора с расстоянием Хэмминга не более столкнуться под случайным с вероятностью по крайней мере . Любой с расстоянием Хэмминга не менее столкнуться с вероятностью не более .

Минимально независимые перестановки

[ редактировать ]

Предположим, что состоит из подмножеств некоторого основного множества перечислимых элементов S , а интересующей функцией сходства является индекс Жаккара J. U Если π — перестановка индексов S , для позволять . Каждый возможный выбор π определяет одну хэш-функцию h, отображающую входные наборы в элементы S .

Определим семейство функций H как набор всех таких функций и пусть D будет равномерным распределением . Учитывая два набора событие, которое точно соответствует событию, когда минимизатор π по лежит внутри . Поскольку h был выбран равномерно случайным образом, и определить схему LSH для индекса Жаккара.

Поскольку симметричная группа из n элементов имеет размер n !, выбор действительно случайной перестановки из полной симметричной группы невозможен даже для умеренного размера n . Из-за этого факта была проведена значительная работа по поиску семейства перестановок, которое было бы «минимально независимым» - семейства перестановок, для которого каждый элемент области имеет равную вероятность быть минимальным при случайно выбранном π . Установлено, что минимально независимое семейство подстановок имеет размер не менее , [19] и что эта граница жесткая. [20]

Поскольку минимально независимые семейства слишком велики для практических приложений, вводятся два варианта понятия минимальной независимости: ограниченные минимально независимые семейства перестановок и аппроксимированные минимально независимые семейства. Ограниченная минимальная независимость — это свойство минимальной независимости, ограниченное определенными наборами мощности не более k . [21] Приблизительная минимальная независимость отличается от свойства не более чем на фиксированное ε . [22]

Методы с открытым исходным кодом

[ редактировать ]

Нильсимса Хэш

[ редактировать ]

Nilsimsa — это локально-чувствительный алгоритм хеширования, используемый в борьбе со спамом . [23] Цель Nilsimsa — создать хеш-дайджест сообщения электронной почты, чтобы дайджесты двух похожих сообщений были похожи друг на друга. В документе предполагается, что Нильсимса удовлетворяет трем требованиям:

  1. Дайджест, идентифицирующий каждое сообщение, не должен существенно отличаться для изменений, которые могут быть произведены автоматически.
  2. Кодировка должна быть устойчивой к преднамеренным атакам.
  3. Кодировка должна поддерживать чрезвычайно низкий риск ложных срабатываний.

Тестирование, проведенное в статье на ряде типов файлов, выявило, что хэш Nilsimsa имеет значительно более высокий уровень ложных срабатываний по сравнению с другими схемами дайджеста сходства, такими как TLSH, Ssdeep и Sdhash. [24]

TLSH — это локально-чувствительный алгоритм хеширования, разработанный для ряда приложений безопасности и цифровой криминалистики. [17] Целью TLSH является создание хэш-дайджестов для сообщений таким образом, чтобы небольшие расстояния между дайджестами указывали на то, что соответствующие им сообщения, вероятно, будут похожими.

Реализация TLSH доступна как программное обеспечение с открытым исходным кодом . [25]

Случайная проекция

[ редактировать ]
пропорционально на интервале [0, ]

Метод случайной проекции LSH Моисея Чарикара. [8] называется SimHash (также иногда называемый arccos [26] ) использует приближение косинусного расстояния между векторами. Этот метод использовался для аппроксимации NP-полной задачи максимального разреза . [8]

Основная идея этого метода состоит в том, чтобы выбрать случайную гиперплоскость (определяемую нормальным единичным вектором r вначале ) и использовать ее для хэширования входных векторов.

Учитывая входной вектор v и гиперплоскость, определенную r , мы позволяем . То есть, в зависимости от того, с какой стороны лежит гиперплоскость v . Таким образом, каждый возможный выбор случайной гиперплоскости r можно интерпретировать как хеш-функцию. .

Для двух векторов u,v с углом между ними, можно показать, что

Поскольку соотношение между и составляет не менее 0,87856, когда , [8] [27] вероятность того, что два вектора окажутся по одну сторону от случайной гиперплоскости, примерно пропорциональна косинусному расстоянию между ними.

Стабильные дистрибутивы

[ редактировать ]

Хэш-функция [28] отображает d -мерный вектор на множество целых чисел. Каждая хеш-функция в семье индексируется путем случайного выбора и где является d -мерным вектор с записи, выбранные независимо от стабильного дистрибутива и является действительное число, выбранное равномерно из диапазона [0,r]. Для фиксированной хеш-функция является данный .

Для лучшего соответствия данным были предложены другие методы построения хэш-функций. [29] В частности, хеш-функции k-средних на практике лучше, чем хеш-функции, основанные на проекциях, но без какой-либо теоретической гарантии.

Семантическое хеширование

[ редактировать ]

Семантическое хеширование — это метод, который пытается сопоставить входные элементы с адресами так, чтобы более близкие входные данные имели более высокое семантическое сходство . [30] Хэш-коды находятся посредством обучения искусственной нейронной сети или графической модели . [ нужна ссылка ]

[ редактировать ]

Одним из основных применений LSH является создание метода эффективных алгоритмов приближенного поиска ближайших соседей . Рассмотрим семейство LSH . Алгоритм имеет два основных параметра: параметр ширины и количество хеш-таблиц L. k

На первом этапе мы определяем новое семейство хеш-функций g , где каждая функция g получается путем объединения k функций от , то есть, . Другими словами, случайная хэш-функция g получается путем объединения k случайно выбранных хеш-функций из . Затем алгоритм создает L хеш-таблиц, каждая из которых соответствует отдельной случайно выбранной хеш-функции g .

На этапе предварительной обработки мы хешируем все n d -мерные точки из набора данных S в каждую из L хеш-таблиц. Учитывая, что результирующие хэш-таблицы содержат только n ненулевых записей, можно уменьшить объем памяти, используемой для каждой хеш-таблицы, до используя стандартные хэш-функции .

Учитывая точку запроса q , алгоритм перебирает L хеш-функций g . Для каждого рассматриваемого g он извлекает точки данных, которые хэшируются в ту же корзину, что и q . Процесс останавливается, как только будет найдена точка на расстоянии cR от q .

Учитывая параметры k и L , алгоритм имеет следующие гарантии производительности:

  • время предварительной обработки: , где t — время вычисления функции на входной точке p ;
  • космос: плюс место для хранения точек данных;
  • время запроса: ;
  • алгоритму удается найти точку на расстоянии cR от q (если существует точка на расстоянии R ) с вероятностью не менее ;

Для фиксированного коэффициента аппроксимации и вероятности и , можно установить и , где . Тогда мы получаем следующие гарантии производительности:

  • время предварительной обработки: ;
  • космос: плюс место для хранения точек данных;
  • время запроса: ;

Улучшения

[ редактировать ]

Когда t велико, можно сократить время хэширования с . Это было показано [31] и [32] что дало

  • время запроса: ;
  • космос: ;

Иногда бывает так, что фактор может быть очень большим. Это происходит, например, с данными о сходстве Жаккара , где даже самый похожий сосед часто имеет довольно низкое сходство Жаккара с запросом. В [33] было показано, как сократить время запроса до (не включая затраты на хеширование) и, аналогично, использование пространства.

См. также

[ редактировать ]
  1. ^ Jump up to: а б с д Раджараман, А.; Ульман, Дж. (2010). «Анализ больших наборов данных, глава 3» .
  2. ^ Чжао, Кан; Лу, Хунтао; Мэй, Цзиньчэн (2014). Хеширование с сохранением локальности . Конференция AAAI по искусственному интеллекту. Том. 28. стр. 2874–2880.
  3. ^ Цай, И-Сюань; Ян, Мин-Сюань (октябрь 2014 г.). «Хеширование с сохранением локальности». Международная конференция IEEE по обработке изображений (ICIP) , 2014 г. стр. 2988–2992. дои : 10.1109/ICIP.2014.7025604 . ISBN  978-1-4799-5751-4 . ISSN   1522-4880 . S2CID   8024458 .
  4. ^ Jump up to: а б Чин, Эндрю (1991). Проблемы сложности в параллельных вычислениях общего назначения (DPhil). Оксфордский университет. стр. 87–95.
  5. ^ Jump up to: а б Чин, Эндрю (1994). «Хеш-функции, сохраняющие локальность, для параллельных вычислений общего назначения» (PDF) . Алгоритмика . 12 (2–3): 170–181. дои : 10.1007/BF01185209 . S2CID   18108051 .
  6. ^ Гионис, А.; Индик, П. ; Мотвани, Р. (1999). «Поиск по сходству в больших измерениях посредством хеширования» . Материалы 25-й конференции по очень большим базам данных (VLDB) .
  7. ^ Jump up to: а б Индик, Петр .; Мотвани, Раджив . (1998). «Приблизительные ближайшие соседи: на пути к снятию проклятия размерности». . Материалы 30-го симпозиума по теории вычислений .
  8. ^ Jump up to: а б с д Чарикар, Моисей С. (2002). «Методы оценки сходства на основе алгоритмов округления». Материалы 34-го ежегодного симпозиума ACM по теории вычислений . стр. 380–388. CiteSeerX   10.1.1.147.4064 . дои : 10.1145/509907.509965 . ISBN  1-58113-495-9 .
  9. ^ Дас, Абхинандан С.; и др. (2007), «Персонализация новостей Google: масштабируемая совместная онлайн-фильтрация», Труды 16-й международной конференции по Всемирной паутине , стр. 271–280, doi : 10.1145/1242572.1242610 , ISBN  9781595936547 , S2CID   207163129 .
  10. ^ Кога, Хисаши; Тецуо Исибаши; Тошинори Ватанабэ (2007), «Алгоритм быстрой агломеративной иерархической кластеризации с использованием локально-чувствительного хеширования», Knowledge and Information Systems , 12 (1): 25–53, doi : 10.1007/s10115-006-0027-5 , S2CID   4613827 .
  11. ^ Кочез, Майкл; Моу, Хао (2015), «Twister Tries», Труды Международной конференции ACM SIGMOD 2015 по управлению данными (PDF) , стр. 505–517, doi : 10.1145/2723372.2751521 , ISBN  9781450327589 , S2CID   14414777 .
  12. ^ Брынза, Дмитрий; и др. (2010), «БЫСТРОЕ обнаружение межгенных взаимодействий в исследованиях полногеномных ассоциаций», Bioinformatics , 26 (22): 2856–2862, doi : 10.1093/bioinformatics/btq529 , PMC   3493125 , PMID   20871107
  13. ^ дежавю — Снятие отпечатков пальцев и распознавание аудио в Python , 19 декабря 2018 г.
  14. ^ Алуч, Гюнеш; Озсу, М. Тамер; Дауджи, Хузайма (2018), «Создание самокластеризующихся баз данных RDF с использованием Tunable-LSH», The VLDB Journal , 28 (2): 173–195, doi : 10.1007/s00778-018-0530-9 , S2CID   53695535
  15. ^ Чен, Бэйди; Медини, Тарун; Фарвелл, Джеймс; Гобриэль, Самех; Тай, Чарли; Шривастава, Аншумали (29 февраля 2020 г.). «СЛАЙД: В защиту интеллектуальных алгоритмов перед аппаратным ускорением крупномасштабных систем глубокого обучения». arXiv : 1903.03129 [ cs.DC ].
  16. ^ Чен, Бэйди; Лю, Цзычан; Пэн, Бинхуэй; Сюй, Чжаочжуо; Ли, Джонатан Линцзе; Дао, Три; Сун, Чжао; Шривастава, Аншумали; Ре, Кристофер (2021), «MONGOOSE: обучаемая структура LSH для эффективного обучения нейронных сетей» , Международная конференция по представлению обучения
  17. ^ Jump up to: а б Оливер, Джонатан; Ченг, Чун; Чен, Янгуй (2013). TLSH — хэш, чувствительный к местоположению . 4-й семинар по киберпреступности и надежным вычислениям . стр. 7–13. дои : 10.1109/CTC.2013.9 . ISBN  978-1-4799-3076-0 .
  18. ^ Фанаи-Т, Хади (2024), Естественное обучение , arXiv : 2404.05903
  19. ^ Бродер, Аризона ; Чарикар, М. ; Фриз, AM ; Митценмахер, М. (1998). «Независимые по минимуму перестановки» . Труды тридцатого ежегодного симпозиума ACM по теории вычислений . стр. 327–336. CiteSeerX   10.1.1.409.9220 . дои : 10.1145/276698.276781 . Проверено 14 ноября 2007 г.
  20. ^ Такей, Ю.; Ито, Т.; Шинозаки, Т. «Оптимальная конструкция точно минимально независимых перестановок». Технический отчет COMP98-62, IEICE, 1998 г.
  21. ^ Матушек Ю.; Стоякович, М. (2002). «Об ограниченной минимальной независимости перестановок» . Препринт . Проверено 14 ноября 2007 г.
  22. ^ Сакс, М .; Шринивасан, А.; Чжоу, С.; Цукерман, Д. (2000). «Наборы с низким расхождением дают приблизительные по минимуму независимые семейства перестановок» . Письма об обработке информации . 73 (1–2): 29–32. CiteSeerX   10.1.1.20.8264 . дои : 10.1016/S0020-0190(99)00163-5 . Проверено 14 ноября 2007 г.
  23. ^ Дамиани; и др. (2004). «Методика обнаружения спама на основе открытого дайджеста» (PDF) . Проверено 1 сентября 2013 г.
  24. ^ Оливер; и др. (2013). «TLSH — хеш, чувствительный к локальности» . 4-й семинар по киберпреступности и надежным вычислениям . Проверено 4 июня 2015 г.
  25. ^ «ТЛШ» . Гитхаб . Проверено 10 апреля 2014 г.
  26. ^ Александр Андони; Индик, П. (2008). «Почти оптимальные алгоритмы хеширования для приближенного ближайшего соседа в больших размерностях». Коммуникации АКМ . 51 (1): 117–122. CiteSeerX   10.1.1.226.6905 . дои : 10.1145/1327452.1327494 . S2CID   6468963 .
  27. ^ Гоеманс, Мишель X.; Уильямсон, Дэвид П. (1995). «Улучшенные алгоритмы аппроксимации задач максимального разреза и выполнимости с использованием полуопределенного программирования» . Журнал АКМ . 42 (6). Ассоциация вычислительной техники (ACM): 1115–1145. дои : 10.1145/227683.227684 . ISSN   0004-5411 . S2CID   15794408 .
  28. ^ Датар, М.; Имморлика, Н. ; Индик, П. ; Миррокни, В.С. (2004). «Схема хеширования с учетом локальности на основе p-стабильных распределений» . Материалы симпозиума по вычислительной геометрии .
  29. ^ Паулев, Л.; Джегу, Х.; Амсалег, Л. (2010). «Хеширование с учетом местоположения: сравнение типов хэш-функций и механизмов запросов» . Буквы для распознавания образов . 31 (11): 1348–1358. Бибкод : 2010PaReL..31.1348P . дои : 10.1016/j.patrec.2010.04.004 . S2CID   2666044 .
  30. ^ Салахутдинов Руслан; Хинтон, Джеффри (2008). «Семантическое хеширование» . Международный журнал приближенного рассуждения . 50 (7): 969–978. дои : 10.1016/j.ijar.2008.11.006 .
  31. ^ Дальгаард, Сорен, Матиас Бек Тейс Кнудсен и Миккель Торуп. «Фиксированное сходство эскизов». 58-й ежегодный симпозиум IEEE по основам информатики (FOCS), 2017 г. ИИЭР, 2017.
  32. ^ Кристиани, Тобиас. «Быстрые системы хеширования с учетом местоположения для приблизительного поиска ближайших соседей». Международная конференция по поиску и приложениям по сходству. Спрингер, Чам, 2019 г.
  33. ^ Але, Томас Дибдал. «К проблеме в хешировании с учетом локальности». Международная конференция по поиску и приложениям по сходству. Спрингер, Чам, 2020.
  34. ^ Горман, Джеймс и Джеймс Р. Карран. «Масштабирование сходства распределения до крупных корпусов». Материалы 21-й Международной конференции по компьютерной лингвистике и 44-го ежегодного собрания Ассоциации компьютерной лингвистики. Ассоциация компьютерной лингвистики, 2006.

Дальнейшее чтение

[ редактировать ]
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: a14d4879af0e1a2a5e20983e1a711f9e__1719312600
URL1:https://arc.ask3.ru/arc/aa/a1/9e/a14d4879af0e1a2a5e20983e1a711f9e.html
Заголовок, (Title) документа по адресу, URL1:
Locality-sensitive hashing - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)