精通推荐算法1:为什么需要推荐系统(系列文章,建议收藏)

作者简介:

腾讯算法研究员。硕士毕业于中国科学院大学。在阿里和腾讯工作多年,拥有丰富的搜索和推荐算法经验。CSDN博客专家,原创文章100篇。发表专利15个,其中已授权6个。

系列文章,欢迎关注

精通推荐算法1:为什么需要推荐系统(系列文章,建议收藏)

精通推荐算法2:推荐系统分类(面试必备)

推荐算法架构6:数据样本(面试必备)

推荐算法架构7:特征工程(吊打面试官,史上最全!)

1 概述

随着互联网的大力发展,用户规模和内容规模均呈现迅猛发展。用户侧日活过亿早已不是什么新鲜事,内容侧由于UGC生产方式的普及,拥有几十亿内容库的平台也屡见不鲜。如何让海量用户在海量内容中找到自己喜欢的,以及如何让海量内容被海量用户精准消费,一直以来都是每个公司十分核心的问题。

在这个背景下,搜索系统推荐系统应运而生。搜索主要解决用户如何快速寻找自己感兴趣内容的问题,偏主动型消费。推荐则主要解决内容如何精准推送给合适用户的问题,偏被动型消费。二者对用户、平台和内容都有十分重要的意义。

推荐系统与用户体验

用户第一基本是当今每个互联网公司的共识,作为流量分发的中心,推荐系统也不例外。几乎所有想长远发展的公司,其推荐系统都会将用户体验放在第一位,其次才是兼顾商业价值。推荐系统可以从如下几个方面提升用户体验:

  1. 加快信息获取效率:当前推荐系统通常基于个性化分发,不同用户看到的内容不同,即“千人千面”。它可以从海量内容中发现用户感兴趣的,节省用户寻找有用信息的时间,从而有效解决“信息过载”问题。图1所示为两个不同性别用户在京东APP首页的展示内容。左图为男性用户,展示内容主要为数码商品、家具电器和自行车。右图为女性用户,则以女装、母婴和厨房用品等为主。
  2. 提升内容供给质量:推荐系统基于优胜劣汰的原则,高质量内容通常更容易获取流量,而低质量内容则很可能会被淘汰。这有利于刺激生产者提升内容生产质量,从而提升用户体验。例如用户可以很轻松的买到物美价廉的商品,很容易的浏览到有深度有见地的文章等。
  3. 培养用户潜在兴趣:推荐系统还能不断试探、挖掘和培养用户的潜在兴趣,带来一定的惊喜性。这有助于用户兴趣的多样化,避免信息茧房和审美疲劳,从而提升用户体验。例如用户购买了一部手机,则之后陆续给他推荐手机壳、贴膜和耳机等配件。一年后再给他推荐其他手机,因为可能到了换机的时候,从而最大化挖掘其潜在需求。很多时候,推荐系统可能比用户更了解自己。

图1 不同性别用户的京东APP首页

推荐系统与内容生产

内容供给是每个平台型公司安身立命的根本,例如电商公司的核心在于,商品能否做到“多快好省”,其中每个字都是关键。推荐系统作为流量入口和分发中心,对内容生产的作用不言而喻。它可以从如下几个方面助力内容生产:

  1. 提升内容生产公平性:基于优胜劣汰原则,高质量内容获取的流量要远大于低质量内容。转化率的提升,可以带来曝光机会的进一步增加。创作者用心付出,自然就能得到平台的回报。另外受众广的内容比受众窄的更容易得到流量,但其竞争往往也更为激烈,最终可以达到动态平衡。总之,推荐系统创造了一个相对公平的环境,让各种不同的内容可以充分自由竞争。
  2. 增加内容曝光机会基于个性化分发,推荐系统可以提升用户浏览量和粘性,从而提升平台整体流量。这也为每个创作者带来了福音,特别是曝光机会聊聊的尾部创作者。另外,个性化分发和热门打压策略,有助于流量的均衡化,避免过于集中在头部物品上。从而增加其他内容的曝光机会。
  3. 扶持有潜力的中小生产者:推荐系统同样存在马太效应,中小生产者数量很大,但曝光机会不多。他们虽然良莠不齐,但处于成长阶段,未来潜力很大。另外他们对内容多样性和平台生态意义重大。因此推荐系统往往会对其进行扶持。通过冷启保量生态扶持等策略,给予中小生产者一定流量,有利于加速其成长。

最后需要注意的是,增大用户规模提升用户粘性,才能做大平台整体流量,从而从根本上提升生产者曝光机会,以及做到流量普惠。要做到这些,还是需要不断提升用户体验。从这个角度同样可以看出用户体验的重要意义。

推荐系统与平台发展

