2025上半年,最新 AI实践都在这!20+ 应用案例,任听一场议题就值回票价 了解详情
写点什么

几张图带你看懂今日头条推荐系统

  • 2019-12-30
  • 本文字数:794 字

    阅读完需:约 3 分钟

几张图带你看懂今日头条推荐系统

推荐系统是一个策略行为,本文将用几张图,来带你看懂今日头条的推荐系统。


推荐系统的“前身”


2016 年,腾讯以 80 亿美元估值投资今日头条,结果大家都知道,张一鸣拒绝了腾讯的投资,现在大家也知道,字节跳动估值 750 亿美元,这一切,推荐系统功不可没。


因为搜索引擎和推荐系统太相似,相对来说也更简单(勿喷),所以我们先来了解一下搜索引擎。至于搜素引擎是不是推荐系统的前身,我很懒,没有考察。


如上图,搜索引擎分成为离线部分和在线部分,每一部分有不同的使命。


简单来说,搜索引擎的离线部分,专注于内容的搜集和处理。搜索引擎通过网络爬虫抓取网站上的原始内容,并将内容建立索引。这些内容会根据搜索系统的不同要求建立不同的索引体系,比如新闻类型的内容,会建立时效性的索引数据。


搜索引擎的在线部分,负责响应用户的搜索请求,完成内容的筛选和排序,并将最终结果返回给用户。我们举一个例子来说明这个流程:


用户在搜索引擎输入一个关键词 NBA,搜索引擎搜索会对关键词进行分析、变换、扩充和纠错等处理,比如发现美职篮与 NBA 是同义词,就会将其扩充。


接下来,搜索引擎会通过多种方式从不同索引数据获得候选集,这个环节叫召回。


得到候选集后,搜索引擎通过更精细的计算模型对每一篇候选内容进行分值计算,对候选集的每一项进行排序。


这个时候,还不能将结果展示给用户,需要经过规则干预这一过程。这个过程服务于特定的产品目的。假如有这样一条“官方网站保护规则,确保所有品牌搜索词都可以优先返回官网”,则此时就会将官网插入并置顶,最后再将结果展示给用户。


此时,搜索引擎的工作还未结束。搜索引擎会根据用户的点击反馈去优化排序模型。比如,大部分用户都没有点击文章 10,则文章 10 后续就不会获得更靠前的展现位置。


对以上两图进行总结就是下图,就是想让你们看的第一张图:


本文转载自 Think 体验设计公众号。


原文链接:https://mp.weixin.qq.com/s/8FSAn442599YCR-WfvWkFQ


2019-12-30 18:113978

评论

发布
暂无评论
发现更多内容

SQL注入的题目

w010w

网络安全 SQL注入 SQL语句 10月月更

电脑安装Ubuntu桌面系统(部署开发环境、直接U盘安装,针对I386工控板)

DS小龙哥

10月月更

【分布式技术专题】「架构实践于案例分析」总结和盘点目前常用分布式事务特别及问题分析(上)

码界西柚

分布式事务 TCC 分布式事务管理

面试官:说说你平时都用过哪些分布式ID生成方案?

程序员小毕

Java 程序员 分布式 后端 分布式ID

ubuntu16.04安装deb软件包教程

DS小龙哥

10月月更

【一Go到底】第三十天---排序

指剑

Go golang 10月月更

数据处理

芯动大师

Python 数据处理 10月月更

如何向表中插入数据以及如何更新、删除表中的数据

芯动大师

Python 10月月更 插入数据

SQL注入

w010w

网络安全 WEB安全 SQL注入 10月月更

【web 开发基础】PHP 自定义函数之函数的调用 -PHP 快速入门 (25)

迷彩

函数调用 函数 10月月更 web开发基础 PHP基础

Web3学习日记

无人之路

日志 web3

数据湖(十五):Spark与Iceberg整合写操作

Lansonli

数据湖 10月月更

ndarray的赋值、视图、拷贝和广播

芯动大师

Python 赋值结构 10月月更

极客时间运维进阶训练营第二周作业

老曹

分享一份2022最新Java面试八股文:从基础到高级整整涵盖了Java14 个核心技术

程序员小毕

Java 程序员 面试 程序人生 后端

ndarray 的创建及属性

芯动大师

Python 10月月更 ndarray

Java | DateFormat和SimpleDateFormat类

陌上

Java 编程 10月月更

2022-10-29:go语言中的defer能非常方便地处理资源释放问题,rust语言里如何实现defer功能呢?

福大大架构师每日一题

rust defer 福大大 RAII

Vagrant定制个性化CentOS7模板

程序员欣宸

vagrant 虚拟机 10月月更

VM虚拟机下Ubuntu系统扩展磁盘大小方法

DS小龙哥

10月月更

图解 | 聊聊「秒杀」

小小怪下士

Java 程序员 高并发 秒杀

WLAN无线局域网技术基础(三)无线侧组网概念,2.4GHz频段与5GHz频段区别和优缺点,胖AP架构和瘦AP架构的优缺点

Python-派大星

10月月更

JVM是什么?Java程序为啥需要运行在JVM中?

wljslmz

Java JVM 虚拟机 10月月更

在熬夜中成长

暮春零贰

熬夜 10月月更

dockerfile分层构建业务镜像

忙着长大#

Docker 镜像

字母大小写全排列

掘金安东尼

算法 10月月更

Numpy 基础教程之Numpy的介绍

芯动大师

Python Numpy 10月月更

设计模式之禅01单一职责原则

okokabcd

设计模式

【运维】Centos 7 一键 搭建 Java开发者环境

石臻臻的杂货铺

Java 运维 10月月更

SAP | Processing Blocks的三种类型

暮春零贰

SAP abap 10月月更

海龟编程 python绘图工具turtle库的用法 turtle库使用方法大全,画笔设置 画布设置 绘图设置,画笔粗细,画笔颜色, 画笔速度。

Python-派大星

10月月更

几张图带你看懂今日头条推荐系统_语言 & 开发_Think体验设计_InfoQ精选文章