今日头条核心技术“个性推荐算法”揭秘

今日头条核心技术“个性推荐算法”揭秘

最近面试华兴资本, 他们比较关注今日头条算法的实现, 今天特转载网上 今日头条算法解密

  【IT168 评论】互联网给用户带来了大量的信息,满足了用户在信息时代对信息的需求,也使得用户在面对大量信息时无法从中获得对自己真正有用的那部分信息,对信息的使用效率反而降低了,而通常解决   1月20日,新生代移动互联网企业今日头条在北京国家会议中心举办了“算数·年度数据发布会”,数据发布会的主题名为“算数”,实际上指的是“算法”与“数据”。

  众所周知,今日头条是

  那么今日头条是怎么做到为每一个用户按兴趣精准推荐新闻的呢?在发布会上,今日头条的技术副总裁杨震原给我们揭秘了今日头条的个性化推荐核心“算法”。

  今日头条的个性化推荐算法原理

  如上图,有3篇文章,让3个用户投票(注:这3个用户是一类人,有相同属性(喜好和偏好)),那第4个用户应该被系统推荐的文章是那篇呢?第4个用户与前3个用户都是一类人,答案显   没错,今日头条的个性化推荐算法原理   今日头条是如何来划分人群和文章

  搞技术的朋友都知道,   上面那个例子只是很小的人群,但是现实生活中不会有这样小的人群,而且太小的人群通过推荐投票的方式也很难推荐出很精细的内容,只能推荐出一些热门内容,那今日头条是如何来划分人群?

  我们假定上图这   根据人群不同维度,我们可以细分到一个合理的力度。特别需要注意的是:在细分的领域里面投票数既不要太多,但也不要太少,因为太多没有个性化,仅是一个大众关心的话题而已,而投票数太少又没有统计意义,支持度就低了。

  人群特征可以是阅读姓名,年龄,地域,职业等等。同理,文章也是类似的,文章有提到哪些名人,文章发布的时间,文章所属的地区等等,也都有很多特性,这些都是可以去组合起来。

  今日头条是怎样判断一个人属于怎样的人群

  判断一个人属于怎样的人群相对简单。比如地域,用户的手机在什么区域,就可以认为用户是什么地域的;比如说用户兴趣,可以根据用户的阅读习惯去判断,用户会经常去看科技的文章,那就可以判断用户属于科技的人群;再比如说用户的好友关系,用户在今日头条上面注册了,用户的好友都是娱乐圈的人,则该用户很有可能也是娱乐圈的人;所以通过用户在今日头条上行为,以及用户客观的地理位置信息,就能判断用户到底属于一个什么样的人群。

  今日头条的个性推荐算法公式

  精准推荐最难的不是划分人群,也不是判断用户人群归属,更不是文章属性判断,一个人可以属于多个人群,也有多个文章候选,选那个推荐才是最难的。而今日头条的推荐内容是怎么算出来的呢?

  通过上图的计算公式:W1*候选1的投票率+W2*候选2的投票率+W3候选3的投票率+……=最高分,最后能计算出一个得分,按得分的高低来排序,就可以得到推荐文章的一个侯选,这个过程实际上是一个比较简单的算法,而这在今日头条内部叫逻辑回归。

  总的来说,个性化推荐技术本身并不神秘,归根到底推荐算法关键是还在于对海量用户行为的数据分析与挖掘,也许各家算法略有不同,但最终目的都是殊途同归,为实现最精准的内容推荐而努力中。

  如果你看的还不过瘾,欲知更多(阿里、腾讯、网易、58同城、豆瓣等)知名站点推荐系统技术内容,请点击(牛逼站是怎样炼成的?-推荐系统篇)

转载于:https://www.cnblogs.com/ityz/p/6079261.html

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

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

相关文章

PROFINET及其同步实时通讯分析

1 概述 PROFINET实时以太网是由Profibus International(PI)组织提出的基于以太网的自动化标准。从2004年4月开 始,PI与Interbus Club总线俱乐部联手,负责合作开发与制定标准。PROFINET构成从I/O级直至协调治理级的基于组件的分…

【剑指offer15.二进制中1的个数】——位操作(左移右移等)

目录 二进制的表示 二进制的位操作 应用: 剑指offer15.统计二进制中1的个数(多种方法,位右移操作、与操作等) 转自:https://www.jianshu.com/p/3a31065a8e58 红色为自己添加 我们都知道在计算机中所有的信息最终都…

java 异常处理机制(java 编程思想)

一、概念  “异常”这个词有“我对此感到意外”的意思。问题出现了,你也许并不清楚该如何处理,但你的确知道不应该置之不理;你要停下来,看看是不是有别人或在别的地方,能够处理这个问题。只是在当前的环境中还没有足够…

怎样在CentOS 7.0上安装和配置VNC服务器

这是一个关于怎样在你的 CentOS 7 上安装配置 VNC 服务的教程。当然这个教程也适合 RHEL 7 。在这个教程里,我们将学习什么是 VNC 以及怎样在 CentOS 7 上安装配置 VNC 服务器 。 我们都知道 这是一个关于怎样在你的 CentOS 7 上安装配置 VNC 服务的教程。当然这个教…

MOTOMAN机器人网络控制的实现

