阿里云智能推荐AIRec产品介绍
一、智能推荐(AIRec)简介
AIRec背景介绍
智能推荐(简称AIRec)基于阿里巴巴集团领先的大数据和人工智能技术,结合阿里巴巴在电商、内容、新闻、视频直播和社交等多个行业领域的积累,为全球企业及开发者提供云推荐服务。AIRec能够有效解决用户偏好和物品之间的曝光选择问题。AIRec产品与淘宝、天猫推荐的底层是同根共源的,是淘宝、天猫推荐技术的首次对外输出。目前对于电商而言,获客等成本非常高,AIRec也希望能够解决以上这些问题,帮助用户去深度运营好每一个流量,将每一个流量的价值都充分地挖掘出来。因此AIRec在促活、留存、收入等整个流量生命周期中都可以提现它的价值。

AIRec产品架构
阿里云智能推荐AIRec产品的实现方式整体上大致分为三层。其中最底层是数据接入层,对于这一层而言,一般需要客户提供两种数据,初始化离线数据和在线数据。初始化离线数据将用于整个推荐实例的启动,而在线数据则用于当服务启动之后在后续实时收集用户的行为,以及更新和回传。在数据接入层之上是推荐模型层,这里主要分为三部分,第一部分是特征工程,主要是对于用户的特征、商品的特征进行一定的挖掘;第二部分是召回模块;第三部分是排序模块。在推荐模型之上是业务逻辑层,各个应用厂家或者应用的场景不同,业务逻辑也会比较复杂,推荐系统往往无法覆盖所有的业务场景,所以AIRec覆盖了一些比较具有通用性的业务逻辑以及打散策略和混排策略等。在此基础之上,业务方也可以根据AIRec推荐的结果来进行第二次封装来满足业务上更为复杂的需求。

二、核心功能介绍
AIRec核心功能-接入使用
整个AIRec接入使用主要分为四个部分:数据准备、服务开通、生效测试和增量对接。在数据准备方面,目前AIRec只能通过阿里云大数据计算服务MaxCompute上传初始数据,MaxCompute是一个能够处理PB级别的数据仓库解决方案。AIRec初始时需要三张表,分别为User表、Item表和Behavior表,User表存储了用户的基本信息、用户ID以及是否给这个用户进行推荐以及一些用户特征维度的信息。针对于表中的这些字段,客户可以根据自己的数据埋点以及数据收集情况酌情地进行上传,并且表中的字段也是分为必填、选填和推荐等类别。当然,这些数据如果填写的越饱满,对于后期的效果调优而言,就会越有优势。同样的,Item表存储了物品信息,Behavior表则存储了用户与物品之间的关联信息,数据中的点击和展示是必须要上传的,其次内容型的点赞等行为也推荐客户上传。在数据准备完成之后就可以开通AIRec服务了,开通完成之后可以进行对于行业、场景以及数据源的选择。选择完成之后,就可以在数据生效的页面检查数据生效的质量,同时在数据生效之后进行数据的测试。当测试完成之后就可以确认AIRec实例已经正常地运行起来了,在此基础之上可以对接服务端的SDK或者API实现增量数据的回传。

AIRec核心功能-行业
阿里云智能推荐AIRec现在向外输出的行业主要包括四种,即电商行业、新闻行业、内容行业以及视频行业。之所以对于行业进行了划分,这是因为目标行业的特点不同会导致用户的关注点不同,这也就导致了运营人员所关注的指标也各不同,因此这些因素最终也会影响推荐系统对于模型的选用。举例而言,对比一下电商型和内容型行业,前者比较关注点击率、GMV成交值以及购买率等业务指标,而后者除了常见的关注点击率之外,还会更加关注人均点击量、用户停留时间以及浏览深度等业务指标。

AIRec核心功能-场景
这里的场景可以理解为推荐所在的位置。根据推荐所在的位置不同,推荐系统使用模型和手段也会有所不同。比如在淘宝的首页推荐上“猜你喜欢”这部分属于一个比较综合的推荐位置,因此需要综合一些基于用户浏览历史行为的召回,也需要符合用户的兴趣,还需要在照顾热点的同时增加一些对于新品的关注度,因此这部分属于一个比较综合的推荐。而商品详情页的“相关推荐”位置则不同,其更加看重物品与物品之间的关联关系,这个关联可能是商品存在相似关系,也有可能商品之间存在类似于“啤酒和尿布”的关系。“热门推荐”就是热度排行榜了,其背后有着比较成熟的热度算法。而位于页面顶部Banner推荐位的“焦点图推荐”则是对于重要活动或者产品的推荐。

