本文摘要(由AI生成):
本文主要介绍了机器学习的概念、应用和案例。机器学习是一种利用数据来预测或了解事件的技术,其应用领域广泛,包括工程、商业和科学等。机器学习的关键术语和概念包括监督学习、无监督学习和聚类等。在工程领域,机器学习技术被用于解决各种问题,例如火箭发射、卫星设计和制造等。机器学习技术的应用带来了巨大的经济优势,因此数据被称为“新石油”。
如今,许多组织已经或打算将其数据用于尖端的机器学习技术中,以了解或预测对运营非常重要的事件。有效利用数据所带来的优势是显而易见的,也是公认的。然而,根据经验,许多组织在采用这种机器学习技术方面相对进展较慢。由于缺乏这种技术,他们承担着降低竞争力的风险。
在本篇文章中,我们将探讨以下几个问题:
1. 机器学习的概述和应用,重点主要放在工程领域;
2. 介绍并阐明机器学习的常用关键术语和概念;
3. 分享一些机器学习技术用于特定工程的案例。
本文作者
Dr. Shidan C. Murphy
Director of APAC Solutions Specialists, Data Intelligence
数值方法与T检验
数值方法在商业上的应用有着悠久的历史。吉尼斯啤酒厂在100多年前率先开发了这种方法。当时,如果你有科学天赋,那吉尼斯啤酒厂就是适合你工作的地方。吉尼斯啤酒厂以在最具竞争力的大学招聘最优秀、最有才华的科学家而闻名:数学家、化学家、物理学家、生物学家等等。这些人被聘请进行创新、开发和创造,以便他们能够实施新技术来解决吉尼斯啤酒厂面临的业务问题。
这些人中最有名的是William Sealy Gosset。最终成为吉尼斯啤酒厂的首席酿酒师,他在牛津大学攻读自然科学和数学后加入了这个公司。
当他加入吉尼斯时,因为啤酒的需求不断增长,啤酒厂正在经历一段快速扩张时期。在这一扩张阶段,他们的主要业务问题是在增加产量和降低成本的同时保持啤酒品质的一致性。
吉尼斯啤酒的主要成分是一种叫做麦芽提取物的液体。麦芽提取物是从大麦谷物中提取的。吉尼斯的早期酿造方法是采取“外观和感觉”的方法来选择这种大麦。他们会选择最“香”或最“好看”的大麦,然后用这些原料酿造尽可能多的啤酒。可惜的是,对吉尼斯来说,大麦的“外观”和“感觉”实际上与啤酒的最终味道并不相关。因此,通常在酿造环节结束时,人们认为酿造风味低于可接受的质量标准,他们必须将其全部扔掉——浪费大量的原料、时间和精力。这种对产品的高要求使他们付出了金钱的代价,而且难以满足客户的需求。他们必须找到一种更好的选择原料的方法,因为他们原有的“外观”和“感觉”方法并不经济——因为质量差,有太多的啤酒被扔掉了。
William Sealy Gosset为原料的选择带来了科学的严谨性。他开发了一种数值方法,能够根据很少的麦芽提取物样本对大麦质量做出广泛的结论。第一次,一个酿酒师可以根据3或4个麦芽提取物样本来确定整批大麦的总体质量。这里的创新之处在于将结论从一个小样本扩展到一个群体。
这项工作之后继续以 Student 的笔名发表,今天被称为T检验。
这项工作令人兴奋有两个原因。对吉尼斯啤酒厂来说,这一结果令人激动,因为这将使他们能够在酿造环节内对所用材料做出明智的决定——满足他们保持酿造质量的愿望,同时增加产量并降低成本。对于统计学家来说,这种方法令人激动,因为它引入了一个概念,即通过使用分布表来了解如何将某一结果与随机机会相比较,以衡量结果的确定性。这项工作激发了整个统计工作的潮流,构成了现代统计理论的基础。
由于专注于数据、创新和基于证据的决策,吉尼斯啤酒仍然是全球最成功的啤酒品牌之一,这并不令人惊讶。事实上,公司利用数字创新来增加商业优势的趋势还在继续。如今,各组织都在投资机器学习技术,以了解他们的大量数据。这样做的经济优势是如此之大,以至于数据常常被称为“新石油”,一个最初由数学家Clive Humby创造的短语。
在2017年,《经济学人》写了一篇文章,认为数据正在推动下一次经济革命。文章指出,当今世界上最大的公司都是数据驱动的公司,例如,每个人都知道的公司——Facebook、Alphabet(或Google)、亚马逊等等。显然,数据和对数据的高质量分析是变革性的。
然而,根据经验,工程公司在运营中采用最新的机器学习技术和概念的速度相对较慢。
机器学习
工程领域的机器学习
首先,让我们看一下工程领域的机器学习。
这是一张图表,显示了1990年至2018年的出版物数量,其中包括论文摘要中的“机器学习”和“机械工程”关键字。我们可以很清楚地看到,这些主题同时也在学术出版中被越来越多的考虑,事实上,出版率正在提高。在过去的5年里,关于这些主题的出版物比过去的24年的都要多。机器学习技术在工程中的应用正在明显增长。尽管这些数据是机械工程领域特有的,但总体趋势是跨工程学科的。
但它在哪里增长?在哪些领域?以下是普华永道会计师事务所的一份报告,该报告对机器学习将应用于智能制造的技术进行了排名。
屏幕左侧的主题按红色横条排列,这表示未来5年技术的预期增长。请注意,预测性维护是预测机械故障以便执行主动维护的能力,在这些技术中排名最高。机器学习在预测性维护方面有着非常明确的应用,并且有充分的理由来实现预期的增长——公司的经济效益是显而易见的。麦肯锡报告了几项技术的重大经济和运营效益,其中就包括预测性维护。具体来说,他们发现当实施预测性维护计划时,能实现:
--每年维护费用降低10%
--停机时间减少20%
--设备检修费用降低25%
--息税前利润提高10%至20%。
机器学习快速增长的三个原因
那么,这是为什么?为什么组织中机器学习的应用正在快速增长?有三个关键原因:
1)硬件——提高功率和质量;
2)软件——特别是在开发开源软件和开发商业应用程序方面,这些应用程序使许多新技术可供技术水平较低的用户使用;
3)数据——各种数据集的广泛可用性,以及传输数据的传感器和连接设备的激增。
相信你们中的许多人都听说了这三个原因推动了机器学习技术的普遍采用。但是,这到底是如何实现的?
简而言之,一只猫。或者更确切地说,用一种算法驱动的方法可以得知这个图像确实是一只猫。
现在,我们都有足够的经验与动物的互动,知道这是猫而不是狗。但电脑能做到吗?2012年,Google X实验室提出了这个确切的问题。计算机能仅仅通过识别图像就知道图像中是什么吗?关键的挑战是,计算机能否在没有任何关于猫或猫长什么样的建议和信息,将其识别为猫?
Google X实验室通过从Youtube视频中随机抽取的1000万张图片来测试这个问题,查看计算机是否能够识别图像。大约20000张图像之后,他们的系统开始识别猫的图像。回想一下这里的关键创新——系统自己找出了图片的内容。谷歌并没有告诉电脑什么是猫,什么不是猫,也没有提供有关图片内容的信息。
这是一个大项目——它需要大量数据、大量软件创新和对硬件的重大投资——1000台计算机协同工作及16000个核连续处理三天,完成这项任务花了几百万美元。
没有比这个案例更能说明硬件、软件和数据升级的效果了。
2007年/2008年
这项工作是不可能的。没有足够的数据——没有足够的猫的照片。硬件不够强大,软件也没有能力。
2012年
Google X实验室完成了这项工作。它需要1000万张图片,1000台计算机协同工作,16000个核和3天的连续处理。
2014年
3个现成的GPU复制了一个类似的任务,而它只花费了数小时,而不是数天。这些缩短的处理时间与硬件的显著改进以及依托于硬件开发的软件直接相关。
2017年
在Google X实验室原本从事这项工作的人鼓励人们使用高性能计算机HPC来完成类似的任务。
重申一下观点——当谈到硬件的改进时,我们不仅仅是在谈论单个计算机芯片内计算能力的提高——今年的台式计算机比去年的计算机更强大。这是真的,但另一个方面是硬件使用越来越先进,并且硬件可供普通用户使用。
2007年/2008年
这项工作很可能是在一台台式机或服务器上完成的。
2012年
他们将多台计算机连接起来,在本例中为1000台,并将工作负载分配给这些计算机。
现在
各组织正在转向GPU,机器学习中的思想领袖正在鼓励大家朝着高性能计算的方向发展。
所以,个人电脑确实变得更加强大,但人们也正在转向更高效、更先进的硬件。
机器学习的定义
关于这个话题有很多流行语,但文中只会关注两个词,因为它们经常被谈论:人工智能和机器学习。
人工智能是一种多层次协同工作的计算机应用,用来模拟智能决策。机器学习是人工智能概念中的一个层面,它是推动实际决策的引擎。
顾名思义,机器学习可以分为两个直观的概念:机器和学习。
机器学习中的机器是指自动化。
自动化的类型包括:
1. 数据理解的自动化。这些数据太复杂了,无法进行人工推断。
2. 模型创建的自动化。模型是在没有人为干预的情况下建立的,模型中发现的结论过于复杂,无法完全理解。
3. 模型改进的自动化。随着时间的推移,模型有了持续的自动化改进。
那么,机器学习中的学习呢?学习是指三种关键的范式:
1. 强化学习
2. 无监督学习
3. 监督学习
强化学习的基础是在循序的决策过程中奖励正确的行为。最终的结果是为了在一系列的决策之后使累积的奖励最大化。强化学习在最著名的人工智能应用中被大量使用,人工智能在国际象棋和围棋中击败了世界级的人类棋手。然而,除了机器人领域的自动化之外,强化学习在工程中的应用还很少。
无监督学习是基于数据不言自明的观点,没有与数据相关联的预测。相反,数据中的模式用于将其组织为逻辑单元。换句话说,我们从模式本身学习信息。例如,看下方这个图表,我们看到两个变量相互绘制。
无监督学习与我们看图表非常相似,我们会说“嗯,这些点看起来彼此不同。它们可能代表不同的类别。”我们把这些观测称为不同的聚类。无监督学习在异常检测和探索性数据分析中的应用最为普遍。它在理解大数据中的数据模式方面非常强大。今天,有一些最先进的机器学习技术结合了无监督和有监督的学习,将在下面进行讨论。
当你有变量时,你可以使用监督学习,这些变量将用于预测已知结果。在这种情况下,利用率、范围、有效载荷和能源等变量将用于预测变量“已知结果”中的值。这种学习类型的目标是让算法了解与“已知结果为是”和“已知结果为否”相关的模式。监督学习是大多数机器学习技术的基础。
现在我们来重点介绍一下监督学习模型下的通用模型构建过程。
第一部分显然是数据。在工程中,通常有三种主要类型的数据可用于生成机器学习模型:
1. 仿真数据,来自物理驱动的模型,可能来自于Altair自己的产品模块。
2. 历史数据,来自实验或在常规操作中收集的。
3. 流数据,或者实时数据,来自实时记录数据的设备或传感器。这类数据通常与物联网相关联。
每一个数据源都要经过自己的数据清理、变量创建和准备过程,然后可以组合在一起生成最终的模型构建数据集。通常,最终的模型构建数据集有许多变量,这些变量将用于理解在另一个单一变量(已知结果变量)中找到的模式。
模型开发过程的最后一步是测试模型是否过度拟合。当模型和建立模型的数据集太紧密对应时会产生过拟合问题,该问题最终会导致建立的模型很难预测未来或产生不同的观测结果。
为了防止过度拟合,使用与最终模型构建数据集形式相同的测试或验证数据集来评估模型结论的稳定性。验证数据集和模型构建数据集之间的巨大差异是,验证数据集不包括用于开发机器学习模型的观察结果。
最后一步叫做评估或预测。在这一步,机器学习算法使用包含所有预测字段但不包含已知结果变量的数据集来生成一组预测。这些值是已知结果变量的预测值,将用于做出后续业务决策。
那么,数据科学家使用的一些更常见的算法的名称是什么?线性回归,逻辑回归,一般线性模型,线性判别分析和稳健回归。这些构成了数据科学家建模工具箱的基础。推进和扩展这些方法已经发展出今天更为常见的方法,即机器学习。其中的一些技术包括神经网络、决策树(构成Boosting, Bagging和随机森林决策树的方法)以及支持向量机。
案例分享
前文已经展示了机器学习的发展和应用,并帮助定义了这些方法所涉及的内容。接下来,我们将带您了解一下Altair与客户实践的一些案例。
但在分享之前,先来谈谈对成功的案例至关重要的三个关键点。这些关键点确实需要定义和评估。
首先,你需要意识到你要解决的问题。正确的问题陈述有时很难确定。
第二,数据的可用性。现有数据是否反映了充分性、质量、持续时间等问题。
最后,你需要一个模型。这个模型应该致力于减少限制因素,减少约束——例如,模型可能试图减少产品开发所需的时间,最小化材料或增加经济效益。
研发一款具有商业竞争力的火箭
这个案例涉及到与欧洲航天局的合作。他们正在开发一种火箭,以便与当今其他航天组织和商业机构竞争。
欧洲航天局将他们的火箭设计为使用液体燃料,这比他们的一些竞争对手使用的固体燃料要贵得多。他们担心火箭燃料的价格会导致没有竞争力的报价。因此,他们设计了一种火箭,可以同时发射多颗轨道高度不同、轨道旋转不同的卫星——这是当今其他火箭无法做到的。
一次发射就能发射不同的多颗卫星,这大大增强了欧洲航天局的竞争优势。然而,在同一枚火箭上释放多颗卫星的问题是,每颗卫星要在不同的轨道高度释放。要释放这些卫星,你需要关闭火箭发动机,以一定的转速发射卫星,然后再次启动火箭发动机,并进一步向太空飞行。然而,火箭的设计者关心的是发动机在低重力下的启动和关闭将如何影响火箭的稳定性。
当火箭在加速时,它最终会达到一个能产生动态稳定性的速度。然而,当引擎关闭以释放卫星,然后重新加速时,这种加速度变化将导致液体燃料在火箭内来回晃动。因此,他们需要回答的问题是,尽管存在这种不稳定性,火箭能否升空,达到第一个目标高度,关闭引擎,释放第一颗卫星,重新启动引擎,继续升到更高的高度,再次关闭引擎,释放另一颗卫星,重新启动引擎,然后继续沿着计划的轨迹进行。
回答这个问题的传统方法是使用计算流体力学。这种方法将准确地仿真液体的预期形态。这种方法的问题是——仿真需要很长时间才能运行,大约50天。他们正在寻找一种更快的方法来理解这些作用在火箭上的动力。
他们采取了两种方法。首先,使用机器学习仿真晃动,并创建基于地面的实验数据,用来验证这些仿真是否正确。他们开发了一种人工神经网络来理解流体运动背后的模式。他们使用实验和仿真数据的组合训练神经网络,然后使用已知准确的数据比较预测。他们发现机器学习方法能够很好地复制实际的流体运动。
由于人工神经网络被发现能够准确地预测液体的流动,因此它可以在最初的开发阶段代替计算流体力学。机器学习方法将仿真时间缩短了6倍。
机械臂的预测性维护
如前所述,预测性维护是机器学习在工程领域中的一个常见且日益增长的应用。在这个特定的使用案例中,一家经营工厂的公司正在使用一组机械臂来组装产品。他们希望在这些机械臂上开发一个预测性维护程序,以减少工厂停机时间。这一想法——如果他们能够预测即将出现的问题,他们就可以安排维护,避免计划外停机。这样的程序将大大提高工厂的生产率。
这是他们的一些数据——在正常操作过程中收集的历史数据,诸如:使用时间、机器人的到达范围、平均有效载荷等因素。除了这些信息,他们还记录了机器人是否需要维护,以及是否由于维护而无法使用。
现在的问题是,数据中是否有模式可以让我们了解何时需要维护机械臂,何时不需要维护。我们用建立在模型数据集上的一组机器学习模型来回答这一问题,然后在验证数据集上确认结果。我们发现有非常清晰的信号——表明机器人手臂何时需要维护,何时不需要维护。
现在,一旦构建了这个模型,我们就可以部署这个模型了。这个实现的基本步骤是获取机械臂的使用数据,然后使用我们的机器学习模型预测机械臂是否需要尽快维护。
机器学习模型将产生两个输出——一个是机械臂是否需要维护的预测,另一个是该预测模型的确定性。该一模型的部署使工厂停机时间减少了约22%,维护成本减少了约8%。
本次分享就到这里啦,欢迎大家在评论里分享自己对于机器学习的观点~