今日头条算法推送怎么关闭 今日头条算法推送在哪

35白皮书 2022-12-09

今日头条发布了后台的算法原理不过用词比较考究、说的比较深奥让人感觉云里雾里不知何处本篇尽量用通俗语言进行解析希望对大家有所帮助。

1、【原文】今日头条算法推荐系统主要输入三个维度的变量。一是内容特征图文、视频、UGC小视频、问答、微头条等每种内容有很多自己的特征需要分别提取;二是用户特征包括兴趣标签、职业、年龄、性别、机型等以及很多模型刻画出的用户隐藏兴趣。三是环境特征不同的时间不同的地点不同的场景(工作/通勤/旅游等)用户对信息的偏好有所不同。结合这三方面纬度今日头条的推荐模型做预估这个内容在这个场景下对这个用户是否合适。

【解析】:

(1)内容特征好理解既是对各类文章、视频提取关键要素比如可以通过对文本进行语义识别识别出文章的主要关键字视频标题关键字如何这个工作主要目的是对文章进行画像方便以后对客户推荐。至于能否做到视频内容的关键字提取比如虽然标题是周杰伦相关视频但视频内容全部是方文山的帅气身影能否将视频中方文山这个关键字提取出来则暂不可知这个工作需要耗费巨大服务器资源估计头条暂时还没有做吧。

(2)用户特征同上面内容特征一样提取你的有效数据比如经常浏览哪种类型文字、你经常搜索的关键字、你注册时登记信息的内容、还有原文提到的用什么手机之类你是iphone我便显示这个游戏只能iphone玩你是安卓我便显示这个游戏只能安卓玩、甚至精细的话可以将每个人的留言呀、评论呀等进行关键字提取比如你经常评论历史内容文章即使你浏览此类文章比较少但是也可以作为一个关键指标进行使用通过以上各类方式最终形成用户画像方便后面对你进行文章视频推送。举个例子比如在通信行业我们经常会受到短信推荐什么什么套餐、购买流量包之类这就是通信公司通过客户分群、客户画像来实现的定向推送以保证推送效果、节省推送成本通信行业对一个人的画像会多达上千个关键指标用户特征的提取对推荐的准确度、有效度会起到相当大的作用; 注:画像是指对一篇文章或一个人的关键点分析通过这些关键点则可大体了解一篇文章或者一个人的具体形象。

(3)环境特征比如获取你当前所在位置是否在旅游区呀这个可以通过获取你实时位置来实现然后与你之前经常出现的所在地进行对比等方式确认当前状态是在家还是在旅游。如果系统检测到你在泰山游玩则可能会相应推送泰山的类似文章资料等等让你感觉:哇头条好智能! 通过上面三个方面可以作为数据基础分析当前你处于什么环境下结合你的用户画像以及文章的画像来推荐尽量做到推送给你的内容都是你感兴趣的。

2、【原文】点击率、阅读时间、点赞、评论、转发这些都是可以量化的。但一个大体量的推荐系统服务用户众多不能完全由指标评估引入数据以外的要素也很重要。有些算法可以完成有些算法还做不到、做的不好这就需要内容干预。

【解析】:可以量化的指标可以体现一些具体信息但是完全靠这个并不全面比如刷评论、转发等情况可能就会迷惑后台计算机的分析纯粹靠这些数据进行推荐是有问题里面提到的【数据以外的要素】比如当前社会热点虽然你的文章很热但是热点已过也不会因为文章的点击率大而继续给你推送;还有政策形势呀政策如有调整你的文章内容方向已不符合则也不会再次推荐例如房产方面文章等;上述这些数据并不存在于推荐算法数据里所以算法无法自动完成所以需要人工对这些数据内容进行维护设置以完善推荐机制。

3、【原文】没有一套通用的模型架构适用所有的推荐场景。我们需要一个非常灵活的算法实验平台这个算法不行马上试另一个算法实际上是各种算法的一个复杂组合。西瓜视频、火山小视频、抖音短视频、悟空问答都在用头条这一套推荐系统但具体到每套系统架构都不一样需要不断去试。

