搜索和推荐
搜索引擎分为两部分:
- 离线专注从网站抓内容并建立不同的索引体系
- 基于关键词,每一个关键词对应一长串提及该关键词的内容,比如“教育“命中内容1,2,3;“NBA“命中内容1,2,4
- 关于索引:对信息的不同理解维度进行处理,如话题,类目,实体词等
- 用户搜索关键词,系统进行分词、变换、扩充、纠错(如NB2K --> NBA2K)等处理
- 在线部分响应搜索请求,完成内容的筛选和排序
- 召回-->排序-->干预(如插入官方网站到文章10和1之前)
- 排序例子:按照特定预估目标(如点击导向,互动导向,停留时长导向等)对候选集统一排序,经过规则层处理后反馈给用户
- 用户的点击反馈会影响排序环节的模型
区别
推荐系统和搜索最大的不同就在于用户表意不明确*。推荐系统需要尽可能完善用户的长期画像(对哪些类目,话题,实体词感兴趣)和短期场景(地点,时间等信息)。关于类目,可以是体育和科技内容。关于实体词,则类似NBA,华为,电动汽车等。
产品经理在推荐系统的角色
- 完善用户画像(通过外部渠道导入,也可借助产品设计和运营活动来引导用户沉淀行为。例如支付宝的集五福,让它收集到数以亿计的社交关系链数据)
- 优化信息召回(从所有检索结果中找出准确的请求结果)
- 完善规则系统
推荐:断物识人
- 断物
- 分类(树状,有父子继承关系,权威且完备)
- 贴标签(网状,表达属性关系,有权重之分,灵活性高)
- 设计系统时,基于产品场景快速覆盖主要标签,结合标签集合使用频次,专家建议等因素将部分入口收敛到树状的分类体系
- 识人
- 通过标签来描述一个用户的特征集合
- 用户画像
- 静态画像(年龄,职业,地点,省份等)
- 动态画像(用户的收藏,分享,评论,播放时长等行为数据);要注意到,用户的兴趣有时是短期,会随着时间推移从强到弱
推荐算法,就是物以类聚,人以群分
基于物品属性的相似性来推荐
- 作者层面的相似性(订阅和偏好关系)
- 内容层面相似性(如关键词,话题,类目,标签等)
- 场景:常见于音乐,书籍,电影中。好处是依赖物品本身,不用积累用户的行为数据,让新的和冷僻的物品有机会被展示。问题在于,依赖特征构建的完备,且标签词不够全面描述书的内容,就很难计算出置信的相似度,达不到好的结果。此外,没有考虑用户的态度,用户的品味和调性难以得到诠释和表达。例如市面上有很多“内容推荐“的书,如何辨高下?这时候就要引入受众了
基于用户行为的“协同过滤“
- 一个生活场景:初为人父母,新手爸妈到处打听育儿的各种情况,在亲子群里无时不刻的讨论。促成大家进行价值信息交换和购买转化的,是人与人的相似点,为人父母相似的价值观和消费观。把用户的消费行为作为特征,对用户相似性做计算和信息匹配,是协同过滤的基础
- 协同推荐
- 基于物品的协同:先确定你喜欢什么,再找到相似的物品。这里的不再是基于标签来分,而是用户反馈的角度来分。例如对于数据,不再根据标签等静态维度,而是哪些用户购买后给了高分和低分的动作。例如,微信读书,基于你的阅读历史计算,为你推荐《深度学习》
- 基于用户的协同:先找相似人群(如新手爸妈),然后将这一人群喜欢的新东西推荐给你。例如,微信读书,你有xx个朋友在读《自私的基因》
- 基于模型的协同:用户的喜好信息来训练模型,实施预测用户可能的点击率
推荐算法的应用场景
- 个性化推荐视频:抖音
- 基于用户消费历史推荐:如B站
- 基于Top热榜的推荐:Netflix,对个召回序列的头部结果,优中选优
- 基于时下流行的推荐:头条,给用户推荐可能关心的短期热点,典型的如周期性消费(节假日,赛事等);短期热门事件(四川发生6.8级地震)
以今日头条为例,推荐系统怎么连接内容与人呢?
背景:
今日头条时刻面临着新发布的内容和新的用户。对于这些新的存在,系统需要积累一定的曝光量和互动量来收集基础数据。这个过程很关键,关系到用户和创作者的满意度和App留存率
内容冷启动(即新发布的内容)
如果没有足够的正面用户反馈,则认为该内容是不受欢迎的,要控制负面影响如果内容找到目标人群,收获了很高的点击率,则被推荐系统快速放大成了爆款。由于一开始缺乏用户反馈,故推荐系统依赖内容的展示和消费维度来判断
内容展现:在首页展现给用户的信息,如标题,封面,发布时间等 内容消费:
- 作者层,作者粉丝群体更应该看到作者的新内容
- 内容层,分类信息,关键词,命中的实体和话题等,判断是否匹配用户偏好
系统运作:
首先考虑展现层,新发布的内容,可忽略评论,展示重点在于标题(吸引人),封面(清晰,表意明确),作者信息(有权威度,与内容的领域一致
其次考虑阅读体验是否与用户匹配。例如NBA有球赛,泛娱乐版权等角度报道,但在内容和用字上肯定不同。系统分析作者过往表现,统计词频(提及版权、分销还是比分、MVP等关键字)等方式来预估内容的话题属性和用户点击后是否满意。
用户冷启动
推荐服务的一大目标是:用户的留存率,在这个前提下,再去探索兴趣。冷启动时追求重大兴趣的收敛而非发散。
建立新用户画像,尽快完善信息收集和预处理工作
- 设备层,厂商,型号
- 权限层,是否是卸载重装的老用户;地理位置确定用户位置,住址,行为轨迹
- WIFI确定位置信息甚至社交关系
- 通讯录信息,如果你的多个朋友导入通讯录且给你同个备注,则系统估计你很大概率叫xx名字
- 应用层
- 不同的装机渠道,广告素材吸引不同的用户群体
- 登录方式
- 让读者选兴趣方向
- 冷启动时,典型的就是推荐热门榜单。满足了新和热两个特点,用户即使不太感兴趣也不会方案
内容供给
引入新的内容品类或创作者的时候,要尽快通过探索找到基础用户
方法一:大力出奇迹,生推。保证新品类内容展示给一定规模的用户群体。如微博引入梅西,就直接送一次全局的开屏广告,大品类内容具备大规模生产和消费需求,点击率不会损失太高,可能在百万规模的展示后,就能探索出相应的用户群体。但是小众的品类和平台则有些难做,例如千万日活跃用户,小品类受众可能万量级,展示100万次该新品类,预估点击人数就1000,再考虑目标受众错过或误点,那么这样的推荐效率是很低的。
此外,可以考虑引入专家系统的先验知识。例如对于嘻哈音乐,不考虑全人群的强展现而是给特定人群,换取更高的点击率。可以展示给喜欢个性,街舞和潮流服饰等分类内容的用户群体,年龄定到15-30岁。
自媒体和平台
平台对自媒体要评估、服务、引导
评估
- 原创度
- 健康度(用户阅读行为)
- 垂直度(领域是否专注)
- 关注度(粉丝量和活跃情况)
- 传播度(累计阅读和播放)
服务(平台角度的运营和保护)
引导(预期管理,创作者要符合规则,可以获得一定的预期性收益)
- 例如,滴滴,一个用户去机场,一公里内有一辆新手车,三公里处有一辆老手车,这个单下给谁
- 效率导向:给新手车
- 实际操作:在用户可接受的服务体验下,优化有积累的司机利益,将单子倾斜给老手车,决策同步给新手车,才能营造出平台参与者有成长性的群体期望
常见的推荐问题
**推荐重复。分为(列表页相同和不同,详情页相同和不同)四种情况
- 举例,红烧肉做法,郭德纲最新爆笑相声,新闻热点等。
- 都相同,那就推可靠的信息作者
- 列表页但详情页不同,拉长两篇内容的推荐间
- 列表页不同但详情页同,推给不同的用户群体
推荐密集。 密集的衡量取决我们怎么拆内容,如题材,作者,类目,实体词。避免列表页同一类内容占比过高,丧失多样性\
易反感内容。 要识别的准,再要推荐的好。识别过程采用数据产品中定量分析处理问题的通用流程:分析影响面,定义标准,数据收集标注,模型评估
时空限定内容
- 短时效性
- 中时效性。如《权力的游戏》,生产端要和内容生产节奏一致
- 长时效性。基于内容特点预判不同内容的衰减周期和推荐策略。经典的场景是搜索。要决定什么内容值得被长时间保留在候选集中,如用户在垂直类内容的消费是一个相对简便的方法,如围棋消费量是1万,但柯洁大战alphago的消费量是10万
- 注意地域局限性
本文内容是对《内容算法》的学习总结,作者是之前今日头条的工程师/产品经理的闫泽华。对于这本书,是值得认真吸收其经验的。\
以上总结了推荐系统的信息,推荐系统的协同过滤,用户画像的建立,内容的冷启动和生命。此后作者还讨论了编辑分发,算法分发,社交分发,业务场景,数据驱动产品优化,还有具体视角的自媒体运营。打算过两天再写一篇学习笔记。