AIGC 应用、数据分析等企业 10+ 热门专题课,就在极客时间企业版>>> 了解详情
写点什么

华为云新一代黑科技核心算法揭秘

  • 2020-04-01
  • 本文字数:3697 字

    阅读完需:约 12 分钟

华为云新一代黑科技核心算法揭秘

AI 大模型超全落地场景&金融应用实践,8 月 16 - 19 日 FCon x AICon 大会联诀来袭、干货翻倍!

推荐技术在社交 APP、电商、音乐视频图片平台、咨讯推送平台等场景中大展身手,带给用户便利的同时,提高了用户平台活跃度,增加了“物品”销量。但是,随着互联网技术的飞速发展,所能够获取的数据量和数据类型越来越多,如何利用这些错综复杂的数据,挖掘背后潜在关系,进行快速有效的推荐成为各公司必须思考的问题。



常见推荐应用场景


目前的推荐算法层出不穷,数据利用效率、推荐的效果、速度也不尽相同。例如,在电影推荐场景,传统基于协同过滤(CF)的方法仅考虑到左半边人对电影的 feedback 数据,而传统基于内容(CB)的方法仅考虑右半边电影的特性数据,这样单纯的依赖部分数据进行推荐难以满足用户更深层次的推荐需求,同时存在稀疏性等问题;基于深度学习的推荐是近期比较热火的方向,推荐效果较传统方法也有很大的提高,但却以牺牲时间性能为代价,推荐的结果解释性也较低。



电影推荐

1. Pixie 实时推荐算法介绍:

Pixie 实时推荐过程如图所示,主要基于对图上多起点的 Pixie Random Walk:其根据各节点的重要性给各请求节点分配不同的游走步数, 同时对各请求节点进行 Pixie Random Walk,综合各起点 Pixie Random Walk 下候选节点的得分结果,进行推荐。



Pixie 实时推荐过程示意图


其中,Pixie Random Walk 过程:从请求节点(如下图中的节点 V4)沿着边,根据一定的倾向性不断地“游走“到相邻的节点,达到一定步数(步长)时返回起点重新游走。


游走步长:CurrSteps = SampleWalkLength(α)


多次这样的游走后, 当高频率经过的点的个数超过一定数量时,或者达到分配的步数上限时结束。


Pixie Random Walk 游走过程中,随着被经过的次数的增加,候选节点被推荐的得分也相应增加;当所有的 Pixie Random Walk 结束时,Pixie 将给出各候选节点的综合得分,得分越高被推荐的程度越大。



Pixie RandomWalk 过程示意图

2. Pixie 实时推荐特点:

(1)考虑多重关系共同作用:


Pixie 推荐基于多重关系的评价,不仅仅是基于用户与商品之间的历史交互关系,同时考虑到用户之间、商品之间等多层隐含关系。推荐结果是在多重关系下共同作用的结果,推荐某种程度上相较于单纯的利用用户历史交互数据或商品属性进行推荐更为精准。同时,可以避免“信息茧房”的问题。


例如:某电影平台用户 Frank 打开电影平台,Pixe 实时推荐算法向其推荐电影:Artificial Intelligence> Lincoln>Ready Player One


这里,Pixie 首推 Artificial Intelligence,是多个重关系多个原因的叠加:


①从用户与电影交互角度,与 Frank 有相似爱好的 Sarah 观看了 Artificial Intelligence: The Sixth Sense ->Sarah-> Artificial Intelligence,


②社交关系上,Frank 的好友 Mike 也观看了此电影:Frank->Mike-> Artificial Intelligence


Frank 的好友 Sarah 也观看了此电影:Frank->Sarah-> Artificial Intelligence


③电影特性关系上,电影 Artificial Intelligence 与 The Sixth Sense 具有相同的主演: The Sixth Sense-> Haley Joel Osment ->Artificial Intelligence;


相同的主题:The Sixth Sense ->Drama->Artificial Intelligence


④更多深层潜在关系:Frank->Mike->Alice->Artificial Intelligence。


以上各种关系在 Pixie 实时推荐中进行了叠加,最终向 Frank 首推 Artificial Intelligence。



(2)支持多请求节点(qurey vertices)下综合推荐,满足各种复合型、时变、多样性推荐场景需求


例如:电影平台上的用户,小雨近期看了 2 部电影 Ready Player One、;小易刚浏览了好友 Gina 主页,添加巨星 Haley Joel Osment 的动态关注;小桐刚刚进行了关键词搜索 Drama,Sci-Fi;等等,对于用户一些列实时的多样性组合操作行为,Pixie 实时推荐算法均可以综合各类操作,考虑各请求类型起点出发的多重关系,快速给出最相关的推荐排序。