【解析】不同推荐场景需要不同的模型架构这个是比较容易理解的比如小视频是短时投入客户会很少计较时间成本所以关键的推荐机制可能并不是你的用户画像特征而是根据视频的点击率进行推荐点击率越大的视频肯定越容易吸引用户的兴趣;而文章需要投入时间成本较高精准投送要求会比较高所以各类内容推荐算法会根据不同的特点进行不一样的推荐机制需要不断尝试优化。 算法实验平台好理解比如第一种算法投入测试推送10000条信息实际点击有效率是50%相当于一条测试数据;后面再对其他多种算法测试最终选取点击率更高的算法进行应用。

4、【原文】算法推荐要达到不错的效果需要解决好这四类特征:相关性特征、环境特征、热度特征和协同特征。相关性特征解决内容和用户的匹配。环境特征解决基础特征和匹配。热度特征在冷启动上很有效。协同特征考虑相似用户的兴趣在一定程度上解决所谓算法越推越窄的问题。

【解析】相关性特征即是文章画像与你的用户画像一致性比较高则进行相应推荐。环境特征刚才也已经说明。热度特征在冷启动很有效冷启动的概念是说系统里面并没有你的相关画像数据比如游客登录了头条会怎么推荐呢可以通过热度特征即根据当前社会热点呀、文章阅读量高低排名呀等一些能代表普遍群体感受的指标进行推送选择。协同特征后面解释了为了解决算法越推越窄的问题比如通过你的行为、画像、环境等各类指标进行模型分析后适合推荐给你的文章太少应该怎么办呢这时候就可以寻找跟你特征相同的用户比如跟你同一个年龄段、同一个性别、同一个地区等相似用户的兴趣给你进行推荐可以作为一个推荐的补充以实现比较好的推荐效果。

5、【原文】今日头条有一个世界范围内比较大的在线训练推荐模型包括几百亿特征和几十亿的向量特征。完全依赖模型推荐成本过高因此有了简化策略的召回模型。基于召回策略把一个海量、无法把握的内容库变成一个相对小、可以把握的内容库再进入推荐模型。这样有效平衡了计算成本和效果。

【解析】:这几百亿特征大家可能很难想象主要就是包括上篇所说的文章画像、视频画像、用户画像所有文章包括普通文章、专业文章所有关键词集中起来数量是相当可观的这每一个关键字在拟合算法中就是一个向量。所以如果每一次的推荐都依赖这个更大的模型成本确实太高所以需要简化。 说明后面内容之前需要介绍一个关键词的含义:召回说直接点就是对符合条件的结果进行排序以决定给你推荐文章的顺序。在业界对推荐算法是否有效进行评价的时候需要用到召回率这个指标举例:所有可供推荐的文章库里共有40篇文章与你的用户画像相关实际通过推荐算法推荐给你了20篇但实际上有10篇是你真正喜欢的文章则召回率就是10/40=0.25精度是10/20=0.5。整句话意思就是根据推荐算法尽量缩小推荐内容库减少计算推荐成本。

6【原文】在今日头条工作前三年我收到用户反馈更大的一个问题就是“怎么老给我推重复的?” 其实每个人对重复的定义不一样。有人昨天看到一篇讲巴萨的文章今天又看到两篇可能就觉得烦了。但对于一个重度球迷来讲比如巴萨的球迷可能恨不得所有的报道都看一遍。解决这个实际上需要抽取文本特征比如哪些文章说的是一个事儿哪些文章基本一样等等。文本特征对于推荐的独特价值在于没有文本特征推荐引擎无法工作同时文本特征颗粒度越细冷启动能力越强。