推荐系统对平台发展同样至关重要。它很大程度上决定了内容分发效率,并与公司各项核心指标息息相关。它可以从如下几个方面助力平台发展:

  1. 扩大用户规模:优化推荐系统,有利于提升用户体验,可以增加用户留存,从而提升平台日活、月活和注册用户数等关键指标。不重视这一点的公司,辛辛苦苦做营销活动获取的新用户,也很容易流失掉。
  2. 提升平台流量好的推荐系统可以不断发掘和满足用户实时需求,让用户沉浸其中。这有利于提升用户消费深度和粘性,从而增加人均曝光、人均点击和人均时长等核心效率指标。目前抖音和快手等短视频平台,人均时长已经高达100分钟以上,推荐系统在其中起到了十分重要的作用。
  3. 增加公司收入公司发展的最终目的还是盈利,因此平台收入是终极目标。通过优化推荐系统,可以提高电商平台订单量和内容平台使用时长。从而有利于商业化目标(如广告)的达成。2021年天猫“双十一”成交额为5403亿元,其中大部分是搜索和推荐系统流量。即使1%的提升也能带来540亿元的增量,十分惊人。另外,抖音2022年广告收入超过2000亿元,推荐系统同样功不可没。

正因为推荐系统的重要地位,Netflix于2006年推出一项竞赛,获奖者可以获得100万美元的巨额奖金,以帮助优化其推荐系统。目前,各家公司在推荐系统上的研发投入,都毫不吝啬,也印证了其重要地位。图1-2所示为2009年-2021年天猫“双十一”成交额,其规模十分惊人。

图2 2009年-2021年天猫“双十一”成交额

5 总结

搜索、推荐和广告是绝大多数互联网公司的核心业务,其地位不言而喻。从事这个方向的工程师是十分幸运的。同时,搜索、推荐和广告三大方向一脉相承,其复用性很高,基本掌握一个方向,其他另外两个方向也能得心应手。本文是《精通推荐算法》系列文章的第一篇,后续会连载更多内容。包括召回、粗排、精排和重排的知识体系当前重难点如何优化,以及业界的经典模型等。干货多多,强烈建议关注和收藏

系列文章,欢迎关注

精通推荐算法1:为什么需要推荐系统(系列文章,建议收藏)

精通推荐算法2:推荐系统分类(面试必备)

推荐算法架构1:召回

推荐算法架构2:粗排

推荐算法架构3:精排

推荐算法架构4:重排

推荐算法架构5:全链路专项优化

推荐算法架构6:数据样本(面试必备)

推荐算法架构7:特征工程(吊打面试官,史上最全!)

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

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

相关文章

mlse均衡器matlab,基于LMS自适应均衡器matlab仿真.doc

基于LMS自适应均衡器matlab仿真.doc毕 业 设 计(2014届)题 目 一种基于OpenCV的摄像机标定方法学 院 物理电气信息学院专 业 电子信息工程年 级 2010学生学号 1201024534学生姓名 李指导教师2014年5月6日摘要关键词:AbstractIn the field of machine vision and ind…

spring 开发环境_设置Spring 3开发环境

spring 开发环境本教程简要说明了如何设置典型的环境来开发基于Spring的应用程序。 除了可以正常工作的Windows XP客户端具有足够的CPU能力和内存外,本教程没有其他先决条件。 在教程中,我们将需要安装以下组件: Java 6 JDK更新26 适用于Jav…

mybaties与hibernate的不同点

hibernate是一个比较完全的ORM框架.而mybaties是一个不完全是一个ORM框架,说mybaties不完全是一个ORM框架是因为sql语句是需要自己写的.但是,mybaties也是有输入映射和输出映射的.因此它也有ORM的思想在,因此说mybaties是一个不完全的ORM框架 而且,mybaties的优胜点在与它的速度…

Java+SSM+Oracle+Navicat+Eclipse+Microsoft Visio实现网上招聘系统

导读:整体基于B/S架构,采用MyBatis框架,运用Java中的Servlet、Jsp等关键技术,并结合Oracle数据库的使用,为招聘者和求职者搭建了一个高效、便利的网络平台。本系统分别为求职者和招聘者提供了信息注册功能,登录功能和信息维护功能。除此之外,求职者可以选择发布、撤销或…

matlab求异面直线的公垂线,求异面直线的公垂线

异面直线间得距离 求异面直线之间得距离就是立体几何重、难点之一。常有利用图形性质,直接找出该公 垂线,然后求解;或者通过空间图形性质,将异面直线距离转化为......求异面直线之间距离的常用策略:求异面直线之间的距离是立体几何重、难点之一。 常有利用图形性质,直接找出该公…

cocoapods 使用时一个问题 (Unable to find a specification for `CYLTableViewPlaceHolder`)

http://blog.csdn.net/zhangao0086/article/details/39703083 这样的问题执行两句代码 :1.pod repo remove master 2.pod setup 这两句代码 把当前Pod的目录清理一下就行了,然后再 pod install 或者 pod update 就可以了转载于:https://www.cnblogs.com/shiguangji728/p/520889…

