|
|
51CTO旗下网站
|
|
移动端

用Azure Machine Learning服务构建推荐系统

微软提供了附带Python最佳实践示例的GitHub存储库,便于用Azure Machine Learning服务构建和评估推荐系统。

作者:布加迪编译来源:51CTO.com|2019-05-21 08:00

【51CTO.com快译】推荐系统用于从零售、新闻到媒体的各行各业。如果你之前用过根据你之前看过或买过的内容提供建议的流媒体服务或电子商务网站,就与推荐系统打过交道。由于大量数据可供使用,许多公司将推荐系统作为关键的收入驱动因素。然而找到合适的推荐算法对数据科学家来说可能很耗时。这就是为什么微软提供了附带Python最佳实践示例的GitHub存储库,便于用Azure Machine Learning服务构建和评估推荐系统。

什么是推荐系统?

推荐系统主要有两种:协作过滤和基于内容的过滤。协作过滤(常用于电子商务场景)识别用户与他们评价的品类之间的交互,从而推荐他们之前并未见过的新品类。基于内容的过滤(常被流媒体服务使用)识别有关用户概况或品类描述的特点,以便推荐新内容。这两种方法还可以组合成一种混合方法。

推荐系统使客户在商家网站上停留的时间更长,他们与更多的产品/内容进行交互,并推荐客户可能购买的产品或内容。下面,我们将介绍这个存储库是什么、如何为构建和实施推荐系统的数据科学家减少麻烦。

为数据科学家简化流程

推荐算法GitHub存储库提供了用于构建推荐系统的示例和最佳实践,以Jupyter笔记本的形式来提供。这些示例详细介绍了我们对五项关键任务的了解:

  • 数据准备:为每种推荐算法准备和加载数据。
  • 建模:使用各种经典和深度学习推荐算法来构建模型,比如交替最小二乘(ALS)或极深因子分解机(xDeepFM)。
  • 评估:用离线度量指标评估算法。
  • 模型选择和优化:为推荐模型调整和优化超参数。
  • 运作:在Azure上的生产环境中运作模型。

reco utils中提供了几个实用程序以支持常见任务,比如加载采用不同算法支持的格式的数据集,评估模型输出,以及分割训练/测试数据。实施了几种最先进的算法,用于自学或者在企业组织或数据科学家自己的应用环境中定制。

下图显示了存储库中可用的几种推荐算法。我们总是在添加更多的推荐算法,请进入到GitHub存储库,查看最新列表。

用Azure Machine Learning服务构建推荐系统

下面较详细地介绍推荐算法存储库如何解决数据科学家的痛点。

1. 评估推荐算法的不同选项很耗时。

推荐算法GitHub存储库的一大优点是它提供了一组选项,显示哪些算法最适合解决某些类型的问题。它还提供了如何在不同算法之间切换的粗略框架。如果模型性能准确度不够,则需要一种更适合实时结果的算法,或者起初选择的算法并非最适合使用的数据类型,数据科学家应换成不同的算法。

2. 选择、理解和实施推荐算法系统的新模型可能成本很高。

从头开始选择合适的推荐算法并为推荐系统实施新模型可能成本很高,因为除了大量的计算能力外,还需要足够的时间来训练和测试。推荐算法GitHub存储库简化了选择过程,通过节省数据科学家测试许多不适合其项目/场景的算法方面的时间来节省成本。再结合Azure的各种定价选项,可降低数据科学家的测试成本和企业的部署成本。

3. 实施更先进的算法难度很大。

被要求构建推荐算法系统时,数据科学家常常将目光投向更常用的算法,以减少选择和测试更先进算法所需要的时间和成本,即使这些更先进的算法可能更适合项目/数据集。推荐GitHub存储库提供了一套知名且最先进的最适合某些场景的推荐算法。它还提供了最佳实践;若遵循这些最佳实践,可以更轻松地实施更先进的算法。

4. 数据科学家不熟悉如何使用Azure Machine Learning服务来训练、测试、优化和部署推荐算法。

最后,推荐算法GitHub存储库提供了有关如何在Azure和Azure Machine Learning(Azure ML)服务上训练、测试、优化和部署推荐模型的最佳实践。实际上,有几个笔记本介绍了如何在Azure ML服务上的存储库中运行推荐算法。数据科学家还可以使用已创建的任何笔记本,将其提交给Azure,几乎不需要更改。

Azure ML可广泛用于与AI模型开发有关的任务,比如说:

  • 超参数调整
  • 跟踪和监控度量指标,以改进模型创建过程
  • 纵向扩展和横向扩展DSVM和Azure ML Compute等计算
  • 将Web服务部署到Azure Kubernetes服务
  • 提交管道

原文标题:Building Recommender systems with Azure Machine Learning service,作者:Heather Spetalnick

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

【编辑推荐】

  1. 如何11步转行数据科学家 (适用数据员/ MIS / BI分析师)
  2. 数据工程师和数据科学家有什么不同
  3. 数据科学家告诉你哪些计算机科学书籍是你应该看的
  4. Python数据科学:神经网络
  5. 如何成为一名数据科学家?
【责任编辑:未丽燕 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

订阅专栏+更多

Spring Boot 爬虫搜索轻松游

Spring Boot 爬虫搜索轻松游

全栈式开发之旅
共4章 | 美码师

55人订阅学习

Linux性能调优攻略

Linux性能调优攻略

性能调优规范
共15章 | 南非蚂蚁

187人订阅学习

VMware vSphere虚拟化常见故障

VMware vSphere虚拟化常见故障

搞定vSphere虚拟化
共18章 | 王春海

71人订阅学习

读 书 +更多

XML基础教程

本书分为8章。第1章主要对XML做了简单的介绍。第2章详细讲解规范的XML文件。第3章主要讲解有效的XML文件,特别重点讲解DTD文件。第4章讲解C...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO播客