海量文本相似度匹配

1 词与词之间的匹配(主要用于分词,单词补全,模板匹配)

1.1 一对一

KMP

1.2一对多

前缀树

1.3多对多

给一个字典,再给一个m长的文本(m长的文本里面包含很多的词),问这个文本里出现了字典里的哪些字。

1.3.1 方法一:使用HashMap复杂度是O(maxLengh(word)*length(str))这样和字典的大小没有关系

1.3.2 方法二:AC自动机

https://blog.csdn.net/fkyyly/article/details/83988036

2 句子与句子之间的匹配

2.1 HashMap(索引)

离线的时候将海量的sentence分词,然后按照词建立索引,key是词,value是sentence list

实时查询的时候将句子分词,然后拿到这个词对应的sentence list,然后将获得的所有sentence list和用户输入的句子计算相似度。

2.2 simhash

https://blog.csdn.net/fkyyly/article/details/84503313

猜你喜欢

转载自blog.csdn.net/fkyyly/article/details/84998913