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

推荐的背后,离不开每个用户的数据,而且这个用户要规模非常大,这个就叫用户流量,当然,每个用户的个人行为以及普遍习惯的收集,才是后台算法能做准确猜想和推荐的核心逻辑,这个就叫大数据。那么每天APP收集到的你得数据到底有那些?
什么叫做用户行为数据?
用户行为也叫做用户特征,专业术语叫做用户埋点。是很多大厂APP背后进行收集的用户第一首资料。而事实上这是APP系统能够推荐起到的关键作用。用户特征具体分为:视频特征、用户特征。对于用户来讲,抖音会实时的记录用户对某个视频的点击、播放、停留、关注、评论、点赞、转发等行为,并根据这些特征离线或实时的进行计算。

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

(1)当一个新用户上传一个视频时,首先由设计好的系统对视频进行自动打标签,获取视频的显式特征信息;
(2)其次将该视频先随机推荐给1万个用户(又称流量池);
(3)这些被推荐的用户根据其对这个新上传的视频进行相关交互(点击、播放、停留、关注、评论、点赞、转发等),根据交互的用户行为数据,来判断当前的视频质量如何(尤其是该视频的完播率如何, 完播率意指整个视频完整的被观看的次数占比),当然这里的算法很复杂,通用的有机器学习的监督分类算法。通过机器学习后的结果,就普遍对该视频的质量有一个打分,再通过打分来判断,是否进一步扩大推荐的范围;
(4)更优秀的视频会被推荐到更大的流量池,以获得更多的用户浏览量。
因此这套机制可以避免资源倾斜问题,即便是一些新用户(或使用小号),在上传的视频中,如果质量好,都有机会获得更多的浏览量,该推荐机制避免了系统偏向大号大V的问题。
另外,抖音推荐还会涉及到对社交网络的挖掘。在基于内容给的推荐时,根据用户关注的主播,或已查看相关主播的多个视频时,可根据该主播的其他粉丝的兴趣来进行推荐,这一部分则可以涉及到社交关系知识图谱,以此发现更多新的视频。这也就是说,当你在持续刷抖音时,总会发现一些新的感兴趣的视频。
对于算法,要结合实际的应用场景,例如对于抖音推荐,目标是为了使得推荐的视频能够更加符合用户的兴趣,因此其优化目标是完播率;而对于一些广告服务的平台,例如爱奇艺视频附带的广告,其优化目标则是最大化广告的点击率(CTR),从而获得更多的广告服务费;而对于淘宝天猫等电商,其优化目标则是兼顾用户是否查看某个商品的点击率(CTR),以及是否会产生购买行为的转化率(CVR)。因此对于算法的设计,需要结合实际的优化目标。常用的推荐算法有:
(1)基于协同过滤的推荐,包括基于用户和基于内容两个部分;
(2)基于矩阵分解或因子分解机的推荐;
(3)基于逻辑回归、集成学习等机器学习方法;
(4)基于Embedding和相似度匹配的推荐;
(5)基于深度学习的推荐
现如今常部署在大数据底层系统上的算法以机器学习或简单的深度学习模型为主,因此大多数领域内,推荐系统不仅在乎准确率,更在乎其实时性,因此部署的模型参数不宜过多。
用户的交互数据通常是支撑大数据和推荐的关键,没有用户交互行为数据,无法谈得上推荐,因此如何构建并提取用户行为在学术界和工业界非常关心的问题,通常对用户的数据采集可以包括一些显式交互数据(包括点击、转发、购买等)和隐式交互数据(包括播放时长,停留时长、社交关系等)。可以通过客户端session对数据的实时获取并保存在数据库中。
推荐系统的未来趋势
现如今各大平台之间数据不流通的问题,是制约推荐系统的发展。例如一个用户间断性的在抖音和微视上看视频,使得两个平台的用户行为是间断性的,然而多个平台之间的数据通常由于商业竞争原因而无法公开,从而影响推荐的性能,使得对用户画像的构建不完善,因此突破此屏障的最新方法是基于数据中台和基于联邦学习的框架体系:
(1)数据中台:缓解数据孤岛,将多个平台的数据汇总在一起,并可实现数据复用与共享;但这通常需要多个公司之间满足一定的协议。在数据中台的基础上,实现大数据挖掘和推荐,可以进一步提高收益;
(2)联邦学习:联邦学习是近两年比较火的概念,其主要解决的就是各大企业之间不愿意公开数据,而使得模型无法充分学习到用户的行为特征的问题。如果利用联邦学习,各个公司的数据无须汇总到一个中心结点,而只需要一定的联邦算法,让模型分布式地进行学习,既可以充分利用各个平台的数据,又可以保证数据的隐私性和安全性。
相关文章:
你了解互联网APP推荐的背后逻辑么(下)?
上篇重点介绍了互联网APP在搜索交互场景下的通用逻辑,让大众对每天离不开的搜索进行了一个普遍介绍。这一篇,我们来聊聊抖音、头条等APP划一划这个动作背后,是怎么做推荐的。推荐的背后,离不开每个用户的数据,而且这个…...
总是跳转到国内版(cn.bing.com)?New Bing使用全攻略
你是否想要使用强大的(被削后大嘘)New Bing? 你是否已经获得了New Bing的使用资格? 你是否在访问www.bing.com/new时提示页面不存在? 你是否在访问www.bing.com时总是重定向到cn.bing.com而使用不了New Bing? New Bi…...
神经网络的基本骨架—nn.Module使用
一、pytorch官网中torch.nn的相关简介可以看到torch.nn中有许多模块:二、Containers模块1、MODULE(CLASS : torch.nn.Module)import torch.nn as nn import torch.nn.functional as Fclass Model(nn.Module):#nn.Module---所有神经网络模块的…...
面试官:你是怎样进行react组件代码复用的
mixin Mixin 设计模式 Mixin(混入)是一种通过扩展收集功能的方式,它本质上是将一个对象的属性拷贝到另一个对象上面去,可以拷贝多个属性到一个对象上,为了解决代码复用问题。 常用的方法:JQuery 的 exte…...
arxiv2017 | 用于分子神经网络建模的数据增强 SMILES Enumeration
论文标题:SMILES Enumeration as Data Augmentation for Neural Network Modeling of Molecules论文地址:https://arxiv.org/abs/1703.07076代码地址:https://github.com/Ebjerrum/SMILES-enumeration一、摘要摘要中明显提出:先指…...
倒计时2天!TO B人的传统节日,2023年22客户节(22DAY)
去年,2022.02.22,正月二十二星期二,在这个最多2的一天,成功举办了“首届22客户节(22DAY)”,一群To B互联网人相约杭州见证; 癸卯兔年,2023.02.22,让我们再度…...
java版工程管理系统Spring Cloud+Spring Boot+Mybatis实现工程管理系统源码
java版工程管理系统Spring CloudSpring BootMybatis实现工程管理系统 工程项目各模块及其功能点清单 一、系统管理 1、数据字典:实现对数据字典标签的增删改查操作 2、编码管理:实现对系统编码的增删改查操作 3、用户管理:管理和…...
数据结构刷题(六):142环形链表II、242有效的字母异位词、383赎金信、349两个数组的交集
1.环形链表II题目链接思路:设置快慢双指针注意:(1)是否有环(快慢双指针是否能碰面也就是相等)(2)环形入口的判断。从头结点出发一个指针,从相遇节点 也出发一个指针&…...
OpenGL学习日记之光照计算
引言 现实生活中的光照极其复杂,而且会收到很多因素的影响,是我们当前计算机的算力无法模拟的。因此我们会根据一些简化的模型来模拟现实光照,这样在可以模拟出近似的光照感受,但是又没有那么复杂的计算。 常用的光照模型有&…...
七大排序经典排序算法
吾日三省吾身:高否?富否?帅否?答曰:否。滚去学习!!!(看完这篇文章先)目前只有C和C的功底,暂时还未开启新语言的学习,但是大同小异,语法都差不多。目录:一.排序定义二.排序…...
设计模式—“对象性能”
面向对象很好地解决了“抽象”的问题,但是必不可免地要付出一定的代价。对于通常情况来讲,面向对象的成本大都可以忽略不计。但是某些情况,面向对象所带来的成本必须谨慎处理。 典型模式有:Singleton、Flyweight 一、Flyweight 运用共享技术将大量细粒度的对象进项复用,…...
基于Spring Boot的零食商店
文章目录项目介绍主要功能截图:登录后台首页个人信息管理用户管理前台首页购物车部分代码展示设计总结项目获取方式🍅 作者主页:Java韩立 🍅 简介:Java领域优质创作者🏆、 简历模板、学习资料、面试题库【关…...
Python语言的优缺点
为初学者而著!适合准备入行开发的零基础员学习python。python也是爬虫、大数据、人工智能等知识的基础。感兴趣的小伙伴可以评论区留言,领取视频教程资料和小编一起学习,共同进步!https://www.bilibili.com/video/BV13D4y1G7pt/?…...
3款强大到离谱的电脑软件,个个提效神器,从此远离加班
推荐3款让你偷懒,让你上头的提效电脑软件,个个功能强大,让你远离加班! 很多几个小时才能做好的事情,用上它们,只需要5分钟就行!! 1、JNPF —— 个人最喜欢的低代码软件 它为开发者…...
vue3 使用typescript小结
最近学习vue3 typescript,网上看了很多文章,汇总一下,分享给大家,希望会对大家有帮助。 一. 为props标注类型 defineProps()宏函数支持从它的参数中推导类型: <script setup langts>import { defineProps } fro…...
PYTHON爬虫基础
一、安装package 在使用爬虫前,需要先安装三个包,requests、BeautifulSoup、selenium。 输入如下代码,若无报错,则说明安装成功。 import requests from bs4 import BeautifulSoup import selenium二、Requests应用 了解了原理…...
JavaScript刷LeetCode模板技巧篇(一)
虽然很多人都觉得前端算法弱,但其实 JavaScript 也可以刷题啊!最近两个月断断续续刷完了 leetcode 前 200 的 middle hard ,总结了一些刷题常用的模板代码。 常用函数 包括打印函数和一些数学函数。 const _max Math.max.bind(Math); co…...
ros-sensor_msgs/PointCloud2消息内容解释
1.字段解释 header-----头文件,包含消息的序列号,时间戳(系统时间)和坐标系id,其中secs为秒,nsecs为去除秒数后剩余的纳秒数 height-----点云的高度,如果是无序点云,则为1,例子中的点云为有序点…...
LeetCode 每日一题2347. 最好的扑克手牌
Halo,这里是Ppeua。平时主要更新C语言,C,数据结构算法......感兴趣就关注我吧!你定不会失望。 🌈个人主页:主页链接 🌈算法专栏:专栏链接 我会一直往里填充内容哒! &…...
MMPBSA计算--基于李继存老师gmx_mmpbsa脚本
MMPBSA计算–基于李继存老师gmx_mmpbsa脚本 前期准备 软件安装 安装gromacs, 可以查阅 我的blogGromacs-2022 GPU-CUDA加速版 unbantu 安装 apbs, sudo apt install apbs 安装 gawk, sudo apt install gawk MD模拟好的文件 我们以研究蛋白小分子动态相互作用-III(蛋白配体…...
CTF show Web 红包题第六弹
提示 1.不是SQL注入 2.需要找关键源码 思路 进入页面发现是一个登录框,很难让人不联想到SQL注入,但提示都说了不是SQL注入,所以就不往这方面想了 先查看一下网页源码,发现一段JavaScript代码,有一个关键类ctfs…...
黑马Mybatis
Mybatis 表现层:页面展示 业务层:逻辑处理 持久层:持久数据化保存 在这里插入图片描述 Mybatis快速入门 
数据简介 今天我们分享的数据是全球30米分辨率湿地数据集,包含8种湿地亚类,该数据以0.5X0.5的瓦片存储,我们整理了所有属于中国的瓦片名称与其对应省份,方便大家研究使用。 该数据集作为全球首个30米分辨率、覆盖2000–2022年时间…...
vue3 定时器-定义全局方法 vue+ts
1.创建ts文件 路径:src/utils/timer.ts 完整代码: import { onUnmounted } from vuetype TimerCallback (...args: any[]) > voidexport function useGlobalTimer() {const timers: Map<number, NodeJS.Timeout> new Map()// 创建定时器con…...
【git】把本地更改提交远程新分支feature_g
创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...
【服务器压力测试】本地PC电脑作为服务器运行时出现卡顿和资源紧张(Windows/Linux)
要让本地PC电脑作为服务器运行时出现卡顿和资源紧张的情况,可以通过以下几种方式模拟或触发: 1. 增加CPU负载 运行大量计算密集型任务,例如: 使用多线程循环执行复杂计算(如数学运算、加密解密等)。运行图…...
如何在最短时间内提升打ctf(web)的水平?
刚刚刷完2遍 bugku 的 web 题,前来答题。 每个人对刷题理解是不同,有的人是看了writeup就等于刷了,有的人是收藏了writeup就等于刷了,有的人是跟着writeup做了一遍就等于刷了,还有的人是独立思考做了一遍就等于刷了。…...
学校时钟系统,标准考场时钟系统,AI亮相2025高考,赛思时钟系统为教育公平筑起“精准防线”
2025年#高考 将在近日拉开帷幕,#AI 监考一度冲上热搜。当AI深度融入高考,#时间同步 不再是辅助功能,而是决定AI监考系统成败的“生命线”。 AI亮相2025高考,40种异常行为0.5秒精准识别 2025年高考即将拉开帷幕,江西、…...
嵌入式学习笔记DAY33(网络编程——TCP)
一、网络架构 C/S (client/server 客户端/服务器):由客户端和服务器端两个部分组成。客户端通常是用户使用的应用程序,负责提供用户界面和交互逻辑 ,接收用户输入,向服务器发送请求,并展示服务…...