不仅如此, Pixie 不同于以往那种单一性的推荐方法, 其推荐的范围更加多样,可以是不同类的商品,也可以是人,避免推荐结果局限于单一类型。同样以电影推荐场景为例,针对同一组数据,不需要重新建模,只需要改变输入参数,即可推荐电影,兴趣好友(Sarah>Alice>Gina), 甚至系列主演(Haley Joel Osment>Tye Sheridan)等等。


(3)可扩展性更强,对大数据量依然能够满足实时性推荐需求


社交巨头 facebook 从 2007 年的 5000 万用户,已增长之 20 亿+;拥有图片版 Twitter 之称的 Pinterest 目前坐拥 30 亿+的图片,2 亿+用户月活。在如此庞大的数据量下,传统方法(例如 CF)计算量随着数据量呈线性(或者不止线性)增长,很难满足实时性推荐需求,Pixie 算法与之不同,其计算量几乎独立于数据量。Pinterest 曾用其业务数据测试对 Pixie 实时推荐算法进行测试发现,在 10 亿+数据时,Pixie 实时推荐算法依然能够秒极内产生推荐结果。大数据量下,依然能够达到较好的实时推荐效果。相较于过去传统算法,通过 Pixie 算法新增的推荐量增长了 50%以上。


  1. 基于图引擎(GES)平台的 Pixie 实时推荐使用:

  2. 首先,在 GES 创建图,这里以图 2 所示的电影推荐场景为例

  3. 首先,在元数据管理栏创建 schema 如下:



图管理栏创建图,根据提示上传点边数据文件:


其中,点数据文件 vertex.csv 内容:


Frank,user,弗兰克M,18-24,college/grad student,2906Mike,user,麦克,M,25-34,other or not specified,30606Sarah,user,莎拉,F,18-24,other or not specified,55105Alice,user,爱丽丝,F,25-34,academic/educator,79928Gina,user,吉娜,F,35-44,sales/marketing,60202Ready Player One,movie,头号玩家,2011Lincoln,movie,林肯,2012Artificial Intelligence,movie,人工智能,2001The Sixth Sense,movie,灵异第六感,1999Haley Joel Osment,actorTye Sheridan,actorSteven Spielberg,directorDrama,genreSci-Fi,genre边数据文件edge.csv内容:Frank,The Sixth Sense,like,2017/12/22 23:24Mike,Artificial Intelligence,like,2017/12/22 20:20Mike,Lincoln,like,2017/12/23 13:08Sarah,The Sixth Sense,like,2017/12/22 22:00Sarah,Artificial Intelligence,like,2017/12/23 21:05Alice,Artificial Intelligence,like,2017/12/22 10:24Alice,Ready Player One,like,2017/12/23 17:25Gina,Lincoln,like,2017/12/22 16:30Gina,Ready Player One,like,2017/12/22 21:37Frank,Mike,friendsFrank,Sarah,friendsMike,Sarah,friendsMike,Alice,friendsAlice,Gina,friendsThe Sixth Sense,Haley Joel Osment,hasActorThe Sixth Sense,Drama,hasGenreArtificial Intelligence,Drama,hasGenreArtificial Intelligence,Sci-Fi,hasGenreArtificial Intelligence,Haley Joel Osment,hasActorArtificial Intelligence,Steven Spielberg,hasDirectorLincoln,Steven Spielberg,hasDirectorLincoln,Sci-Fi,hasGenreReady Player One,Steven Spielberg,hasDirectorReady Player One,Sci-Fi,hasGenreReady Player One,Tye Sheridan,hasActor
复制代码


创建图成功后,访问所创建成功的图,左栏可以看到目前 GES 上的图分析算法,选择“实时推荐”(Real-time Recommendation)算法根据提示选择左侧栏的参数,这里 sources 栏用于输入请求节点(可以多个,标准的 csv 数据格式输入),label 参数过滤出期望得到的节点类型。


例如:


(1)“当 Frank 打开电影平台,向其推荐电影“时,可以输入 sources 为 Frank, label 为 movie,其他参数如下图(左),点击运行。


算法运行结束后,页面画布上将会出现含有推荐节点的子图(大小反映了推荐程度,点击右上角图例上的相关项目,可以快速锁定相应类型节点);Pixie 的结果将会出现在下方“查询结果”栏:



