你好,游客 登录
背景:
阅读新闻

机器学习的乐趣(和繁重的工作)

[日期:2015-01-29] 来源:译言网  作者:译言网 [字体: ]

  

  几乎没有人看好机器学习在企业应用领域的巨大潜力。我有幸在第一份工作的前几个月能够亲身感受到它的潜在好处。1995年信用卡发行机构开始采用神经网络模式来实时监控信用卡诈骗。使用信用卡时,销售点系统的交易数据会发送到信用卡发行商的询问信用卡用户系统,在询问信用卡用户系统中,神经网络会对诈骗的可能性进行评分。如果诈骗可能性较高,就会及时拒绝交易。我身为一名建立这些模型的科学家,我建立的第一个科学模式交付使用的用户之一是一家南美银行。当模式部署完毕后,银行第一天就鉴定出之前未被发觉的诈骗行为总值超过一百万美元。这真是令人大开眼界。从那时起,我就看到机器学习在不同的应用领域所能提供的巨大价值,如需求预测、故障和异常检测、广告定位、在线建议以及像科塔娜那样的虚拟助手。通过将机器学习融入到他们的企业系统中,组织机构可以改善他们的客户体验,降低系统失灵的风险,增加收入并节省大量成本花销。然而,建立机器学习系统是一项进展缓慢、耗时并且易出错。尽管我们这几天能够分析大量的数据组并以极高的成交率进行部署,但仍有一些瓶颈问题存在:

  机器学习的系统开发需要深厚的专业知识。尽管现在有更多的观众都可以接触到机器学习的核心原则,但今天聘用到优秀的数据科学家就跟二十年前一样困难。

  实习生被迫用各种工具去收集、清理、整合和分析数据。使用这些工具需要我们学习的很多专业知识而且这些工具不易被集成起来。商业的机器学习软件的部署和维护的成本很高。

  建立模型和验证模型需要进行大量试验。数据科学家常常发现自己受到计算和存储的限制,因为他们需要进行大量的实验以获得大量的新数据。

  软件工具不支持可扩展性的试验或是组织试验运行的方法。与团队合作进行试验、共享衍生变量和原稿等的法案,是手写并且非正式的,并没有工具支持。评估以及调试统计模型仍是一项挑战。

  编写自定义程序和从事与他们进行机器学习的试验时一样无差异的繁重工作的限制,是数据科学家工作所围绕的中心。但在部署阶段情况变得越来越难。在关键性任务的业务流程中部署机器学习模式,如及时的诈骗预防措施或是广告定位,都需要复杂的工程设计。

  有代表性的,已经离线发展的机器学习模式如今不得不用C++或 Java等编程语言重新执行。

  我们不得不探测交易数据管道。数据转换和用于离线模式的变量不得不被重新编码和编译。

  这些再执行程序不可避免会产生错误,因此需要鉴定模式是否按照最初设计的那样运行。

  必须为模型建立一个能够适当监控、度量和记录的自定义容器。

  预先的部署需要A/B测试框架来并列评估备选模型。一个需要转变模式开启或关闭的机制,最好不要重新编译和部署整个应用软件。

  必须证实候选生产模式通过统计检测可以像最初设计的那样运行。

  必须记录系统作出的自定义决策和业务结果以作为定义机器学习模式和检测用。

  当不得不缩放设备以满足成交率和/或是低延迟,要求更多的工作量来提供新的硬件,将这项服务部署到新机器上并横向扩展。

  所有的步骤都是耗时并工程密集的。在基础设施和人力资源方面都是代价高昂的。端对端的工程和机器学习应用软件产品的维护需要一支高技术人才的团队,但没有组织机构能够建立并负担得起这样的团队。

  Microsoft Azure ML是被设计用于解决以下问题:

  这是一个全托管的云服务,不需安装软件,不需管理硬件,没有OS版本的操作系统或是不需应对开发环境。

  手无寸铁,只有浏览器这一个武器,数据科学家可以进入Azure系统并从任何位置、任何设备开始开发机器学习模式。它们可以在Azure存储上存储几乎无限数量的文件。

  机器学习工作室,对于机器学习来说是一个集成的开发环境,让你可以设计出像简单的数据流图的试验,而且很容易使用拖拽、下降和链接范例。数据科学家可以避免对大量的常见任务进行编程,这让他们能够将精力集中在实验设计和重复上。

  许多的样本实验都是为了在开始时容易上手而提供的。

  微软研究院开发的一组最佳的增值算法是内置的,同样作为对自定义的R代码提供支持—超过350个开放源码R包能够在Azure ML中安全使用。

  数据流图可以拥有几条平行路径,而这几条平行路径能够自动地并列运行,令科学家能够执行复杂的试验并不受一般的计算约束进行并列比较。

  实验是很容易分享的,因此其他人可以了解你的工作并从你离开的地方继续接手。

  Azure ML让在云中按比例创建生产调度变得简单容易。预先测试的机器学习模式可以集成到评估的工作流程中,点击几下,就能建立一个新的云端 REST API。这个 REST API已经被改造为处理低延迟问题。不需要重新执行或进入端口——这是胜过传统的数据分析软件的关键。来自互联网上任何位置的数据——笔记本电脑、网站、移动设备、可穿戴设备和相互连接的机器——可以发送到最近建立的API以恢复预测情况。例如,数据科学家能够建立一个诈骗检测的API,该软件将交易信息作为输入信息,并传回低/中/高风险指标作为输出信息。这样的API之后会“住”在云端,准备好接受任何应用软件的呼叫,其中应用软件是开发人员选择从中呼叫的。API后端可以弹性缩放,以至于当成交率迅速上涨时,Azure ML服务能够自动解决负荷问题。因为ML API的数量几乎不受限,数据科学家可以建立并进行调度——而且所有的这些都与工程相互独立。对于工程和IT来说,集合一个采用 REST APIs技术、在部署变得容易前并排测试大量模式变得简单,使得灵活性在低成本下大大提升。Azure为生产过程中缩放并管理API提供机制,包括衡量可用性、潜在因素和性能的机制。建立牢固的、高可用性的、可靠的机器学习系统和管理生产调度对于企业来说,也因此大大加快其速度、大大降低成本并更加容易,同时带来巨大的商业利益。

  我们认为 Azure ML是一个规则改变者。 Azure ML让创业公司和大型企业都能获得ML的巨大潜力。之前只有最尖端的企业拥有的能力,创业公司现在也能够拥有了。更大型企业能够释放他们的大数据中的潜在价值,以产生更多的收入和更高的效率。最重要的是,重复和试验的速度现在可能会顾及到快速创新并为我们周围的云连接的智能设备让路。

  当我1995年开始我的事业时,建立了一个大型的组织并调度了信用卡诈骗监测系统。有了 Azure ML这样的工具和云技术的力量,一位优秀的数据科学家可以完成同样的壮举。





收藏 推荐 打印 | 录入: | 阅读:
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数
点评:
       
评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款