工程师越来越多地寻求将 AI 集成到他们的项目中,以改善他们的结果并保持领先于他们专业的数字化曲线。为了成功集成人工智能,工程师应该确保他们首先了解人工智能究竟是什么,以及它如何适应他们当前的工作流程。这可能不像他们最初认为的那么简单。
如何从工程角度定义人工智能?
当工程师讨论人工智能时,他们通常关注人工智能模型,但人工智能远不止于此。这是一个通常含糊不清的术语,用于描述由机器学习支持的运营策略。在工程术语中,“AI”的概念实际上跨越工作流中的四个步骤:数据准备、建模、模拟和测试以及部署。
工程师应该考虑的完整的、人工智能驱动的工作流的四个步骤
将 AI 纳入工作流程时,哪个或哪些步骤最重要?
每一步都很重要。工程师记住这一点至关重要,因为他们通常希望将大部分时间花在第二步——开发和微调 AI 模型上。虽然建模无疑是该过程的关键部分,但它既不是集成过程的开始,也不是集成过程的结束。如果说实际 AI 实施中的任何步骤最重要,那就是第一步,即数据准备。它的关键,以早期揭露的问题上,并了解工作流程的部分集中其上达到最佳效果。
当然,最重要的步骤将取决于具体的应用。但是,如果有疑问,请从数据开始。
在将 AI 纳入工作流程之前,工程师还应该考虑什么?
工程师应该认识到他们现有知识的价值。在开发 AI 工作流程时,许多人认为他们缺乏将 AI 融入项目所需的技能,但事实并非如此。他们对他们试图解决的问题有内在的知识,并且可以访问可以帮助他们利用这些专业知识的数据准备和建模工具,即使他们不是 AI 专家。他们还应该记住,人工智能只是更大系统中的一个部分,所有部分必须协同工作才能成功实施。
每个步骤在成功将 AI 融入项目中扮演什么角色?
如前所述,第一步,数据准备,可以说是最重要的。通常,当深度学习模型无法按预期方式工作时,工程师会专注于第二阶段——微调模型、调整参数并实施多次训练迭代。他们没有意识到,要想有效,人工智能模型需要在强大、准确的数据上进行训练。如果工程师少给模型任何东西,他们将无法从结果中获得任何见解,并且可能会花费数小时试图了解模型为何不起作用。相反,工程师通过专注于他们提供给模型的数据来更好地服务。预处理数据并确保正确标记数据有助于确保模型能够理解数据。例如,建筑设备制造商Caterpillar 的工程师 可以访问其机械在整个行业中使用而生成的大量现场数据,但他们认识到,大量数据会干扰其模型的有效性。为了简化流程,Caterpillar 使用MATLAB 自动标记数据并将数据集成到他们的机器学习模型中,从而从他们的现场机械中获得更有前景的见解。这个过程是可扩展的,让 Caterpillar 的工程师可以自由地将他们的领域专业知识应用于公司的 AI 模型,而不必强迫他们自己成为 AI 专家。
建模有多重要?
假设数据准备阶段已经完成,工程师在建模阶段的目标是创建一个准确、稳健的模型,能够根据数据做出智能决策。这也是工程师应该决定它应该采取什么形式的阶段,是像支持向量机 (SVM) 或决策树这样的机器学习,还是像神经网络这样的深度学习,还是两者的结合;选择哪个选项可以为他们的应用程序和业务需求产生最佳结果。对于工程师来说,直接访问多种工作流算法非常重要,例如分类、预测和回归。除了提供更多选项之外,这还允许他们使用由更广泛社区开发的预构建模型来测试他们的想法,并可能将其用作起点。对于工程师来说,记住 AI 建模是工作流程中的一个迭代步骤也很重要。他们必须跟踪他们在整个过程中所做的任何更改,因为它可以帮助他们识别提高模型准确性并创建可重复结果的参数。
模拟和测试起着什么样的作用?
这一步是验证 AI 模型是否正常工作的关键,更重要的是,在将其部署到现实世界之前,它是否能与其他系统有效合作。工程师必须牢记,AI 模型是更大系统的一部分,必须与该系统的所有其他部分协同工作。考虑一个自动驾驶模型:工程师不仅必须为停车标志、其他车辆和行人等物体检测设计感知系统,而且还必须与其他系统(如控制、路径规划和定位)集成才能有效。测试阶段本质上是工程师确保他们开发的模型准确无误的机会,测试该模型的最佳方法是通过仿真,使用Simulink等虚拟工具。在这个阶段,工程师应该问自己问题,以确保他们的模型无论情况如何都能以预期的方式做出响应。模型的整体准确度是多少?模型是否在每种情况下都按预期执行?模型是否涵盖所有边缘情况?通过仿真测试准确性,工程师可以在所有预期用例下验证其模型的可靠性,避免在部署模型后浪费金钱和时间的昂贵重新设计。
人工智能在最后一步中扮演什么角色?
部署阶段不再与模型有关,该模型现已被验证可以从准备好的数据中处理和提取准确的见解,而是与它所应用的硬件和使用的语言有关。例如,一个模型可以直接在 GPU 上运行,自动生成高度优化的 CUDA 代码可以消除经常通过人工翻译引入 GPU 的编码错误。工程师应该在整个过程中牢记这一阶段,确保他们最终共享一个与项目指定硬件环境兼容的实现就绪模型,这些环境可以从云到桌面服务器,再到 FPGA。在这里,正确的工具也可以使这个阶段变得更容易。能够在所有场景中生成最终代码的灵活软件使工程师能够在多个环境中部署模型,而无需强制重写原始代码。 |