295

问答题 295 /376

聊简历项目,对搜索推荐算法的了解

参考答案

参考回答:
当用户输入关键词查询的时候,如何让用户查询更准确呢?我们设想,针对用户的输入,我们如果能给出若干个和用户输入的关键词相似度很近的词,以这些作为查询条件,如果我们的算法足够好,搜索出来的结果会大大增加检索的准确度。下面给出具体的算法思路:

从向量化的角度来看,每一篇文档都对应一个向量,其中表示特征项i.是一个向量由词、词的位置、TF等义项来确定的。对于版本1,我们只取了词、词的位置。我们先用分类规则,把文档分成若干类,基于每一类进行如下计算:

表示两个特征项的相似度。

我们定义一下距离公式

我们对于每个文档的特征项,两两求出特征项的相似度。通过这个距离公式

我们可以得出,对于每一个分类,以这些特征项为顶点,以相似度距离为边,就构

成了如下的无向图。

(lawnet)

类比于wordnet和知网的hownet,我们称这个无向图,为lawnet。

那我们的设想问题就转化为:选取任意一个顶点,找出若干个(譬如10个)由这些顶点组成的最小生成树或者边权之和最小的最小子图。这是一个局部最优的随机问题。也就是说,我们只需要满足用户认可的体验程度即可,如果概率为90%,也就是说,当用户输入10000次,我们能成功给出9000次的提示词就行了。