围观!Twitter算法已开源 译文 精选

2023-04-06
关注

​编译 | 王瑞平

审校 | 云昭

3月的最后一天,推特的推荐算法终于在Github上开源了,马斯克的承诺兑现了。

图注:马斯克在推特上表示,上周发布的是“大部分推荐算法”,并表示其余部分将在未来发布

按照马斯克之前的承诺,上周,Twitter已在GitHub上发布了“时间轴上显示哪些推文”的代码,并发布了一篇博客文章阐述了具体细节。

博客文章特别深入介绍了推荐算法的工作原理。开源代码的做法不仅帮助马斯克兑现了承诺,还有助于增加用户信任度、利于产品优化改进。

1、Twitter的推荐算法

文章详细描述了算法执行的每一步,并介绍了推荐系统由许多相互关联的服务和工作组成。虽然Twitter的很多区域都推荐推文(往往以搜索、探索、广告的形式出现),但是,这篇文章主要介绍了For You时间轴上的推荐系统。

Twitter每时每刻都在为用户提供来自世界各地的新闻。这就需要一种独特的推荐算法,从每天发布的大约5亿条推文中提炼出几条最热门的推文,最终显示在设备的For You时间轴上。  

具体来讲,推荐的算法系统以一组核心模型和功能为基础,从Twitter、用户和参与度数据中提取潜在信息。模型旨在回答关于Twitter网络的重要问题,比如,“你未来与另一个用户互动的概率是多少?”“Twitter上有哪些社区,这些社区里有哪些热门推文?”准确回答这些问题可以让Twitter提供更相关的建议。

推文途径主要由3个阶段组成:第一个阶段,系统会从不同的推荐源获取最好的推文,这个过程称为推荐源候选;第二个阶段,系统会使用机器学习模型对每条推文进行排名;第三个阶段,启发式和过滤器开始执行命令,例如,过滤来自已经屏蔽的用户的推文、不适合在上班时浏览的内容和已看到的推文。

顺便说一句,负责构建和服务For You时间轴的服务系统叫做Home Mixer。它构建在Product Mixer上,是自定义的Scala框架,可以方便地构建内容提要。该服务充当连接不同候选源、评分函数、启发式和过滤器的软件主干。

2、For You时间轴模型

模型的关键部分以在单个时间轴请求期间的调用顺序开展,首先需要从Candidate Sources中检索出候选源。

Twitter有几个候选源,用来为用户检索最近的和相关的推文。对于每个用户请求,系统试图通过候选源从数亿条推文中提取出最好的1500条推文。然后,从你关注的人(网络内)和你不关注的人(网络外)中寻找候选源。

具体来讲,For You时间轴可以让用户时间轴中大约有50%来自用户关注的人(称为“内部网络”)的推文,以及50%来自用户没有关注的“外部网络”账户的推文。排名旨在“优化积极参与(例如,点赞、转推和回复)”,最后一步将试图确保用户不会看到太多来自同一个人的推文。

3、内部与外部网络消息源

下面再来具体介绍下上文提到的内部与外部网络消息源。内部网络消息源是最大的候选消息源,旨在提供你关注的用户最新发布的最相关推文。它使用逻辑回归模型根据你关注的推文的相关性有效地排名。排名靠前的推文会被送到下一个阶段。

内部网络消息源最重要的组成部分是Real Graph(实数图)。Real Graph是一种预测两个用户之间产生互动可能性的模型。用户和推文作者之间的Real Graph得分越高,模型中就会包含更多他们的推文。

那么,什么是外部网络消息源呢?众所周知,在用户所关注的网络之外寻找相关推文是一项棘手的问题,原因是如果用户不关注作者,怎么知道某条推文是否与其相关?Twitter采取了两种方法解决这个问题。

第一种方法是构建社交图谱。图谱通过分析用户关注的人或有相似兴趣的人的活动估算出与你相关的信息。在此期间,系统将自动浏览相关业务图表,并回答以下问题:“我关注的人最近都发了哪些推文? 谁喜欢和我相似的推文,他们最近为哪些文章点赞?

系统根据这些问题的答案生成候选推文,并使用逻辑回归模型对结果推文进行排名。

第二种方法是构建嵌入空间,旨在回答系统关于内容相似性的更普遍问题:哪些推文和用户与我的兴趣相似?

嵌入空间的工作原理是生成用户感兴趣和推文内容的数字表达式。然后,用户可以在这个嵌入空间中计算任意两个用户、推文或用户-推文对之间的相似性。如果生成准确的嵌入,模型可以用这种相似性替代相关性消息。

例如,Twitter最有用的嵌入空间之一是SimClusters。SimClusters使用自定义矩阵分解算法,能够发现由有影响力的用户集群锚定的社区。目前,共有145000个社区,每三周更新一次。社区的规模从个人朋友群的几千用户到新闻中出现的数亿用户不等,下图展示出一些最大的社区:

4、For You时间轴上的排行

下面再来介绍下推荐途径的第二阶段,即推文排名。For You时间轴上的排名是通过一个约48M参数的神经网络实现。该神经网络不断地训练推文交互,以优化积极的参与度(例如,点赞、转发和回复)。这种排名机制“考虑”数千个特征,并输出10个标签给每条推文打分。每个标签代表用户参与的概率,根据分数对推文进行排名。

5、将推文发送至设备

在排名阶段之后,启发式和过滤器能够帮助优化推文功能。这些功能共同创建出平衡和多样化的推文质量,包括:根据内容和个人喜好过滤推文、避免同一作者连续发布过多推文、确保网络内和外的推文数量平衡。

Home Mixer将推文准备发送到终端设备。系统将推文与其它非推文内容(如,广告、关注推荐和登录提示)混合在一起,这些内容将返回到终端上显示。至此,一个完整的推文过程就结束了。

6、Twitter未来的动作

未来,Twitter将以此为基础,不断打造出更好的分析平台,为创作者提供更多关于覆盖面和参与度的信息。并且,用户推文或账户上的任何安全标签都会变得更透明。

为此,Twitter正在努力寻找新的机会扩展其推荐系统,包括:新的实时功能、嵌入和用户表示,旨在构建出世界上最有趣的数据集和用户基础。但是,Twitter也将因此面临来自开源社区的潜在竞争。

参考资料:

https://blog.twitter.com/engineering/en_us/topics/open-source/2023/twitter-recommendation-algorithm

https://www.theverge.com/2023/3/31/23664849/twitter-releases-algorithm-musk-open-source

您觉得本篇内容如何
评分

相关产品

Honeywell 霍尼韦尔智能工业 在线/便携烟气分析仪专用传感器 气体传感器

CO 传感器;SO2传感器;NO2 传感器;NO传感器;氧气传感器

微著科技 高性能传感器ASIC解决方案 MEMS传感器

微著科技是国内为数不多能够给传感器厂商提供定制高性能传感器解决方案的团队,目前已为国内众多院所及知名传感器公司提供了十余个传感器解决方案并已经实现量产。微著传感器ASIC方案的特点:成熟的仪表信号模块IP易于快速搭建;系统方案超低噪声;成熟的24ADC可同时实现模拟数字传感器方案设计;高效率及丰富的方案设计经验。

南方泰科 TGM 压力传感器

TGM是一款SOP8封装的压阻式MEMS压力传感器,其压力传感器芯片封装在 SOP8 塑封壳内。在传感器压力量程内,当用固定电压供电时,传感器产生毫伏输出电压,正比于输入压力。压力传感器芯片为绝压,可提供不同的压力量程的SOP8 压力传感器。

鑫精诚传感器 XJC-T001 压力传感器

◆传感器激光焊接密封,环境适应性较强 ◆球形联接件,始终保持模块的垂直称重状态 ◆支撑螺栓,防止设备倾覆且方便维护 ◆接地装置,保护传感器免受电源浪涌冲击 ◆过载保护装置,保护传感器免受冲击力

Huba Control 富巴 525系列 压力传感器

525系列压力传感器采用集公司20多年研发经验的陶瓷压力传感器芯片技术。该系列压力传感器可选压力范围大,电气连接形式多。最小量程为50mbar。大批量使用具有很好的性价比。

Winsen 炜盛科技 MH-410D 红外CO2气体传感器 红外传感器

MH-410D红外气体传感器是通用型、智能型、微型传感器,该红外传感器利用非色散红外(NDIR)原理对空气中存在的CO2进行探测,具有很好的选择性,无氧气依赖性,性能稳定、寿命长。内置温度补偿。该红外传感器是通过将成熟的红外吸收气体检测技术与微型机械加工、精良电路设计紧密结合而制作出的小巧型高性能红外传感器。该红外传感器可广泛应用于暖通制冷与室内空气质量监控、工业过程及安全防护监控、农业及畜牧业生产过程监控。

佰测传感 MS71 传感器

MS71差压传感器

Cubic 四方光电 PM3009BP 室外粉尘传感器

PM3009BP是一款专门针对餐饮油烟监测的油烟传感器,其采用旁流采样方式,自带除水雾装置,结合智能颗粒物识别算法,确保传感器能够快速准确的检测油烟浓度的变化,同时创新的镜头自清洁技术的应用,能够长效防护传感器油烟污染,大幅度延长传感器的使用寿命。

评论

您需要登录才可以回复|注册

提交评论

广告

选型助手

这家伙很懒,什么描述也没留下

关注

点击进入下一篇

苹果造芯大获成功,华米OV为何学不来?

提取码
复制提取码
点击跳转至百度网盘