AIRec核心功能-召回模型
如下图的左侧的推荐模型所示,其最下面的输入可以认为是全量的Item列表,通过召回可能筛选出了一批和用户相关的Item,经过规则过滤将其放入排序层,之后根据用户行为、用户特征以及商品特征进行排序并计算分数,并将最终算分的结果放入到业务逻辑层进行封装,并Push给终端用户,使得终端用户能够看到Push的结果。下图中右侧是召回系统的简单的实现方式示意图,对于召回而言,想要判断结果是否与用户的兴趣相关,就可以通过不同的链路实现不同兴趣的召回,比如Item 2 Item、热度、新品、语义相似、User 2 X 2 Item等。

召回模型I2I
在I2I这个召回模型中,将用户的行为分为了长期行为和短期行为,进而分别训练出一些表格,这些表可能是Item_ID=A的一些商品可能有一些关联的Item_ID,并且这些Item_ID也会有对应的分值,而一些商品的权重可能会影响最终的分值。当这个表计算完成之后,后续如果有一个User过来,请求就会带来一个User_ID,根据这个User_ID就能获一个Trigger,进而获取一个Item_ID的列表将其推荐给排序模型,并且这个排序模型还能够接受其他的召回链路的推荐。

AIRec核心功能-排序模型
如下图所示的是排序模型的简单原理。AIRec会将用户特征、行为数据以及商品特征全部都进行离线计算,生成针对用户场景的排序模型。举例而言,当一个男生过来,他会带有一些用户特征和行为特征,根据这些内容就可以在模型表上找到对应的分值,将特征所代表的分值进行相加并进行整体倒排,之后就会得到一个排序完成的Item表格,最后将这些东西作为排序层的输出给到上面的业务逻辑层。

AIRec核心功能-打散混排
业务逻辑层中有两个能够控制的点,就是混排和打散。混排可以配置一些比例,而打散则可以配置一些层级和窗口等。

这里简单介绍一下混排和打散的具体功能:
- 混排功能:一方面是为了让喜好多种物品类型(item_type)的客户平衡其分发,另一方面是为了让用户在浏览过程中保持物品类型上丰富的多样性,提升用户的惊喜度。AIRec的混排功能目前支持image、article、video、short video、item、recipe等6种类型,后面将会增加更多的延展。
- 打散功能:是为了保障在推荐的物品流里相同类目的物品不重复出现,防止用户疲劳,保持新鲜度。使用AIRec时可按物品类目(物品表category_level字段)来打散,可根据用户具体业务的物品层级来设置打散。配置打散时选择相应的物品类目,再填写配合该类目层级的窗口期x,即x个物品推荐流里最多出现一次该类目的物品。
这里举个例子,如下图所示,我们对于体育文章、文娱文章以及经济文章可以设置窗口为3,也就是使得每3篇文章里面只能出现1次同类型的文章,这样就实现了通过类目进行打散。而混排就是设置文章大约占总量的50%,短视频和商品大约各占据25%。通过以上的混排和打散就能够满足推荐的诉求。

AIRec核心功能-数据仪表盘
阿里云智能推荐AIRec可以通过数据仪表盘实现对于数据的跟踪,包括做分桶测试等。此外,在AIRec上还可以实现基于阿里巴巴的推荐和基于自建的推荐的对比,并查看数据走向。目前,AIRec支持的数据指标包括PV_CTR、UV_CTR、PV/UV、Click/UV、活跃的用户数以及活跃的商品数等。