【解析】:文本特征提取本身也是一个比较复杂的问题举个例子要对”人民生活水平”这句话进行语义解析提取特征可能会提取出如下一些关键字:人民-民生-生活-活水-水平至于怎么提取才贴合本篇文章要表达的意思则需要很复杂的后台逻辑了比如可以随便摘取人民日报1000篇文章作为语料库分析各个词语出现的频率把这个词语频率高低排序作为算法的基础数据来进行本篇文章文本特征的提取这是一种比较简单的方式。具体的要跟本篇文章如何结合保证提取的特征是准确的则需要更复杂的算法。 冷启动的意思上篇大体说过就是在没有用户信息的时候如何进行内容推荐比如新注册的用户或者游客比如腾讯公司统一用QQ号作为一个用户主索引你玩过什么游戏听过什么歌曲都可以作为用户画像特征应用到腾讯新闻的对你推荐文章的算法里头条当然也可以用sina微博账号、微信账号登录时的授权分析你曾经关注的微博账号、微信公账号信息等作为冷启动时的用户画像数据。

7【原文】语义标签的效果是检查一个公司NLP(自然语言处理)的试金石。频道、兴趣表达等重要产品功能需要一个有明确定义、容易理解的文本标签体系。所以在隐式语义特征已经可以很好地帮助推荐且做好语义标签需要投入远大于隐式语义特征的情况下我们仍然需要做好语义标签。

【解析】:何为隐式语义特征呢?简单说明一下当两个词或一组词出现在同一个文档中时这些词之间可以被认为是语义相关的。机器并不知道某个词究竟代表什么不知道某个词是什么意思但是通过大量文章的学习机器就能学习出这些词语是语义相关比如apple跟苹果、电脑和计算机通过这些相关性就可以对你搜索的内容、或者对你的用户画像进行匹配来推荐文章你搜电脑则文章特征包含计算机的文章也会推荐给你。语义标签则是明确指定词语的语义、相关性作为推荐算法的基础数据来使用也就是让机器明确明白词语的相关性当然后面这种算法需要耗费相当大的人力物力但是这个工作做好之后就保证了数据的准确性减少了依赖于机器学习的不可控制性当然这个功能也是一个公司自然语言处理最能展示实力的一环。

8【原文】除了用户的自然标签推荐还需要考虑很多复杂的情况:

1)过滤噪声:过滤停留时间短的点击打击标题党;

2)惩罚热点:用户在热门文章上的动作做降权处理;

3)时间衰减:随着用户动作的增加老的特征权重会随时间衰减新动作贡献的特征权重会更大;

4)惩罚展现:如果一篇推荐给用户的文章没有被点击相关特征(类别、关键词、来源)权重会被惩罚;

5)考虑全局背景:考虑给定特征的人均点击比例。

【解析】:里面描述的内容主要是考虑用户的自然标签之外的一些因素1)过滤噪声一般在做信号处理的时候需要对信号进行降噪处理以平滑信号曲线方便进行下一步处理。此处的过滤停留时间短的点击也是出于此考虑因为标题党可能会引入比较大的点击率但是也会有非常大的概率是进入后直接退出则这些点击率并不能代表你的文章比较好所以这部分点击就要过滤掉所以这个功能如果真正在推荐算法中应用的话标题党后面将不会再是提高收益的一种有效方式。 惩罚热点每个人在热点上的表现可能仅仅是因为随大流并不能代表你真正的用户画像所以这部分要降低操作的权重很好理解。 时间衰减也好理解比如你一年前喜欢看的文章特征相对于你前几天喜欢的文章特征当然是以前几天的特征为准作为推送依据啦。 惩罚展现这就是为什么文章说不行一直不行说行就猛地飙升上去的原因了。如果你写的一篇文章推荐给100个人没有一个人点击则你的文章特征权重就会降低以后的推荐数量就会降低了假设头条仁义的话可以给你重新进行文章画像再次进入推荐序列如果不仁义则可能就直接打入冷宫永不得翻身了。 考虑全局背景相当于上面所说的降噪处理比如你这篇文章一个人又评价又赞又转发但是其他100个人冷眼旁观根本不打开看则人均点击比例也是非常低的所以考虑这个因素的话你的文章也是不会得到大批量推荐的。

