如何避免内容重复推荐?聊聊去重服务

“请不要再给我推一样的内容了,拜托。”在面对平台一直跟你推荐同样的内容时,你是否是一样的想法。这样情况是否有改善的方法?本文作者从这一问题出发,对去重服务进行了分析探讨。

如果一个 APP 一直给你推荐同样的东西,就像一个人在你面前絮絮叨叨同一件事情,你的心情想必非常糟糕。

去重服务在资讯 APP 中是一项基础服务,PUSH、图文、视频、直播等内容业务,甚至是作者编辑后台都会需要使用。去重服务细拆开其实是很复杂的,也容易出现“众口难调”的问题,因为重复的类型可能有:不同信息载体的重复(文章和文章、视频和文章等)、不同场景的重复(feed 流、正文页等)、信息有无增量的重复(高度重复和一般相似等)……

  1. 无信息增量:包含的内容是同样的,用户从该内容中无法获得差异化的信息和体验。
  2. 有信息增量:包含的内容有部分相同或相似,即使之前已有相关的阅读,但用户从该内容中仍可以获得差异化的信息和体验。

对于第一种情况,是绝对去重,即将高度一致的内容过滤掉,“多选一”。关键点是“如何挑出原创或质量更高的内容”,文章质量、源质量、发布时间、原创度可以帮上忙。所谓“道高一丈魔高一尺”,上网搜关键词“躲避消重教学”,你会发现你要做的工作还有很多。

超级产品经理

(图片来自网络)

另外直播形式下的专题或机器批量生产的标题,不同内容的标题可能一模一样,为了避免误伤太多内容,需要细化去研究内容的特性。

对于去重服务,定义标准很重要,拿图片重复来说:

(1)背景、人物动作完全相同的图片

超级产品经理

(2)同一现场/背景,同一机位截图,人物相同(人物动作可能不同)

超级产品经理
(3)某图片的局部截图(至少半图及半图以上)

超级产品经理
以上三组图片,在我们的认知里一般属于重复,基于以上的定义,我们再看几组图片:

(娱乐类)同一综艺节目,同一机位截图,但人物不同:

超级产品经理
(游戏类)同一款游戏,不同背景截图:

超级产品经理
(游戏类)同一游戏背景截图,游戏人物不同:

超级产品经理
(母婴类)新生宝宝图:

超级产品经理
如果按先前三组的定义,以上图片属于重复,但从我们的日常体验能知道,它们是不一样的内容(只是同个系列),所以,区分分类(category)做细化的定义很有必要,只有这样机器才能按照人的期望学习并输出可用的结果。

除了内容,图片重复的形式也要定义,如在 feed 流里:

超级产品经理
对于有信息增量的情况,处理方式要精细得多,面对的是“怎么推”的问题。可以考虑“分层定义-> 分场景限制”的推荐策略。定义文章相似,能用来辅助判断的元素有:

  1. 标题
  2. 摘要
  3. 图片
  4. 正文
  5. 类别

视频还有物理时长、音频、字幕等。

我们先来看看标题相似(内容相似或体感相似)的 case:标题主体或关键词不同或模糊不清,强调的主旨相同,用词或长或短;同一事件不同角度:

超级产品经理
其中,容易被机器识别为相似从而产生 badcase(会降低内容的分发效率),产品汪需要留意一下:

  1. 不同主体同一方面
  2. 同一主体的不同方面
  3. 强本地属性的类似事件
  4. 同一领域中关联度较高的事件
  5. 同一领域(如星座、育儿)实体或关键词相似,但事件面不同
  6. 同属一赛事(如世界杯),不同赛事
  7. 体育球星、会议与政策之间等不同面

超级产品经理

当 NLP 能较准确识别相似内容时,分场景限制的策略可以从哪些维度入手?

  1. 时间间隔去重:如操作时间在 12 小时之内,做严格的相似过滤逻辑
  2. 刷数去重:如邻近 50 刷,做严格的相似过滤逻辑
  3. 事件去重:如同一事件内容不得黏连
  4. POI(兴趣点)/Keyword(关键词)去重:如同一刷同一个 POI 不得超过 3 个,重排打散
  5. 源去重:如同一刷同一个源的文章不得超过 1 篇

还可以对不同用户(如投诉过重复老旧的用户、新老用户)做不同程度的控制;也可以根据相似度将相似分层,做不同程度的控制;也可根据事件的热度,做不同程度的控制;也可以根据用户的兴趣的浓度做不同程度的控制。

去重力度需要产品汪把控,而且去重工作中还有很多内容需要确认:比较的对象、信息载体、时间长短、数据来源等等。没有最佳方案,本文旨在引发思考且补全思路,只有不断测试,才能找到适合自己产品的组合方案。

作者 张小喵 Miu