利用上下文信息
系统时间特性的分析
为什么要研究系统的时间特性?
不同系统有不同的时效性,有的系统物品的时效性很短,热起来,很快会冷下去;而有的系统物品的时效性长,具有比较长的生命周期。
研究系统的时间特性,能增强系统的有效性推荐。比如推荐新闻,会主要选择最近时间段发生的新闻事件进行推荐;而推荐旅游景点,时效性较长(有些也有季节性变化),则考虑主要从用户目前的兴趣出发来推荐景点。
如何研究系统的时间特性呢?
1 数据集每天独立用户数的增长情况
2 系统的物品变化情况
物品的生存周期,包括:
1) 物品平均在线天数即至少被一个用户产生过行为;
物品平均在线天数与流行度成正比
对于同一流行度的物品,不同的平均在线天数反映时间有效性不同。
2) 相隔T天系统物品流行度向量的平均相似度
平均相似度越小,说明系统中物品在T天后发生了很大变化,时效性很强;
平均相似度越大,说明系统中物品在T天后变化很小,时效性比较弱。
3 用户访问情况(用户平均活跃天数;相隔T天系统的用户的重合度)
推荐系统的实时性
用户的兴趣是不断变化的,一个实时的推荐系统需要能够实时响应用户新的行为。
实时推荐系统需要对用户行为的存取有实时性需求,还要求推荐算法本身具有实时性。
推荐算法需要平衡考虑用户的近期行为和长期行为,既要反映用户近期行为所体现的兴趣变化,又不能完全受近期行为的影响。
时间上下文推荐算法
引入时间上下文,物品
i
i
i的热门程度(流行度):对于每个用户,在
t
t
t时刻选择了物品
i
i
i,在某个特定时刻T,物品
i
i
i的流行度
N
i
(
T
)
N_{i}\left ( T \right )
Ni(T)与时间间隔
(
T
−
t
)
(T-t)
(T−t)成反比:
1. 时间上下文相关的ItemCF算法
物品相似度:用户在相隔很短的时间内共同喜欢的物品具有更高相似度。
物品
i
i
i与
j
j
j的相似度与时间间隔成反比,与被用户共同喜欢的次数成正比,但为了惩罚热门物品,会有与热门物品
j
j
j出现次数成平方根反比:
α
\alpha
α 是时间衰减参数,它的取值在不同系统中不同。如果一个系统用户兴趣变化很快,就应该取比较的的
α
\alpha
α,反之需取比较小的
α
\alpha
α。
用户
u
u
u在
t
u
j
t_{uj}
tuj时刻对物品
i
i
i有过行为,记为
(
u
,
i
,
t
u
j
)
(u,i,t_{uj})
(u,i,tuj),用户
u
u
u对物品
i
i
i的兴趣程度计算为:
物品相似度与物品被不同用户选择的时间差成反比;用户对物品最近的喜好程度与用户最近的行为关系更大,即最近时间与物品被选择时间的差成反比。
2. 时间上下文相关的UserCF算法
用户兴趣相似度与用户选择物品的交集成正相关,交集中物品时间越接近,相似度越高。
在找到和当前用户
u
u
u兴趣相似的一组用户后,这组用户最近的兴趣显然比这组用户很久之前的兴趣更加接近用户
u
u
u今天的兴趣。
图模型的应用
一般来说,图上两个相关性比较高的顶点一般具有如下特征:
1 两个顶点之间有很多条路径相连;
2 两个顶点之间的路径比较短;
3 两个顶点之间的路径不经过出度比较大的顶点。