9【原文】比起批量计算用户标签采用流式计算框架可以大大节省计算机资源可以准实时完成用户兴趣模型的更新。几十台机器就可以支撑每天数千万用户的兴趣模型更新99%的用户可以实现发生动作后10分钟模型更新。

【解析】这个地方了解批量处理跟流式框架即可一般大数据处理工作比如这里面说的批量计算用户标签会选择业务量小的时间点进行批量处理比如在凌晨这样可以减少数据处理给业务带来的压力统一更新用户的标签但这里存在的一个问题便是无法及时更新用户的标签。 比如你昨天看了很多足球的相关文章足球这个标签的权重会相当高今天上午突发奇想对篮球感兴趣但如果标签更新延迟时间很长的话可能下午系统才会反应过来给你推荐篮球的内容你一上午的时间推送的可能全部是昨天关注的足球的内容这肯定不是用户希望的。 所以头条采用流式框架后可以基本做到实时数据处理基本在用户查看文章动作十分钟后就能对你的标签进行更新提高用户感受。

10【原文】影响推荐效果的因素有很多我们需要一个完备的评估体系不能只看单一指标点击率、留存、收入或是互动我们需要看很多指标做综合评估:兼顾短期指标和长期指标兼顾用户指标和生态指标注意协同效应的影响有时候需要做彻底的统计隔离等。有人问所有的这些指标能合成的一个公式吗?我们苦苦探索了几年目前还没有做到。

【解析】这里跟第二条类似单纯靠具体统计指标来进行推荐效果肯定是不好的比如单纯看一篇文章的点击量大就推送给所有用户肯定是不合适的所以需要进行综合评估。 这个综合评估就需要对一些因素的有效期限进行分析比如点击率有效期是比较短的一篇文章在发布第点击率高则系统会疯狂推送但是第二天可能点击率仍然比较高但是跟一些热点性的因素相比或者跟其他人写的新文章这个新鲜因素相比这个点击率有效性就比较差了可能就不会再次大批量推送所以说一个有效的兼容性广的评估是需要进行全面设计的具体指标的权重应该怎么设置比较好则需要通过不同的实验来判断。

11【原文】很多公司的算法做得不好不是人的问题是实验平台的问题。 如果A/B Test每次数据都是错的不是这儿错就是那儿错总上不了线这个事就废了。而一个强大的实验平台可以实现每天数百个实验同时在线高效管理和分配实验流量降低实验分析成本提高算法迭代效率。

【解析】算法是需要测试出来的数学模型里有各种各样的算法其实每一种算法无所谓好坏只是说在哪种场景下这个算法表现是比较好那个算法表现一般而已。如果一种算法机制能在概要设计阶段就能完全确定这样就是更好的话就不存在实验的说法了正是因为有很多不确定性一种算法的优劣也是不确定的所以能够降低试验成本、提高算法更新频率就成了提取有效算法的最主要的工作内容。

12【原文】头条现在拥有健全的内容安全机制。除了人工审核团队我们还有技术识别。包括风险内容识别技术构建千万张图片样本集的鉴黄模型超过百万样本库的低俗模型和谩骂模型等以及泛低质内容识别技术。

【解析】这个比较容易理解了随着头条作者数量增加纯粹靠人工审核那人力成本就太大了所以机器智能识别的重要性就凸显出来随着服务器性能的增加一些重复性的工作就可以通过机器来实现比如里面说的鉴黄模型就是通过图片的相似性判断来让机器自动识别也就是通过机器进行图像处理; 低俗模型和谩骂模型主要是需要先建立一些文字模板公式比如一句话里面含有哪些字符或者哪些字符组合就定义为低俗模型然后机器自动对文本进行匹配识别当匹配上之后就监测出来进行过滤这里面用到的主要是文本解析技术和语义识别技术现在业界也都已经基本成熟只是根据需要的不同进行不同的调整即可。

原文作者:purewater2014