你了解互联网APP推荐的背后逻辑么(下)?

news2024/9/21 8:04:05

上篇重点介绍了互联网APP在搜索交互场景下的通用逻辑,让大众对每天离不开的搜索进行了一个普遍介绍。这一篇,我们来聊聊抖音、头条等APP划一划这个动作背后,是怎么做推荐的。

推荐的背后,离不开每个用户的数据,而且这个用户要规模非常大,这个就叫用户流量,当然,每个用户的个人行为以及普遍习惯的收集,才是后台算法能做准确猜想和推荐的核心逻辑,这个就叫大数据。那么每天APP收集到的你得数据到底有那些?

什么叫做用户行为数据?

 用户行为也叫做用户特征,专业术语叫做用户埋点。是很多大厂APP背后进行收集的用户第一首资料。而事实上这是APP系统能够推荐起到的关键作用。用户特征具体分为:视频特征、用户特征。对于用户来讲,抖音会实时的记录用户对某个视频的点击、播放、停留、关注、评论、点赞、转发等行为,并根据这些特征离线或实时的进行计算。

抖音之所以能够让用户“越刷越上头”还在于其对推荐的改进,如图所示:

(1)当一个新用户上传一个视频时,首先由设计好的系统对视频进行自动打标签,获取视频的显式特征信息;

(2)其次将该视频先随机推荐给1万个用户(又称流量池);

(3)这些被推荐的用户根据其对这个新上传的视频进行相关交互(点击、播放、停留、关注、评论、点赞、转发等),根据交互的用户行为数据,来判断当前的视频质量如何(尤其是该视频的完播率如何, 完播率意指整个视频完整的被观看的次数占比),当然这里的算法很复杂,通用的有机器学习的监督分类算法。通过机器学习后的结果,就普遍对该视频的质量有一个打分,再通过打分来判断,是否进一步扩大推荐的范围;

(4)更优秀的视频会被推荐到更大的流量池,以获得更多的用户浏览量。

  因此这套机制可以避免资源倾斜问题,即便是一些新用户(或使用小号),在上传的视频中,如果质量好,都有机会获得更多的浏览量,该推荐机制避免了系统偏向大号大V的问题。

  另外,抖音推荐还会涉及到对社交网络的挖掘。在基于内容给的推荐时,根据用户关注的主播,或已查看相关主播的多个视频时,可根据该主播的其他粉丝的兴趣来进行推荐,这一部分则可以涉及到社交关系知识图谱,以此发现更多新的视频。这也就是说,当你在持续刷抖音时,总会发现一些新的感兴趣的视频。

对于算法,要结合实际的应用场景,例如对于抖音推荐,目标是为了使得推荐的视频能够更加符合用户的兴趣,因此其优化目标是完播率;而对于一些广告服务的平台,例如爱奇艺视频附带的广告,其优化目标则是最大化广告的点击率(CTR),从而获得更多的广告服务费;而对于淘宝天猫等电商,其优化目标则是兼顾用户是否查看某个商品的点击率(CTR),以及是否会产生购买行为的转化率(CVR)。因此对于算法的设计,需要结合实际的优化目标。常用的推荐算法有:

(1)基于协同过滤的推荐,包括基于用户和基于内容两个部分;

(2)基于矩阵分解或因子分解机的推荐;

(3)基于逻辑回归、集成学习等机器学习方法;

(4)基于Embedding和相似度匹配的推荐;

(5)基于深度学习的推荐

现如今常部署在大数据底层系统上的算法以机器学习或简单的深度学习模型为主,因此大多数领域内,推荐系统不仅在乎准确率,更在乎其实时性,因此部署的模型参数不宜过多。

  用户的交互数据通常是支撑大数据和推荐的关键,没有用户交互行为数据,无法谈得上推荐,因此如何构建并提取用户行为在学术界和工业界非常关心的问题,通常对用户的数据采集可以包括一些显式交互数据(包括点击、转发、购买等)和隐式交互数据(包括播放时长,停留时长、社交关系等)。可以通过客户端session对数据的实时获取并保存在数据库中。

