хэши нграмм: снятие отпечатков документов

Я пытаюсь реализовать алгоритм отсеивания документов для снятия отпечатков пальцев в R.

Здесь ссылка http://www.ida.liu.se/~TDDC03/oldprojects/2005/final-projects/prj10.pdf

Мой вопрос:

как мне получить хэши n-грамм и как их выбрать

nGrams <- c("adoru", "dorun", "orunr", "runru", "unrun", "nrunr" ,"runru",
  "unrun","nruna", "runad", "unado", "nador", "adoru", "dorun", "orunr" ,"runru" ,
  "unrun")

person user1043144    schedule 12.11.2011    source источник


Ответы (1)


Кажется, будто

library(digest)
v <- sapply(nGrams,digest,algo="crc32")
uv <- unique(v)
(as.integer(as.hexmode(uv))-1) %% 4 == 0

было бы хорошим началом. (CRC32 всегда нечетный, поэтому необходимо вычесть 1.)

person Ben Bolker    schedule 12.11.2011