由图引擎的运算结果可以很清晰显示用户、电影、演员、导演等之间的关系,根据多因素共同作用结果,演算出最为精确的推荐结果,相较于过去的推荐结果,精度更高,解释能力更强。


(2)当某“游客”用户小易登陆平台,浏览了 Gina 主页以及搜索了演员 Haley Joel Osment 动态,这一行为具有很强的个人偏好属性说明他对 Gina 以及 Heley Joel Osment 有兴趣,这时,我们可以输入参数如下图左,综合考虑这两种兴趣(“Gina”、“Haley Joel Osment”)进行实时推荐:


sources: Gina, Haley Joel Osmentlabel: movie
复制代码



值得注意的是,图引擎因为是基于图的结构进行实时计算,因此可以适应数据的动态变化,如上图“小易刚浏览了好友 Gina 主页,添加巨星 Matt Damon 的动态关注”这一行为,可以通过 gremlin 等语句实时更新到当前图数据里,做到实时更新,实时推荐。不仅可以考虑到考虑小易的近期倾向性行为,同时考虑小易特有的各类关系(人->电影,人->人,电影->电影等等),这样的实时推荐,可以极大增加推荐的准确度,从而增加点击率,提高转化率。


综上,可以看出,图引擎服务提供的实时推荐算法,在多重关系(用户与商品的历史交互信息,人与人、商品与商品等背后潜在关系)共同作用下进行推荐,精度更高;支持多请求节点下综合推荐,满足各种复合型、时变、多样性推荐场景需求;大数据量下速度,依然能够达到较好的实时推荐效果,可扩展性强,欢迎大家进行试用。


本文转载自 华为云产品与解决方案 公众号。


原文链接:https://mp.weixin.qq.com/s/pTxc8wi7By8qy_uqcmHQqw


2020-04-01 21:12689

评论

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

开源一夏 | Foundation对于模态框以及Subsystems的深入运用的理解心得

恒山其若陋兮

开源 8月月更

灵魂拷问:你精神内耗了吗?由TA来治愈吧

白洞计划

七种常见的IPv6网络攻击

穿过生命散发芬芳

ipv6 8月月更 网络攻击

Kubernetes Argo Rollouts高级的部署能力

CTO技术共享

每日一 R「12」数据结构(三)哈希表

Samson

8月月更 ​Rust

头脑风暴:判断子序列

HelloWorld杰少

算法 LeetCode 8月月更

你就是函数响应式编程(FRP)啊?!【附 RxJS 实战】

掘金安东尼

前端 函数式编程 8月月更

Rustc 源码学习 - Lint 与 LintPass

chai2010

828选华为云,实惠更实用——为什么选择华为云CDN的企业多?

sofiya

字典服务的设计与管理

Java 架构

NOIP考试注意事项

工程师日月

8月月更

关于TAE(Transactional Analytical Engine)的那些事

MatrixOrigin

MatrixOne 矩阵起源 MatirxOrigin TAE

用golang官方Docker镜像运行项目

程序员欣宸

golang 8月月更

华为云CDN&云视频通信专场:828低价购,CDN0.05元/GB起,短信0.006元/条起

sofiya

【算法实践】| 一步步带你实现寻找最大公约数

迷彩

数学 算法解析 算法实践 8月月更 最大公约数

Kubernetes伟大的未来

CTO技术共享

音频技术的下一个“热点”,会出现在哪个领域?丨一期一会 • 音频工程师专场

声网

人工智能 音频

Spring 全家桶之 Spring Security(二)

小白

8月月更

多模态算法在视频理解中的应用

之家技术

人工智能 算法 视频 多模态

网络架构设计概要

阿泽🧸

8月月更

kubernetes ansible快速构建

CTO技术共享

gateway网关

急需上岸的小谢

8月月更

Spring 全家桶之 Spring Security(一)

小白

8月月更

基于时间戳的日志回放引擎

FunTester

Java开发微信公众号初体验

源字节1号

前端开发 后端开发 小程序开发

C++多态案例(三)-电脑组装

CtrlX

c c++ 面向对象 8月月更

数据技术大融合,HSTAP数据库有多少想象空间?

MatrixOrigin

MatrixOrigin MatrixOne HSTAP

【杂谈】网络协议(一)

自然

网络 8月月更

leetcode 503. Next Greater Element II 下一个更大元素 II(中等)

okokabcd

LeetCode 算法与数据结构

并行接口8255A简介

乌龟哥哥

8月月更

【杂谈】网络协议(二)

自然

网络层 8月月更

华为云新一代黑科技核心算法揭秘_文化 & 方法_华为云产品与解决方案_InfoQ精选文章