从零开始玩人工智能—推荐服务

简介:

    有一个非常经典的段子,就是“啤酒和尿布”。故事是说,沃尔玛的一位门店经理发现,周末啤酒和尿布的销量会“落霞与孤鹜齐飞,秋水共长天一色”,一起上涨。经过分析,是因为奶爸们周末看球喝啤酒的同时要给娃带上尿布,然后就把这两样商品摆在一起促进销售云云。甚至专门用这个案例作为一本书的标题:

Image result for 啤酒 尿布  Image result for 啤酒 尿布

    先且不论这个故事的真实性(知乎:数据挖掘中最经典的案例之一-啤酒与尿布是真实的案例吗?),可见人们对于数据挖掘分析并用以提升业务是很痴迷的。以前可能要雇一群人分析大量的数据给出可能的结果,而现在,AI可以帮你搞定这个事情。

     你甚至不用写一行代码。

    Azure 里面的AI及认知服务家族正在不断扩展,在下面这个长长的人工智能API清单里,有很多已经广为人知的例如计算机视觉,语义分析,表情分析,智能搜索等等,而有一个新出的服务,叫做建议(Recommendations)。

    建议这个东西,是所有人都需要的。不信你看看你手机:“晚上吃啥啊?”,“周末去哪啊?”。对于业务来说,通过数据挖掘为客户提供合适的建议,不仅仅是可能扩大销售,更厉害的是培养信任感,跨越销售防备的城墙。

    所以,通过一些简单的数据,利用人工智能,进行分析,也就是“互联网+”时代的刚需了。在Azure里面,可以直接添加这个有趣的服务,进行一番有趣的探索。服务部署后,有个简单的后续步骤,最重要的第一步是生成服务对应的Key,不论是使用站点简单实现建议的人工智能,还是自行使用API开发更为复杂的BI实现,都离不开这个Key来使用Azure云平台的能力。

clip_image001clip_image001[8]

    复制这个Key之后,我们就可以打开用于尝鲜的站点:https://recommendations-portal.azurewebsites.net 输入Key即可登录。

clip_image001[11]

    登录之后我们干啥呢?在创建一个新的Project之前,可以参考一下官方的文档:https://docs.microsoft.com/zh-cn/azure/cognitive-services/recommendations/cognitive-services-recommendations-quick-start

    在创建Azure服务之后,就可以为建议服务准备数据了。数据分为两部分,一部分是品类(catalog),一部分是事物(usage)。品类数据可以包括<item ID>,<item name>,<product category>等,事物数据可以包括<User ID>,<Item ID>,<Time Stamp>,<Event>等。具体的字段定义和数据类型,可以点击以上的链接访问相关API参考。

    一开始不了解这个服务使用的数据,可以使用微软准备好的样例数据。示例数据是一家书店的样例。品类数据是各种书,而事务数据非常简单,只有user、item两个字段,便于快速进行处理演示。

clip_image001[23]

   新建一个Project, 把这两个数据上传到建议服务项目中,设定诸如模型递归、模型维度、数据取舍等参数,就可以开始进行人工智能的自动分析了。

clip_image001[13]

    云服务平台会给Build分配ID并创建Job任务。数据简单而且数量不多,几分钟后就能获得结果。

clip_image001[15]

    结果会以Score分数集合的形式得到展现。如何体现为人比较易读的结果呢?

clip_image001[17]

    点击“Score”,就会展现一个简单的购买模拟界面。可以把显示出的书添加到中间的购物车,同时,根据之前其他一起购买的信息,进行AI分析之后,在下面给出建议的书。

clip_image001[19]

     细心的你肯定发现了,建议的书除了书名,还显示了一个分数,姑且我们称之为推荐度吧。随你添加到购物车里的书不同,推荐的各种书的建议分数(推荐度)也是不同的。例如我选了一本《自私的基因》,系统就根据之前的购买记录猜测我喜欢科幻类的、科学类的书,例如《沙丘》、《宇宙尽头的餐馆》等。

clip_image001[21]

    而随着我添加的书数量增加,系统匹配到书的推荐度也在增加。这是因为添加的书之间也有一些关联度,这些关联度增强了建议购买的书之间的关联度。因为选择了《冰与火之歌》和《美国众神》,侧重反乌托邦的《安德的游戏》和《1984》也进入了建议书目。

