火狐体育竞彩网首页 NEWS
火狐体育竞彩网首页:关于新闻个性化推荐你不能不知道的4个部分
发布时间:2022-09-26 10:39:42 来源:火狐体育竞技 作者:火狐体育官网

  本文从内容画像、用户画像、召回和排序、推荐策略四方面分析了新闻的个性化推荐机制。

  关于个性化推荐,我的理解是:按照每个人的喜好,在合适的时间、合适的场景、把合适的内容以合适的形式呈现在用户面前,满足用户的需求。那么这里就涉及到了三部分,用户——算法和策略——内容。

  我们的“人”和“物”都是复杂的,需要用我们理解的符号去把他们描绘出来,让我们的程序理解。

  同样的,文章也会有分类。当我们打开一个资讯app,比如头条吧,就可以看到导航栏有:“军事”“历史”“时政”等等。

  这是我们在前台可见的,其实在它的背后,有一套庞大的分类体系,下面我们来说一下。

  在做分类的时候我们会遵循一些原则,这里我来说一下结构化分类体系搭建的原则。

  1)让程序根据站内用户浏览记录,抓取出浏览比较多的一些关键词,我们按照这些关键词去整合分类。

  但从实际操作来看,用户的兴趣分层是:(一二三级)分类——主题——兴趣点——关键词的层级,

  举个例子:科技(一级)——互联网(二级)——人工智能(三级)——智能办公(主题topic)——语音助手(兴趣点poi)——小爱(关键词)

  针对问题1:我们把三级分类词,如“人工智能”放到研发的文章召回系统,进行搜索——可以看到以“人工智能”为关键词可以召回的文章内容及数量,以此来判断此三级分类是否文章充足,进行调整。

  针对问题2:因为一部分的文章首先要经过标注团队的人工标注,在标注的时候,标注员会反馈具体某个三级分类存在的问题以及不合理性。此环节产品,运营,编辑都会介入,对于不合适的三级分类会进行修改。

  标注团队标注一定数量的文章,算法团队的工程师会用算法对人工标注的样本,进行有监督的机器学习,把剩余的文章用程序给它标上对应的分类。

  负责这部分工作的工程师,会用多种方法来对文章进行机器学习,比如有ABC三种。用三种方法对新的文章样本进行分类。

  然后让标注员对算法标分类的文章进行校验,从而得出三种方法为文章分类的准确性,公式如下:

  针对外部抓取的文章,算法工程师也会用这套方法对他们标记分类。到这里,我们的文章就可以分门别类的被放在内容池的不同地方了。

  当有了内容的画像,我们也需要用户的画像。那什么是用户画像呢,我认为是对用户这个客观实体的描募。

  比如我对自己进行一个总结:男,175cm,65千克,产品经理,26岁,月薪25k,无车……等等。

  做用户画像第一步要基于业务,也就是说用户画像是要对具体业务场景来服务的。

  在了解之后,我们会开始搭建画像特征的体系,这里说明一下,特征是一点点获取、建立和利用的;但特征体系在一开始需要搭建出来,尽可能的囊括各业务场景的需要。

  虽然某些特征可能在初始阶段还没有建立,但需要根据业务需求先列举出来;以便在做画像平台功能框架搭建的时候,不会因为没考虑到某类特征,而使后期画像平台的功能框架无法兼容。

  以下我从:基本信息、兴趣爱好、行为特征、社交和心理、消费与模型这5个方面做了一个简单的新闻资讯用户画像体系。

  一般来说在建立特征体系的时候,应该包含以下表头:一级特征分类、二级特征分类、特征描述、特征字段、特征值类型、特征来源、特征时效、最近更新内容、特征示例。

  事实特征是用户的基本信息,以及他在app内产生的行为:如用户的设备信息,地理位置,主动填写的性别,年龄,以及在客户端浏览文章中产生的点击行为等等。

  模型特征是我们基于用户的事实特征,制定一些规则建立的:如用户流失等级,用户消费等级,用户满意度等。

  长期特征如:用户基本信息里面的一部分特征,性别,年龄,生日,账号,设备等等。

  短期特征如:用户的兴趣爱好和行为特征,当然这里要说明用户的兴趣爱好也分为长期和短期,但这个是相对的,兴趣爱好仍然被我放在短期特征内。

  ①事实特征里的一部分,是我们通过用户主动填写或埋点来获得的,比如用户主动填写的性别,比如埋点获得的用户浏览时长。

  ②另一部分是根据业务指标来对事实特征进行复合计算,如:用户文章平均阅读时长=用户阅读的总时长/用户阅读的总文章数。

  模型特征则需要我们去制定一些规则,为我们的业务场景服务,比如用户流失等级,运营可以针对不同流失等级的用户上不同的运营策略。我们规定:

  搭建好用户画像特征体系之后,我们需要有个可视化的平台,用户画像平台。在功能上一般应分为四部分。

  我们可以通过特征圈选人群。比如用性别这个特征,分男女去看,不同的用户群体,喜好的文章一级分类有什么区别。

  当我们输入用户的id,可以看到这个用户所有特征的详细信息,同时也需要有个用户画像丰满度的总评分。

  比如我们可以圈选一部分目标用户,对他们进行广告投放,看这批用户后期在每一个环节的转化。

  画像平台应当对不同岗位的员工设置不同的权限,同时也需要对用户画像的特征进行管理,支持增删改查的操作。

  首先我来解释一下什么是召回,通俗易懂的理解就是:根据用户的一些“条件”把符合这些“条件”的文章从广阔的内容池里召唤出来,放到一个小的池子里。

  程序对文章进行信息抽取的时候,也是按照这样的结构,用深度优先遍历,按照栈结构先进后出的特点来抽取的。

  深度优先遍历这里我来说一下,如果是学计算机的同学,在《数据结构》这门课程中会学到。

  如下图是一个树结构,我们需要把每个节点都走一遍,“深度优先”顾名思义就是纵向最深,那么我们按照从左到右深度优先的规则,走一遍。

  就是因为上文提到的文章的结构是有标题有正文,在html语言中代表标题和正文的标识在每个部分的前后出现,相互一层层嵌套,采用深度优先遍历,抽取出的信息结构不会混乱。

  抽取后,程序需要识别出哪些是正文,哪些是广告。对于我们人来说,可以轻易辨别;但是对于程序而言,需要一些规则去让程序识别出来——

  规定文本块的位置:在页面中间的为3分,在页面左右两端的为1分,在页面底部的为2分。

  抽取信息之后,我们要对文章内容进行分词,对于我们人来说,我们可以根据学习经验对文本进行断句,但机器却并不知道。

  首先我们有一个字典集,这个里面包含我们所有的词语,当机器“读”一句话的时候,例如“个性化推荐真好玩”

  按照字典里面存在的词语去从左到右进行匹配,“个性”是一个词,做个记录,继续往下。“个性化”又是一个词,再做个记录。“个性化推”不是一个词语,继续向下“个性化推荐”是一个词语。

  这个N代表的就是对这句话用几个字去拆分,比如N=3,原句就会被拆分为“个性化”“性化推”“化推荐”……。

  如贝叶斯,根据语料库的历史信息,分析当一个汉字出现时,另一个汉字出现在它后面的概率,从而进行分词。

  低质过滤:会根据机器学习的历史低质文章算法,加标注人员标注的低质文章,对文章进行过滤。

  假设有A和B两篇文章,分词后,我们首先统计出两篇文章的高频,中频,低频词。去掉高频和低频词。比较A和B两篇文章中频词汇表的相似度,卡一个相似度的阈值。

  shingle会把A文章拆分为“我困了,困了晚,了晚安,晚安我,安我睡,我睡了。”;B文章拆为“我累了,累了晚,了晚安,晚安我,安我睡,我睡了。”

  两篇文章的相似度=重复词汇量/(A文词汇量+B文词汇量-重复词汇量)=4/(6+6-4)=50%,卡一个相似度的阈值。

  对相似度达到阈值的文章进行过滤,仅留一篇,比如按照发表的先后顺序留,或者按照文章质量的判定留等等。

  如根据用户对各分类文章的兴趣程度进行召回。举个例子:我们选取用户近7天内点击的文章所属的三级分类下的文章,按照当下点击数由高到低的选取30篇文章进入这路召回的集合。

  如根据用户在站内的行为特征来进行召回。举个例子:我们规定用户对文章有以下行为就代表了用户的行为特征,对某篇文章点赞(1分),评论(2分),转发(3分)。

  我们选取出这个用户近7天内,得分最高的5篇文章,所在的三级分类下的30篇新文章,进入这路召回的集合。

  我们把每个用户表达成了一个个的标签特征,我们想象每个标签就是一个坐标轴,每个特征的分值,就是这个特征在坐标轴上的长度。这样我们可以在一个多维坐标轴上,用一个向量来描述一个用户,代表不同用户的两个向量的夹角越小,就表示两个用户越相似。

  比如A用户和B用户向量化后很相似,那么我们认为B用户喜欢的东西,A用户也会喜欢,于是我们把B用户喜欢的东西推荐给了A用户。

  比如A用户喜欢甲文章,甲乙文章向量化后很相似,那么我们认为乙文章A用户也会喜欢,于是我们把乙文章推荐给了A用户。

  比如有ABC三个用户,A用户喜欢甲乙文章,B用户喜欢甲乙丙文章,C用户喜欢甲文章,于是我们认为喜欢甲文章的用户都会喜欢乙文章,于是把乙文章推荐给了C用户。

  每路召回形成的是一个基于每个用户的文章集合,我们需要把多路集合作为输入集灌入到我们的排序模型中。

  常用的排序模型有:LR(逻辑回归),GBDT(决策树),FM(因子分解机)等以及他们的复合变种。

  经过排序之后,对于每个用户,会输出一个新闻的信息流按照排序的规则(由高到低)。

  在工作中,我们都会有一个目标,为一个目标服务。比如:新闻的个性化推荐看重,uv点击率,次日留存率,用户的平均阅读时长等。

  对于新用户来说:我的理解是要尽快发现他们的兴趣,把他们留下来,然后提升点击。

  对于老用户来说:我的理解是要发掘他们更多的兴趣,提升他们的点击和阅读时长,减少流失。

  从实际体验出发,当我们在无线网络下,会更肆无忌惮的去点视频图文观看,而在有线环境下会更少一些。

  如果用户的行为符合这个猜想,那么在不同的网络状态调整不同类型文章的占比,可以提升用户的点击。

  为了验证这个猜想,我们可以做一个竞品调研。比如我们的新闻客户端是A,调研BCD三家新闻客户端在有线条资讯,首页信息流中纯视频的数量(广告除外)

  假设我们得到的结果如下图。我们发现竞品确实也做了这样的策略,那么我们需要做个ABtest来看下效果:

  每个组的5w用户,只有当此用户当日有分别在有线和无线网络下浏览新闻的行为,才会被计入统计。

  对照组1:5w用户保持线上逻辑,有线和无线网络状态,首页信息流推荐视频比例相等。

  对照组2:5w用户保持线上逻辑,有线和无线网络状态,首页信息流推荐视频比例相等。

  (说明:AAtest,保证实验组和对照组的变化,不是由于人群包切分或其他因素造成不同。)

  实验组1:5w用户在无线网络下推荐视频比例与对照组相同,有线网络状态下首页信息流降低5%比例的视频。

  实验组2:5w用户在无线网络下推荐视频比例与对照组相同,有线网络状态下首页信息流降低10%比例的视频。

  实验组3:5w用户在无线网络下推荐视频比例与对照组相同,有线网络状态下首页信息流降低15%比例的视频。

  各个分组(按日):人均曝光量,人均点击量,人均点击率,人均阅读时长,次日留存率等。

  实验设计是否合理,是否引入了其他变量,策略是否在线上生效,数据是否符合预期,用户对此需求的真伪,策略总结。

  大鹏,公众号:一个数据人的自留地。人人都是产品经理专栏作家《数据产品经理修炼手册》作者。

  听到很多言论说在中国程序员是吃青春饭的,那么产品经理呢,也吃青春饭吗?

  人人都是产品经理(是以产品经理、运营为核心的学习、交流、分享平台,集媒体、培训、社群为一体,全方位服务产品人和运营人,成立11年举办在线+期,线+场,产品经理大会、运营大会50+场,覆盖北上广深杭成都等20个城市,在行业有较高的影响力和知名度。平台聚集了众多BAT美团京东滴滴360小米网易等知名互联网公司产品总监和运营总监,他们在这里与你一起成长。