query相关搜索词&推荐

当用户输入的query相关搜索结果比较少的时候,可以帮助用户扩展搜索内容,或者搜索结果太多的时候可以帮助用户深入定向搜索.
query相关搜索词&推荐_第1张图片
一般在搜索底部出现:
query相关搜索词&推荐_第2张图片
简单的来说,相关搜索的query,其实也是一种关键词推荐.

相关搜索query策略:

1.query click

即网民输入某个query后,在搜索引擎上点击的url,该数据可以简单表示为query-url的pair.当用户输入不同的query,但是却点击了相同的url.这样就形成了一个二分图,左边是query,右边是url.而且点击了相同的url,我们可以认为这样的query是相关的.

二分图:
query相关搜索词&推荐_第3张图片
1.1 query之间的相似度.
该相似度介于[0,1]之间,即, 当x,y 均为query时, 使用与x,y均相邻的节点比例度量他们之间的相似度,相对地,当x,y均为url时,使用共同搜索query定义其相似度。
还有一种改进的相似度计算为sim(x, y) = (N(x)∩N(y))/(N(x)+N(y) – N(x)∩N(y)) ,也就是在分母上减去共同出现的次数。
1.2 通过KNN聚类算法聚合相关query集合.
迭代进行聚类,每次使用url计算两两query的相似度,合并最相似的query; 之后使用query作为特征计算两两url的相似度,合并最相似的url;一直迭代直到终止条件。

具体应用时,当网民输入某个具体query的时候, 判断该query所属的cluster, 之后该cluster中的query即可作为相关搜索的结果的候选,当然cluster的query具体展现哪些, 以及如何排序, 又可以有很多因素需要考虑, 例如点击率, 用户体验, 倒流量的能力等。

2.协同过滤

纯粹从用query session出发:,在同一个session中用户输入多个query,我们以为同一个session中的query都是有关系的,我们通过query编辑距离或者相似度的计算.可以挖掘相关的query序列出来.
这样我们可以得到一次querysession数据:
user1: query1,query2,query3…….,
user1: query1,query2,query3…….,

我们在考虑用户共同兴趣的时候,联想到用户群体可能存在的相似性.推荐相关的query给不用的用户.
1.query之间的相似度.将上面的user->query矩阵变化成query->user矩阵,计算不同的query的相似度.
2.query聚类计算.直接通过层次聚类算法.

3.基于CTR预估的相关query推荐

在1和2的基础上,我们更多的考虑在展现相同机会的情况下,相关query可能获取更多的点击率.从搜索流量出发,可以带来更多的转化.
利用Logistic回归模型来预估Query的CTR,在模型中用到的特征如下:
(1)搜索词与推荐Query(用表示)相关的特征;
(2)搜索词与推荐Query的类目相关特征;
(3)候选Query静态分相关特征;
(4)推荐Query的词性特征;
(5)推荐query对应的结果页面特征。
可以更多的融合之前的两个信息,作为ctr预估的维度特征.

你可能感兴趣的:(自然语言处理,搜索引擎)