三、案例及场景
应用案例——内容论坛
这个案例来自深度垂直行业的UGC论坛,其主要接入了AIRec的两部分场景——首页的“猜你喜欢”和详情页面的“相关推荐”。客户使用AIRec解决两个主要痛点,一是提高首页“猜你喜欢”的用户点击率,二是期望解决论坛内文章的标题党问题。针对于这两个问题,AIRec帮助他们做了两步的优化,首先是解决标题党的问题,增加了浏览时长、点赞、收藏等重点行为特征来解决问题,也就是将标题党的文章进行降权,使得其排序结果较低,甚至使得其召回不出来。第二步就是调整了时间衰减,对于热度文章进行了及安全管理,调整了排序模型使得业务可干预推荐效果。最终达到的效果就是该论坛在其原有系统的基础之上使得用户点击率提升了50%。

应用案例——使用架构
前面所提到的论坛客户同时接入了阿里云的搜索和推荐两款产品,从而可以形成比较好的化学反应。推荐产品可以承接首页的流量,使得首页整体流量的转化率得以提升。此外,在搜索方面还接入了OpenSearch产品,能够满足用户高质量精准搜索的需求,能够提高有具体浏览目标用户的转化率。通过这两个服务整体地从流量承接以及精准搜索解决了用户的需求。下图中展示了用户使用的架构,会将主流场景下的行为包括数据都传递到RDS上,并放到MaxCompute DataWorks上进行全量导入,后续还会通过API和服务端SDK进行实时数据反馈。数据经过AIRec和OpenSearch两个产品就可以和客户的服务端进行交互,客户的服务端则会进行业务封装并给到最终的用户。

应用案例——电商
这里再介绍一个电商类客户的应用案例。该案例来自一个国内垂直类电商客户,阿里云AIRec为其打造的推荐产品不仅用于其APP上,还会用于微信小程序等方面。针对于这样的情况,阿里云AIRec也为其实现了两部分场景,一部分是“猜你喜欢”,另外一个是“相关推荐”,并最终提升了两个场景点击率。之前他们的场景中存在问题就是SKU比较少,用户量级相对而言也不是非常大,因此从整体来看在这样的场景下AIRec能够帮助客户达到点击率的提升,效果还是不错的。总体经过了一个月左右的调优,使得点击率提升了1倍左右。

应用案例——内容平台
第三个案例是内容平台,这个内容平台的特点就是推荐内容比较杂,其利用AIRec的混排和打散功能比较多,因为其主要是一个内容分享平台,同时还带有电商属性。他们原有首页推荐为运营人员人工编辑,有专门团队每日定时内容更新。后来使用阿里云智能推荐进行首页的内容推荐,经过一段时间的调优使得点击率相较原有系统提升超过一倍。