友盟U-share sdk 分享的接入(支持Android及IOS)

导读:公司的原生开发的APP有块功能原来需要分享小程序到微信,现在改成分享成H5的形式,携带的参数不讨论,这里记录一下。 官方文档:https://developer.umeng.com/docs/128606/detail/129137 安卓分享H5:https://developer.umeng.com/docs/128606/detail/193883#h2-u5206u4E…

从源文件和JAR文件构建Java代码模型

最近,我花了一些时间来研究有效java ,该方法正在GitHub上达到300星(随时帮助实现目标:D)。 Effectivejava是在您的Java代码上运行查询的工具。 它基于我参与的另一个项目javaparser 。 Javaparser将Java源代码作为输入…

nsct matlab,图像融合 NSCT算法 matlab

【实例简介】经典图像融合算法, NSCT算法,为matlab 和 C 混合编译,修改图像地址即可方便使用【实例截图】【核心代码】NSCT└── NSCT_toolbox├── atrousc.c├── atrousc.dll├── atrousc.mexmac├── atrousdec.m├── atrousfilt…

A 标签的背景

a {-webkit-tap-highlight-color: transparent;-webkit-touch-callout: none;-webkit-user-select: none;} 转载于:https://www.cnblogs.com/LLJ748211490/p/5210391.html

前端使用正则表达式获取地址栏URL参数的值并将需要的参数值展示在页面

业务场景:APP中有个H5页面需要分享到微信,用户点击这个消息会跳转到这个网页进行信息确认,然后引导用户下载另一个应用。我们前端工程师需要做的就是将分享的参数在这个网页的地址栏进行获取并展示在信息确认页面。 分享功能请参考我上一篇文章:友盟U-share sdk 分享的接入…

javaScript中const,var,let区别与用法详解

业务场景:今天想从正则表达式数组对象取出几个参数的值,发现好多人都用的const声明的变量,这里一起总结一下吧。 上一篇——》前端使用正则表达式获取地址栏URL参数的值并将需要的参数值展示在页面 场景: 查阅相关资料,总结一下js中三种定义变量的方式const, var, let的…

MacOSX64位机器上gcc编译32位x264静态库

x264最新包地址:http://www.videolan.org/developers/x264.html 编译命令: ./configure --enable-static --hosti386-apple-darwin --host选项请参考一下连接 http://gcc.gnu.org/install/specific.htmlhttp://airs.com/ian/configure/configure_6.html#…

使用Java和Spring构建现代Web应用程序

使用Spring Framework创建Java Web应用程序从未如此简单。 如果您已经熟悉Java并且几乎没有创建Web应用程序的经验,或者如果您担心所有很酷的孩子都放弃Java取而代之的是Ruby和Node.js,那么您想读这篇。 我的意图是在此处提供实用指南,以快速…

PHP中怎样实现正负数的相加,PHP 求任意n个正负整数里面最大的连续和

案例描述:编写一个PHP函数。求任意n个正负整数里面最大的连续和,要求算法时间复杂度尽可能低;例如:echo getMaxSum(array(-2,1,3,9,-4,2,3,5,-3,-4,1,3))&…

前端工程师之华为手机如何打开开发者模式并进行手机调试查看原生APP效果。

导读:我这手机是华为nova 3系列手机,作为一名前端工程师,需要将代码安装包搞到手机,便于查看自己开发的功能模块是否完善。 目录 工具准备 华为手机如何打开开发者模式? 替换手机应用安装包

前端:jQuery笔记

前端:jQuery笔记 此系列文章乃是学习jQuery的学习笔记。Asp.net MVC Comet推送摘要: 一、简介 在Asp.net MVC实现的Comet推送的原理很简单。 服务器端:接收到服务器发送的AJAX请求,服务器端并不返回,而是将其Hold住,待…

mil跟踪算法matlab,几种目标跟踪算法性能比较

这是我自己的跟踪算法%%******************************************* 实验设置 *********************************************%%clc;clear all;%%******Change title to choose the sequence you wish to run******%%%title animal;% title board;% title car11;%title …

大前端工程师进阶之路,Node全栈为前端带来更多可能

导读:对那些刚入门前端的开发者来说,前端是一个“令人畏惧”的领域,尤其是在你看到前端的技能图谱时,你会发出这样的感叹,前端怎么有那么多的东西要学?我应该从何处学起?我又该如何应对千变万化的前端技术? 目录 如何选择? 关于变化

JMS--Queue实战

原文地址:http://blog.csdn.net/zhangxs_3/article/details/4034801 我们都知道Queue 即我们经常说的点对点或者生产者/消费者 模型。 生产者将消息发送到队列, 消费者从队列中消费消息,一个消息指能被消费一次。下面例子中启动了两个消费者一…