clip_image001[25]

    建议服务在分析过数据后,还会对分析做出小结。当然,要进行人工智能的分析,“喂”给云平台服务的数据有一定的要求。除了前面提到的数据格式类型的要求,还有一些数据量和数据大小的限制。例如事务数据量应该至少20倍于品类数据。每个项目每次上载的数据不可大于200MB,但可以上传多个文件,只要不大于2GB。如果数据太大,估计是要做模型调整或者ETL清洗一下?

    而建议服务能够提供的学习(Build)类型目前有几种:Recommendations、Rank、FBT、SAR。(这里文档有点矛盾,前文说支持Ranking和FBT,然后后文又说支持Recommendation和FBT,然后服务站点下来可选4个……估计发展快没更新)。FBT是“经常一起购买(Frequently Bought Togather)”的缩写, 不同的类型的比较可以参考:https://docs.microsoft.com/zh-cn/azure/cognitive-services/recommendations/cognitive-services-recommendations-buildtypes 我对照了一下,确实返回的内容是不同的。

    需要说明的是,在新建建议服务时,微软提示说提交的数据会被用于改进人工智能,因此正式使用的话,需要考虑数据脱敏的问题。

    看,我们确实没有写一个字的代码,但是完成了分析数据实现“啤酒和尿布”这件事情。





     本文转自HaoHu 51CTO博客,原文链接:http://blog.51cto.com/haohu/2069852,如需转载请自行联系原作者






相关文章
|
26天前
|
人工智能 NoSQL atlas
4大企业实例解析:为何MongoDB Atlas成为AI服务构建的首选
本文所提及的仅是MongoDB Atlas在AI领域可实现功能的冰山一角
1538 1
|
2月前
|
人工智能 自然语言处理 API
Google Gemma 模型服务:开放的生成式 AI 模型服务
Google Gemma 模型服务:开放的生成式 AI 模型服务
111 4
|
2月前
|
机器学习/深度学习 人工智能 搜索推荐
云知声蓝藻AI服务升级
【2月更文挑战第20天】云知声蓝藻AI服务升级
50 1
云知声蓝藻AI服务升级
|
4月前
|
TensorFlow 调度 算法框架/工具
【Hello AI】通过Docker安装并使用cGPU服务
cGPU服务可以隔离GPU资源,实现多个容器共用一张GPU卡。该服务作为阿里云容器服务Kubernetes版ACK(Container Service for Kubernetes)的组件对外提供服务,本文介绍如何通过Docker安装并使用cGPU服务。
|
3月前
|
人工智能 自然语言处理 搜索推荐
魔搭ModelScope社区作为一个AI模型开源平台,提供了丰富的模型资源和便捷的服务
【2月更文挑战第9天】魔搭ModelScope社区作为一个AI模型开源平台,提供了丰富的模型资源和便捷的服务
174 3
|
7天前
|
机器学习/深度学习 人工智能 分布式计算
人工智能平台PAI 操作报错合集之在本地构建easyrec docker镜像时遇到了无法连接docker服务如何解决
阿里云人工智能平台PAI (Platform for Artificial Intelligence) 是阿里云推出的一套全面、易用的机器学习和深度学习平台,旨在帮助企业、开发者和数据科学家快速构建、训练、部署和管理人工智能模型。在使用阿里云人工智能平台PAI进行操作时,可能会遇到各种类型的错误。以下列举了一些常见的报错情况及其可能的原因和解决方法。
|
12天前
|
人工智能 API 网络架构
【AI大模型应用开发】【LangChain系列】7. LangServe:轻松将你的LangChain程序部署成服务
【AI大模型应用开发】【LangChain系列】7. LangServe:轻松将你的LangChain程序部署成服务
19 0
|
2月前
|
人工智能 监控 Serverless
如何基于ACK Serverless快速部署AI推理服务
通过上述步骤,可以在ACK Serverless上快速部署AI推理服务,实现高可用、弹性扩展的服务架构。
22 1
|
2月前
|
存储 人工智能 Cloud Native
阿里云向量检索 Milvus 版开启公测,助力企业打造高质量 AI 服务
阿里云向量检索 Milvus 版正式开启公测,诚邀广大开发者及企业用户参与公测,赋能智能检索,解锁 AI 潜能。
|
2月前
|
人工智能 自然语言处理 安全
F5怎么样?保障AI服务的安全性和交付
F5怎么样?保障AI服务的安全性和交付
25 2