更多产品详情请见智能推荐阿里云智能推荐AIRec官网。
阿里云双11亿元补贴提前领,进入抽取iPhone 11 Pro:https://www.aliyun.com/1111/2019/home?utm_content=g_1000083110
本文作者:勖勉
本文为云栖社区原创内容,未经允许不得转载。
阿里云智能推荐AIRec产品介绍的更多相关文章
- 本地 vs. 云:大数据厮杀的最终幸存者会是谁?— InfoQ专访阿里云智能通用计算平台负责人关涛
摘要: 本地大数据服务是否进入消失倒计时?云平台大数据服务最终到底会趋向多云.混合云还是单一公有云?集群规模增大,上云成本将难以承受是误区还是事实?InfoQ 将就上述问题对阿里云智能通用计算平台负责 ...
- 阿里云智能数据构建与管理 Dataphin公测,助力企业数据中台建设
阿里云智能数据构建与管理 Dataphin (下简称“Dataphin”)近日重磅上线公共云,开启智能研发版本的公共云公测!在此之前,Dataphin以独立部署方式输出并服务线下客户,已助力多家大型客 ...
- 阿里云专属推荐码nuyxa6
申请成功!您的推荐码为nuyxa6 恭喜您获得阿里云专属推荐码,推荐码有效期至2017-03-04 14:43:49. 我们会在到期日前两周以站内信的方式通知您新的有效期.
- 新一代视频AI服务 —— 阿里云智能视觉重磅发布
3月27日下午,第51期阿里云产品发布会-智能视觉产品隆重发布,本次产品发布会首次面向全网用户深入的解读了智能视觉的前世今生. 行业背景 随着人工智能的技术不断成熟,AI逐渐在各行业内落地.在新零售领 ...
- 面向视频的全新AI架构 —— 阿里云智能视觉技术全解
我们都知道,AI技术正在以可见的速度被应用于各行各业,然而绝大部分业务场景想应用AI技术,都需要算法工程师根据自身业务的标注数据,来进行单独训练,才能打磨出合适的AI模型.如此一来,如何以最低的门槛和 ...
- 阿里云MaxCompute 2019-7月刊
您好,MaxCompute 2019.7月刊为您带来7月产品.技术最新动态,欢迎阅读. 导读 [发布]7月产品重要发布 [资讯]7月重要资讯 [文档]7月重要文档更新推荐 [干货]7月精选技术文章推荐 ...
- 探索云数据库最佳实践 阿里云开发者大会数据库专场邀你一起Code up!
盛夏.魔都.科技 三者在一起有什么惊喜? 7月24日,阿里云峰会·上海——开发者大会将在上海世博中心盛大启程,与未来世界的开发者们分享数据库.云原生.开源大数据等领域的技术干货,共同探讨前沿科技趋势, ...
- 规模化落地云原生,阿里云即将重磅亮相 KubeCon China
2019 年 6 月 24 日至 26 日, 由 Cloud Native Computing Foundation (CNCF) 主办的云原生技术大会 KubeCon + CloudNativeCo ...
- 洞见数据库前沿 阿里云数据库最强阵容 DTCC 2019 八大亮点抢先看
摘要: 作为DTCC的老朋友和全球领先的云计算厂商,阿里云数据库团队受邀参加本次技术盛会,不仅将派出重量级嘉宾阵容,还会为广大数据库业内人士和行业用户奉上8场精彩议题.下面小编就为大家提前梳理了8大亮 ...
随机推荐
- Steup Factory 操作注册表
//判断注册表是否存在,不存在就创建 result = Registry.DoesKeyExist(HKEY_CURRENT_USER, "SOFTWARE\\MyTestApp" ...
- yum工具入门
一yum介绍 注意学完了yum之后,rpm的使用频率就少了.有些功能yum用起来不如rpm更方便. CentOS: yum, dnfYUM: Yellowdog Update Modifier,rpm ...
- 数据中台核心方法论--OneModel为何需要产品化支撑?
什么是产品化 大部分创业公司都是从一个伟大的想法创意开始的,并且需要有一堆技术专家来实现.我们清楚,伟大的技术并不等同于和伟大的产品,技术可以解决问题,但如果它没有办法法规模化,那这些技术或者能力对用 ...
- python--闭包函数、装饰器
先来点补充. x= def foo(): print(x) x= foo() 结果: x= def foo(): global x x= print(x) foo() print(x) 结果: x= ...
- POJ 2387 Til the Cows Come Home (dijkstra模板题)
Description Bessie is out in the field and wants to get back to the barn to get as much sleep as pos ...
- Service系统服务(一):安装一个KVM服务器、KVM平台构建及简单管理、virsh基本管理操作、xml配置文件的应用、为虚拟机制作快照备份、快建新虚拟机
一.安装一个KVM服务器 目标: 本例要求准备一台 RHEL7.2 服务器,将其搭建为KVM平台,主要完成下列操作: 1> 关闭本机的SELinux保护.防火墙服务 2> 挂载RHEL ...
- rabbitmq安装-1
原文地址和下载地址 原方地址: https://www.cnblogs.com/jiagoushi/p/9961388.html rabbitmq下载地址: https://github.com/ra ...
- Java 空字符串和 字符串为null的区别
之前一直没有搞清楚 字符串为空和字符串为null的区别,今天写代码一直出现NullPointerException异常,我一直没有搞清楚,后来发现我是这样写的 String s = null; s = ...
- AutoMapper用法 转载https://www.cnblogs.com/youring2/p/automapper.html
AutoMapper是对象到对象的映射工具.在完成映射规则之后,AutoMapper可以将源对象转换为目标对象. 配置AutoMapper映射规则 AutoMapper是基于约定的,因此在实用映射之前 ...
- 运维 03 Linux之文档与目录结构
Linux之文档与目录结构 Linux文件系统结构 Linux目录结构的组织形式和Windows有很大的不同.首先Linux没有“盘(C盘.D盘.E盘)”的概念.已经建立文件系统的硬盘分区被挂载到 ...