搜索召回层时效性算分

2,325 阅读2分钟

一.时效性定义

搜索中的时效性即时间维度对搜索结果需求满意度的影响。时效性从需求出现的时间分布上大概可分成3大类:突发时效性,周期时效性和泛时效性。

时效性类别:

分类例子
突发时效性范冰冰李晨分手
周期时效性高考、奥运会
泛时效性杭州房价走势分析

本文的时效性算分针对的是泛时效性问题。泛时效性通常需要从Query和Doc两方面进行考虑。

1. Query侧

用户不同的搜索query有不同的时间需求,通常会定义一个时间敏感度的概念,用户对时间的敏感度越高,那么越希望得到新的内容。

时间敏感度:

时间敏感度例子
强(天级别)杭州今天天气
中(周、月级别)杭州驾照摇号查询
弱(月级别)西湖限行规则
一般(3~5年)杭州有哪些吃饭好的地儿
无(5年以上)西湖面积有多大

2. Doc侧

Doc侧考虑的是doc本身的信息价值随时间的变化情况,通常情况下信息的价值是会衰减。Doc的时间来源有发布时间、更新时间、网页内容时间和转评赞更新时间等,最终的网页时间需根据实际情况确定以哪个时间为准。

二.召回层时效性

召回层需考虑性能,通常时间分计算多利用简单公式计算。

公式

1.单调递减

由于时间信息衰减,可考虑单调递减函数,以下是几种常见的单调递减函数:

1.1.线性递减:

y=at+b(a>0)y = -at + b (a>0)

a=1,b=1a = 1, b = 1

1.2.高阶递减

y=at2+bt+c(a>0) y = -at^2 + bt + c (a>0)

a=0.5,b=0.5a = 0.5, b = -0.5

1.3.指数递减

y=ekt(k>0)y = e^{-kt} (k>0)

k=10k = 10

1.4.逻辑递减

y=11+e(t)(k>0) y = \frac{1}{1+e^(-t)} (k>0)

y=11/(1+e(10x5))y = 1 - 1/(1 + e^{-(10*x-5)})

2.牛顿冷却定律

物体的冷却速度,与其当前温度与室温之间的温差成正比。

牛顿冷却定律的公式也是指数形式:

y=T0ekty = T_0*e^{-kt}

T0:热度初值,k:冷却系数T_0 :热度初值,k : 冷却系数

时间打分公式

时间打分采用牛顿定律,设时间分初值为100,365天后时间分衰减为1,则时间公式为:

y=100ekty = 100*e^{-kt}

k=0.0126k = 0.0126

不同的query具有不同的时间敏感度,可定义不同的时效性等级:

时效性等级时间敏感度衰减系数
4k = 2.30
3k = 0.076
2k = 0.025
1k = 0.006
0k = 0.002

三.总结

本文介绍了搜索中时效性概念及常用时间打分公式,具体参数可根据不同业务灵活调整。

参考资料

神马搜索如何提升搜索的时效性?

如何设计开发一个热榜?

基于用户投票的排名算法(四):牛顿冷却定律