最初程序员在Unix系统下使用Berkeley Socket编写网络程序,随着Windows操作系统的普及,Microsoft、Sun等公司联合开发了Winsock接口API。它实质上是一种进 程间通信,将之从单机环境扩展到网络环境以适合于开发主机/客户机通信程序。网络通信的…

【剑指offer】——【python中return函数中的and和or表达式的返回值】

目录 1、# and 结果为真,返回最后一个表达式的结果,若结果为假返回第一个为假的表达式的结果 2、# or 结果为真,返回第一个为真的表达式的结果,若结果为假,返回最后一个表达式的结果 3、应用[剑指 Offer 64. 求12…n…

Spring Cloud构建微服务架构:消息驱动的微服务(入门)【Dalston版】

2019独角兽企业重金招聘Python工程师标准>>> 之前在写Spring Boot基础教程的时候写过一篇《Spring Boot中使用RabbitMQ》。在该文中,我们通过简单的配置和注解就能实现向RabbitMQ中生产和消费消息。实际上我们使用的对RabbitMQ的starter就是通过Spring C…

CXF 客服端调用报错

服务端已经发布了WSDL,现在在客服端生成web service客服端代码,在eclipse中新建一个project,然后new->web services->web service client生产客户端代码 在调用的时候报如下错误 解决:缺少axis相应的jar包,加入包…

20145225 《信息安全系统设计基础》第10周学习总结

cp1.c 进行复制文件的操作,需要有源文件和目的文件,第一次命令没有加入所以没有正常完成复制文件的操作fileinfo.c 用来实现显示文件信息。先判断命令是否有操作数,有的话才能继续进行下去,如果没有报错就打印出来相关文件信息&am…

做演员是圆梦 做生意学会面对现实

田朴珺是一位拥有多重身份的女性。她是一名演员,也是一位商人,还担任过电影《中国合伙人》的制片人。 作为演员,田朴珺的作品并不是很多,也一直不温不 火。但这并不代表她将放弃演艺生涯。她表示,如果机会合适&…

【深度学习】——模型评估指标MAP计算实例计算

目录 一、知识储备 1、IOU——交集面积与并集面积之比 2、混淆矩阵(TP、FP、FN、TN) 问题1:上面的TP等具体是如何计算得到的? 3、精度precision&召回率recall 二、ap计算实战 1、计算流程 1)准备数据&#xf…

第 52 章 Web Server Optimization

系统配置 Intel(R) Xeon(TM) CPU 3.00GHzMemory 4GEthernet adapter 1000M52.1. ulimit 查看 ulimit ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited file size (blocks, -f) unlimited pending signals …

hdu5489 Removed Interval dp+线段树优化

现在看这题居然直接秒了。。。去年看的时候还以为神题。。 设以第i项为结尾的lis前缀为f[i],以第j项为结尾的lis后缀为g[i],如果求出f[i]和g[j],然后枚举i,快速找到最大的满足a[j]>a[i]的g[j]就可以了。注意到如果将f[i]从后往…

JS原型链理解

1. 每个对象都有原型属性(__proto__)2. 对象的原型(__proto__)指向其构造函数(Constructor)的prototype属性3. 构造函数(Constructor)的prototype属性本身也是一个对象,其原型(__proto__)亦指向其构造函数的prototype4. 如此形成一个链式结构,而Construc…

【深度学习】——2021年FPN特征金字塔

#!/usr/bin/env python # -*- coding: utf-8 -*- # Time : 2021/4/22 17:06 # Author : linlianqin # Site : # File : fpn.py # Software: PyCharm # description:其搭建的基本流程和resnet是一致的,只是将每一层的卷积结果保存了起来import torch impo…

NoSQL分类及ehcache memcache redis 三大缓存的对比

NoSQL分类 由于NoSQL中没有像传统数据库那样定义数据的组织方式为关系型的,所以只要内部的数据组织采用了非关系型的方式,就可以称之为NoSQL数据库。目前,可以将众多的NoSQL数据库按照内部的数据组织形式进行如下分类: Key/Value的…

52.4. APC Cache (php-apc - APC (Alternative PHP Cache) module for PHP 5)

$ apt-cache search php-apc php-apc - APC (Alternative PHP Cache) module for PHP 5$ sudo apt-get install php-apcapc cache 状态监控 http://pecl.php.net/package/APC 下载解包找到apc.php,放到web服务器上 原文出处:Netkiller 系列 手札 本文作者&#xff1…

乐视云计算基于OpenStack的IaaS实践

本文作者岳龙广,现在就职于乐视云计算有限公司,负责IaaS部门的工作。 从开始工作就混在开源世界里,在虚拟化方面做过CloudStack/Ovirt开发,现在是做以OpenStack为基础的乐视云平台。所以对虚拟化情有独钟,也对虚拟化/云…

【深度学习】——如何提高map值

目录 代码获取 map原理 map提高技巧 技巧总结: 实战: 1、效果不佳map55.55% 1)单独调整get_dr_txt.py中的self.iou 0.3 2)单独调整get_map,py中的minoverlap: 3)同时调整minoverlap和self.iou 本文是在faster_rcnn模型的…

每日站立会议个人博客(冲刺周)-Wednesday

时间未完成不知道如何获取具体标签里的内容正在做爬虫技术之获取标签里的内容将要做对运用爬虫技术获取的数据进行处理转载于:https://www.cnblogs.com/andibier/p/8075098.html