推荐系统的未来趋势

  现如今各大平台之间数据不流通的问题,是制约推荐系统的发展。例如一个用户间断性的在抖音和微视上看视频,使得两个平台的用户行为是间断性的,然而多个平台之间的数据通常由于商业竞争原因而无法公开,从而影响推荐的性能,使得对用户画像的构建不完善,因此突破此屏障的最新方法是基于数据中台和基于联邦学习的框架体系:

(1)数据中台:缓解数据孤岛,将多个平台的数据汇总在一起,并可实现数据复用与共享;但这通常需要多个公司之间满足一定的协议。在数据中台的基础上,实现大数据挖掘和推荐,可以进一步提高收益;

(2)联邦学习:联邦学习是近两年比较火的概念,其主要解决的就是各大企业之间不愿意公开数据,而使得模型无法充分学习到用户的行为特征的问题。如果利用联邦学习,各个公司的数据无须汇总到一个中心结点,而只需要一定的联邦算法,让模型分布式地进行学习,既可以充分利用各个平台的数据,又可以保证数据的隐私性和安全性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/359728.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

谈谈Linux内核的噪声

Linux内核是广被使用的操作系统,从嵌入式家用设备,航空航天设备到超级计算机,到处都有Linux内核的身影,这归功于Linux内核丰富的配置带来的巨大灵活性。 网络虚拟化和软件定义网络的发展,也从另外一个方面证实了在网络…

Java线程的6中状态

Java 线程的状态 Java线程有六种状态: 初始(NEW)、运行(RUNNABLE)、阻塞(BLOCKED)、 等待(WAITING)、超时等待(TIMED_WAITING)、终止&#xff08…

layui框架学习(8:动态操作选项卡)

Layui官网示例(参考文献3)中的选项卡部分除了介绍选项卡的样式外,还介绍了新增选项卡、删除选项卡、切换选项卡等动态操作选项卡方式,主要调用element模块中与选项卡相关的函数实现,除此之外,element模块还…

树莓派下安装OpenEuler

openEuler作为华为开源的应用于嵌入式设备的操作系统,正在受到越来越多的关注。树莓派是一个很好的应用场景,这篇文章就介绍下如何在树莓派上安装openEuler。   ps:openEuler要求树莓派的版本是4B 1.下载openEuler镜像 镜像网址&#xff1…

【K哥爬虫普法】百度、360八年乱战,robots 协议之战终落幕

我国目前并未出台专门针对网络爬虫技术的法律规范,但在司法实践中,相关判决已屡见不鲜,K哥特设了“K哥爬虫普法”专栏,本栏目通过对真实案例的分析,旨在提高广大爬虫工程师的法律意识,知晓如何合法合规利用…

大数据框架之Hadoop:MapReduce(三)MapReduce框架原理——MapReduce工作流程

1、流程示意图 MapReduce详细工作流程(一) MapReduce详细工作流程(二) 2、流程详解 上面的流程是整个MapReduce最全工作流程,但是Shuffle过程只是从第7步开始到第16步结束,具体Shuffle过程详解&#xff0…

作为Linux C/C++程序员必备的工具

Linux系统 可以选择centOS或者ubautu server(不建议选择桌面版本的)。不建议裸机安装,玩坏了就特别麻烦。不建议使用有桌面版本的ubautu,在一定程度有桌面的版本的会消耗性能。 如果经济实力允许,可以购买云服务器。 参考文章: Ubuntu server…

一款基于各大企业信息API渗透工具

功能 剑指HW/SRC,解决在HW/SRC场景下遇到的各种针对国内企业信息收集难题 使用支持以下API,并支持合并数据导出 爱企查 (未登陆信息带*) 企查查(签名失效) 天眼查 阿拉丁 酷安市场 七麦数据 站长之家 veryvp 查询信息 IC…

15-基础加强3-单元测试日志

文章目录1.单元测试1.1概述【理解】1.2特点【理解】1.3使用步骤【应用】1.4相关注解【应用】2.日志2.1概述【理解】2.2日志体系结构和Log4J【理解】2.3入门案例【应用】1.单元测试 1.1概述【理解】 JUnit是一个 Java 编程语言的单元测试工具。JUnit 是一个非常重要的测试工具…

