出于本书的目的,请将机器学习看成基于数据集中的模式做出决策的一种方式。我们称其为 基于模式的决策 。这与当今的大多数软件开发相反,大多数软件开发是 基于规则的决策 ,程序员编写的代码采用一系列规则来执行任务。
在你的营销人员发送一份产品目录的电子邮件时,营销软件会包含查询数据库的代码,并且只提取那些被选中的客户,如居住在某个服装工厂店方圆20千米以内的25岁以下的男性。营销数据库中的每个人都可以被识别为属于这个组或不属于这个组。
与此形成对比的是,机器学习对数据库的查询可能是找出所有具有与某个特定的23岁男性相似的购买历史的顾客,而该男性恰好住在你的一家工厂店附近。该查询将返回与基于规则的查询相同的顾客,但同时也会返回具有相似购买模式并且愿意多走两步到你的店里的顾客。
许多公司依靠人而非软件来完成日常工作,例如发送营销材料和向供应商下单。这么做的原因有很多,但最普遍的原因是,对于同一个任务,教人如何执行比基于任务所需的规则对计算机进行编程要容易得多。
以Karen为例,她的工作是审核采购订单,将其发送至审批人,然后将批准的采购订单邮件发送给供应商。Karen的工作既枯燥又棘手。每天,Karen都会做出许多决策,来决定由谁来审批哪些订单。Karen从事这份工作已有好几年,所以她知道一些简单的规则,例如IT产品必须经过IT部门的批准。她还知道一些例外情况,例如,她知道当Jim从文具类目里采购碳粉时,她需要将订单发送给IT部门进行批准,但是当Jim从IT类目中采购新鼠标时则不需要。
Karen的角色没有自动化的原因是对所有这些规则进行编程比较困难,但更难的是维护这些规则。Karen不再经常采用她的“传真机”规则,而是越来越多地采用在过去几年里形成的“平板计算机手写笔”规则。她认为平板计算机手写笔更像是鼠标而不是笔记本计算机,所以她不会将手写笔订单发送给IT部门进行审批。如果Karen真的不知道如何对特定产品进行分类,她会打电话与IT部门进行讨论,但对于大多数情况,她会自己做决定。
使用我们基于规则的决策与基于模式的决策的概念,可以看到Karen融合了两者。Karen大部分时间采用规则,但偶尔会基于模式做出决策。正是由于Karen工作中基于模式的部分,使得很难使用基于规则的系统进行自动化。因此,在过去,让Karen执行这些任务要比用规则对计算机编程来执行任务容易得多。
许多公司有人工流程,通常是因为流程中会有不少变化,使得自动化变得困难。这就是机器学习的用武之地。
需要人做出决策的任何时刻,都是使用机器学习来自动决策或者提供有限选项供人考虑的机会。与基于规则的编程不同,机器学习使用数据样例而非规则来确定如何在给定情况下做出响应。这使其比基于规则的系统更加灵活,在面临新情况时,机器学习不会不知所措,而是会以一个较低的置信度做出决策。
我们来看一个例子。一个新产品进入Karen的目录,该产品是一款语音控制设备,类似于Amazon Echo或者Google Home。该设备看起来有点像IT产品,这就意味着采购订单需要IT部门的批准。但是,由于这也是将信息输入计算机的一种途径,因此它看起来有点像手写笔或鼠标之类的配件,这就意味着采购订单不需要IT部门的批准。
在基于规则的系统中,这个产品是未知的,并且当被要求确定将产品发送给哪位审批人时,系统可能会中断。在机器学习系统中,新产品不会使系统中断。相反,系统提供的答案的置信度低于系统对以往产品提供的答案。就像Karen可能会出错一样,机器学习应用程序也可能会出错。对于公司的管理团队和风险团队来说,接受这种不确定性可能会带来挑战,但这与让Karen在办公桌前对新产品做出同样的决定没什么不同。
事实上,用于业务自动化工作流程的机器学习系统可以设计得比人类自己操作效果好。最佳工作流程通常包含系统和人员。系统可以配置为满足绝大多数情况,但也存在一种机制,即当决策结果的置信度较低时,会将流程转交给操作人员进行决策。理想情况下,该决策结果会反馈给机器学习应用程序,这样应用程序未来决策的置信度会变得更高。
对你来说,对结果感到满意是件好事。在许多情况下,为了在公司做出基于模式的决策,你需要获得风险团队和管理团队的批准。下一节将研究基于模式的决策输出,你会了解一些获得批准的潜在方法。
到目前为止,我们一直将可以在公司中执行多种功能的系统称为端到端系统。通常,这些系统被称为ERP(企业资源规划)系统。
ERP系统在20世纪八九十年代迅速崛起。许多大中型公司使用 ERP系统 来管理其大多数业务功能,例如工资、采购、库存管理、资本折旧等。SAP和Oracle主导着ERP市场,但也有几个较小的厂商。
理想情况下,你的所有业务流程都可以内建到你的ERP系统中,但现实并没有那么美好。你公司做的业务可能与ERP的默认配置略有不同,这就会造成问题。你必须找人来对你的ERP进行编程,以便系统能够按照你的业务进行工作。这既昂贵又耗时,并且可能使你的公司难以适应新机会。而且,如果ERP系统能够解决所有公司问题,那么我们应该已经在20世纪八九十年代采用ERP系统时就看到了生产率的提高,但是在此期间,生产率几乎没有提高。
你在实现机器学习支持Karen的决策时,内部客户所涉及的管理流程几乎没有变化。他们继续以之前的方式下单。机器学习算法只是自动做出一些决策,然后订单就会正确且自动地发送给审批人和供应商。我们认为,除非可以将该流程与公司的其他流程完全分开,否则最佳方式是先实施机器学习自动化解决方案,然后随着时间的推移将这些流程迁移到你的ERP系统。
提示 自动化不是提高生产率的唯一途径。在自动化之前,你应该问自己是否需要这么做。你能否在不自动化的情况下创造所需的业务价值?