更多深度文章,请关注云计算频道:https://yq.aliyun.com/cloud
最近,我有幸与人工智能领域相关企业的决策者进行交谈。 其中几名高管已经被投资者询问了他们的机器学习方向的战略,以及他们现有机器学习项目的情况。 那么为何机器学习会突然成为公司董事会讨论的话题呢?
大家都知道,从一开始计算机就被设计成帮助人类解决各种问题。 传统的软件工程就是针对某个问题进行编程。换句话说,就是我们告诉计算机一个能解决某个问题的算法,并让它来执行。现实世界中很多问题可以被描述成某个算法。 比如,小学算数中,我们用加法来解决计数问题。一旦现实问题被抽象成了算法,计算机能比人类更快速,更高效地执行它们。
不过,人们也渐渐的发现了这种过程的局限性。对于类似图像识别这类问题(例如,判断照片中是否是一只猫),在人类看来是如此的轻而易举,然而想把这类问题描述成一种高效的算法却并不容易。由于对象的特征有可能被隐藏起来,我们不能简单的用“有四条腿”或“有两只眼睛”来对判断是否是猫的照片。而且,照片中还可能只显示了猫的一部分,问题就演变为识别猫的某个部位,进而使得问题变得愈加复杂。
以上对于传统编程来说的难题却恰恰是机器学习的强项。我们并不需要告诉计算机如何解决这个问题,而是使用样本来训练计算机,使其学习算法本身。 我们用大量标记为猫的照片来训练计算机(有监督学习)。 通过这种方式,算法得到了演进,最终能够识别出各种猫的图片。
与传统软件工程不同,机器学习中的计算机考察的是神经网络中的边际权重。 这个原理与人类大脑中的学习过程非常相似,依靠神经元的相互通讯来完成。而人类很难对这个具有边际权重的网络做出全面的解释。在这种情况下,深度学习应运而生,并被证明了它的成功。深度学习是多种机器学习方法中的一种,目前也成为了人工智能中的一门学科,是计算机科学研究的主要分支之一。 早在2012年,一支Google研究小组成功地训练了一个由16,000台计算机组成的网络,这个网络能通过处理千万记的视频图像,来识别出猫或任何指定的事物对象。而其中他们就采用了深度学习技术。
许多现实世界中的问题更需要通过机器学习的方式来解决。这是由于许多问题常常需要我们发现数据中的某种特征或模式,例如从图像中识别出某个对象,从语言中提取目标文本,从交易数据中侦测到可能的欺诈行为。
这里有一个简单的例子。假设,我们有许多传感器在发送并接受数据。为了确保它们的正常工作,我们需要对它们进行实时的监测,一旦其中的某台机器发生故障,我们就要进行及时的处理。通过监测,我们可以从导致故障的数据流中发现某些固定的模式。 一旦了解了这些模式,就可以在日常运行期间侦测这种模式。一旦这种模式出现,就能提前预测到可能发生的故障,从而提高运维的效率。
虽然机器学习的原理并不新鲜,但它越来越受到人们的追捧。这有三个主要原因:首先,得益于大数据技术,我们有了充分的样本数据可以被用来训练计算机。 其次,我们现在拥有了前所未有的计算能力,特别是在云计算的基础下。 第三,一系列开放源码的项目使得几乎每个人都可以利用这些机器学习的算法为自己的项目进行研发。
机器学习并不是传统软件工程的替代品,而是对其做了很好的补充。 机器学习提供了许多有用的工具,使我们能够解决更多传统软件工程解决不了的问题。 机器学习带来了许多新的机会,同时现有的系统也越来越多地采用了机器学习技术。
其中,遵循模式的重复操作就是一个典型的例子。 想象一下,一个应用系统有着多达一百多个功能,但其实用户每天一般只会使用其中的几个功能。 通过观察用户操作步骤,计算机可以学习并预测用户的下一步操作,从而提高效率。另一个例子就是分配和转换数据(例如,用于填充数据仓库的ETL作业),计算机在这个过程中学习重复的数据和对象,并对其中的步骤进行自动化并提高性能。
在其他领域我们也可以找到这样的场景:针对不同学生(特别是“大型开放式在线课程”或MOOC课程)定制个性化的学习材料、对疾病的早期诊断、定位正确的在线营销目标群体、自动识别数据质量问题,或是在线交友网站的自动匹配。
由于其出色的功能,Spark(与Hadoop组合)已经成为机器学习主流的大数据框架。 Talend也正在往这个方向发展,而且它更进一步,使用了更高效的建模作业。在使用建模以后,就能降低复杂性,同时也使得它的底层技术有了自己的独立性。由于这些技术在不停的改进中,因此只有少数这方面的专家才能运用得法。
虽然目前只有少数专家才需要真正了解机器学习领域的算法细节,但是另一方面,机器学习概念的普及也同样重要。从大量的样本中发现某种模式最终拓展了计算机可以解决问题的类别,具体来说是就是自动化的决策过程,这正是计算机学到的东西。它从训练数据中积累知识,之后利用学到的知识对新数据做出决策。 一方面,我们可以直接利用机器学习的训练结果让决策过程更智能、更准确。 另一方面,我们也可以对其他领域的机器学习的结果进行分析、改进,使其适合自己的业务领域。
总而言之,如今计算机已经不仅能够遵循明确的指令(比如,算数计算),还可以通过样本来进行学习(比如,前面提到的图像识别)。在不同的场景下,这两种方法都有着本身的特点和优势。 然而,如果我们能换种思路,把这两种方式结合在一起,那可能在人工智能方面我们又会向着最终目标更进一步。
本文由北邮@爱可可-爱生活老师推荐,阿里云云栖社区组织翻译。
文章原标题《What Everyone Should Know About Machine Learning》,作者:Gero Presser 是德国QuinScape GmbH 创始人及CEO。译者:friday012 审阅:阿福,海棠,李烽
文章为简译,更为详细的内容,请查看原文。