机器学习是否真的适合你的业务?


当前机器学习(Machine learning,ML)非常流行,你肯定听过埃隆·马斯克和马克·扎克伯格关于人工智能和机器学习的未来的争论,对于这个概念你也非常感兴趣,你想知道机器学习到底对自己的公司业务有没有帮助?

在本文中,我们简要地解释了什么是ML,然后深入讨论您的公司应该考虑的与ML相关的问题。

什么是机器学习?

机器学习是革命性的,因为它赋予了计算机在没有明确编程的情况下就可以解决问题的能力。在传统的计算机算法中,程序员会指定规则,明确地决定他们的软件将会做什么。

ML算法有不同的工作方式。在高层次上,他们通过摄入大量的历史数据并利用这些知识来做决定/做预测,从而指导他们的行动。目前在企业中使用ML的一些示例包括:

电子邮件过滤器将邮件标记为垃圾邮件或非垃圾邮件

Netflix向你推荐你可能喜欢的电影/节目

谷歌地图预测在你的目的地的停车情况

Facebook的面部识别技术可识别照片中的人

异常检测算法可以识别欺诈购买行为

以下是实施机器学习的典型设置(在很高的级别上) :

a.选择一个ML算法或模型

b.通过输入数据来训练该模型

c.用训练后的模型作出决策/预测

让我们以电子邮件垃圾邮件过滤器为例详细解释一下。电子邮件供应商用来检测垃圾邮件的ML模型可能是朴素贝叶斯分类器(但也存在其他可用的模型)。他们通过输入数百万封被标记为垃圾邮件和标记为合法的电子邮件来训练这个模型。

等模型进行了充分的训练之后,他们可以用它来将收到的电子邮件准确的分类为垃圾邮件或是正常邮件。例如,如果你收到一封包含短语“尼日利亚王子”的电子邮件,ML模型知道该短语频繁出现在以前的垃圾邮件中,然后把收到的邮件标记为垃圾邮件。

从业务问题到ML算法

ML的确有非常令人生畏的数学特性。但是,我希望解决的问题是,你的企业是否能从机器学习中受益。这个问题的答案需要依照具体情况而定。这取决于你试图解决的问题和你能够收集到的数据。首先,下面是你公司在决定使用ML开始前应该问的一些初步问题:

1.你是否已经尝试过传统的数据分析或数据统计?

你可能不需要一个像机器学习那样复杂的解决方案,仅仅知道你想要解决的问题的基本统计数据就足够了。

数据中心的一位工程师可以使用机器学习来减少他们的能源消耗——也许,通过找到IT负载、水泵、室温和其他因素之间的复杂关系——或者他们可以看看每个组件的能源消耗,从而消减服务器过大的能耗。

一个零售商店可以使用一个像k – means聚类这样的ML模型来探究消费者的购买模式(例如,“20 -30岁的人都喜欢什么时间去购物?”)或者零售商店也可以只是打开交易的电子表格,就可手动地推断他们想知道的情况。

如果基本的统计数据就可以代替机器学习并为你提供足够的洞察力,同时节省你的时间,为什么不用呢?至少,这是一个很好的起点。

大数据

2.你有与解决问题相关的数据吗?

例如,假设你的公司正在尝试对工厂设备进行预测性维护。换句话说,你想估测一下一台特定的机器还能用多久。在这种假设情况下,你需要将传感器安装到设备上并收集需要的数据信息,例如:

a.使用频率是多少

b.它正在经历的振动幅度

c.它已经使用了多久了

d.房间温度,等等

一般来说,没有相关数据的机器学习算法就像一个没有有用线索的侦探。那句古老的格言没错:“如果你输入的是垃圾,那么输出的也一定是垃圾”。

3.你有很多相关的数据吗?

在你使用ML之前,你必须先用大量数据对该ML模型进行训练。为了使他们能有足够的准确性,他们需要至少有数以千计的数据点(最好是更多)。你有可能得到一个预先训练过的模型,但你不清楚这个预先训练的模型是否适合你试图解决的特定类型的问题。

下一步

如果你仍然认为ML很适用,你应该去咨询一下了解不同ML模型的专业人士,这是非常值得的。令人意外的是,困难的部分不是建立这些机器学习模型。

Tensorflow、MATLAB和R都是提供预构建的ML模型的开源程序的示例。困难的部分是从SQL数据库(或您使用的任何存储选项)检索和重新格式化您的ML程序的数据。

大数据

为了说明这一过程的困难,请参考谷歌云NEXT 2017的机器学习演示:

“我们在这个房间和其他机器学习的房间里得到了很多的关注,因为它是一门新的科学,它是一只闪闪发光的独角兽,它是魔法。如果没有数据,没有高质量数据,没有机器数据,没有把来自19个不同数据库的数据整合到一个单独的数据存储中……就没有机器学习。如果您说“但我的许多事务性数据运行在我的Oracle财务系统中,在我的在线系统在我的电子商务系统中或是托管在其他地方…不要担心,那些我希望聚合于机器学习中日志数据还在我的Apache服务器上存着呢……让我们做一些机器学习”。那我没有任何在这个房间的任何人的解决方案。然后我会说,‘当你有了大数据之后再来找我。’”

同样,解决这个问题的方法是咨询熟悉机器学习和数据库技术的人。

结论

总而言之,在您考虑在您的业务中应用机器学习的时候,总是从传统的统计数据开始。你可以开始考虑是否值得与熟悉各种ML模型的人进行咨询。它们可以帮助您整合出一个完整的ML解决方案,从数据检索到数据存储,再到实际培训ML模型,并为你的产品或公司提供强大的功能。或者,你可以查看AutoML程序,以编程的方式为你完成这个过程。
来自:36大数据
CPDA课程海报