laobaozi
V2EX  ›  Spark

spark 做内容推荐,希望大佬给一些思路上的指导

By laobaozi at 2022 年 3 月 2 日 · 2657 次点击
公司准备做一个推荐功能,从文章库中根据用户阅读记录推荐相关的文章。这个文章库保存了所有子公司的文章,更新频率比较高,所以没有使用计算两两相似度的方式。

目前使用 spark 做 demo 实现如下:

1. submit 应用时传递用户 id

2. 将该用户的最后阅读的 5 篇文章合并为一条长内容

3. 获取最新的 500 篇文章

4. 用长内容与最新的 500 条生成一个 DateFrame 做余弦相似度计算,得到最相似的 topN

5. 定时或者实时触发 submit

虽然能跑,但是总感觉哪里不对。同时对如何实现批量为户计算推荐内容也没有好思路,难道传用户 id 数组然后是循环跑上述流程吗
8 条回复
jr55475f112iz2tu
   1
jr55475f112iz2tu  
   2022 年 3 月 2 日
这个余弦相似度里的向量,是以文章为单位的?
laobaozi
   2
laobaozi  
OP
   2022 年 3 月 2 日 via iPhone
@czfy 分词后计算 IDF
laobaozi
   3
laobaozi  
OP
   2022 年 3 月 2 日 via iPhone
@czfy 计算文章 IDF 的相似度 以文章为单位是指?
jr55475f112iz2tu
   4
jr55475f112iz2tu  
   2022 年 3 月 2 日
我其实是想问,你的指标是一篇文章一个,还是一篇文章有多个指标
laobaozi
   5
laobaozi  
OP
   2022 年 3 月 2 日
@czfy 一篇文章应该算只有一个指标吧 目前没有关键词 /权重等其他属性
jr55475f112iz2tu
   6
jr55475f112iz2tu  
   2022 年 3 月 2 日
如果只有 1 个指标感觉效果不会好,常见做法都是 1 篇文章多个标签做匹配的吧?
laobaozi
   7
laobaozi  
OP
   2022 年 3 月 2 日
子公司的内容不是很规范, 很多没有设置标签, 所以标签暂时做不了
laobaozi
   8
laobaozi  
OP
   2022 年 3 月 2 日
@czfy 效果如何目前来说不太重要,主要是知道目前这种计算模式可不可行
© 2026 V2EX · 36ms · 3.9.8.5