荧光标记ATTO647N NHS,ATTO 647N SE,ATTO 647N-琥珀酰亚胺酯用于单分子检测

【中文名称】 ATTO 647N-琥珀酰亚胺酯,ATTO 647N-活性酯【英文名称】 ATTO 647N-NHS,ATTO 647N NHS,ATTO 647N SE,ATTO 647N-NHS ester【光谱图】【CAS号】N/A【分子式】C46H55ClN4O5【分子量】779.41【基团部分】 ATTO【纯度标准…

5.6配置BGP联邦和团体属性

5.3.3配置BGP联邦和团体属性 1. 实验目的 熟悉BGP联邦和团体属性的应用场景掌握BGP联邦和团体属性的配置方法2. 实验拓扑 实验拓扑如图5-6所示: 图5-6:配置BGP联邦和团体属性 3. 实验步骤 (1)IP地址的配置 R1的配…

【Jmatpro 10.0】根据材料牌号输出应力-应变曲线

我的主页: 技术邻:小铭的ABAQUS学习的技术邻主页博客园 : HF_SO4的主页哔哩哔哩:小铭的ABAQUS学习的个人空间csdn:qgm1702 博客园文章链接: https://www.cnblogs.com/aksoam/p/17121006.html 1.前提条件 Jmatpro …

复盘会如何开出新花样?10种方式让你开出让人惊喜的复盘会【附复盘问题列表】

复盘是每个PMO和项目经理必备的技能之一,咱们分享过很多复盘的技巧和方法,如下:但是大家都会有个问题,那就是复盘形式单一,团队复盘几次就会失去兴趣?失去兴趣之后效果自然不会太好,如何把让大家…

C++设计模式(17)——备忘录模式

亦称: 快照、Snapshot、Memento 意图 备忘录模式是一种行为设计模式, 允许在不暴露对象实现细节的情况下保存和恢复对象之前的状态。 问题 假如你正在开发一款文字编辑器应用程序。 除了简单的文字编辑功能外, 编辑器中还要有设置文本格…

字符设备驱动基础(三)

目录 一、上下文和并发场合 二、中断屏蔽(了解) 三、原子变量(掌握) 四、自旋锁:基于忙等待的并发控制机制 五、信号量:基于阻塞的并发控制机制 六、互斥锁:基于阻塞的互斥机制 七、选择…

PMP备考经验—做题方法总结

考题类型 ITTO题 根据关键字考工具技术,输入输出的,所以掌握关键字是重点,典型的ITTO有六个:收集需求工具、质量管理工具、团队建设工具、管理团队的冲突跟了、风险应对的策略以及合同类型。PS:答案是工具技术或者文…

SVN无法连接到服务器的各种问题原因及解决办法

SVN专业使用教程详解 第一节 安装VisualSVN Server服务器 第一步 下载SVN服务器,需要链接的请私信。 点击下载的执行文档进行安装 选择组件 选择在部署 VisualSVN Server 时安装VisualSVN Server 和 Administration Tools 组件。 调整初始服务器配置 或者&…

带你一步步搭建Web自动化测试框架

测试框架的设计有两种思路,一种是自底向上,从脚本逐步演变完善成框架,这种适合新手了解框架的演变过程。另一种则是自顶向下,直接设计框架结构和选取各种问题的解决方案,这种适合有较多框架事件经验的人。本章和下一张…

【Django】缓存、中间件、分页、生成csv文件

一、缓存 定义:可以更快的读取数据的介质。一般用来存储临时数据,常用介质的是读取数据很快的内存。 缓存场景: 1、博客列表页 2、电商商品详情页 场景特点:缓存的地方,数据变动频率较少 1、数据库缓存 当把一次负…

研究 “B表里的数据是否全部都在A表里“ 的问题

背景 研究 “B表里的数据是否全部都在A表里” 的问题,那种写法比较合理效率高? 假设有A表和B表,B表通过自身外键和A表关联,查出B表中的外键值不在A中的。 过程 假设我们有t_master和t_pet表,即主人和宠物表&#x…