什么是人工智能(AI)?—— 你需要知道的三件事

2020-12-14 10:33:37

什么是人工智能(AI)?—— 你需要知道的三件事

人工智能 (AI) 是对人类智慧行为的仿真。它通常是设计用来感知环境、了解行为并采取行动的一台计算机或一个系统。想想自动驾驶汽车:此类 AI 驱动系统将机器学习和深度学习等 AI 算法集成到支持自动化技术的复杂环境。 关于人工智能 (AI),有哪三件你必须知道的事情呢?

为什么人工智能 (AI) 如此重要?

据麦肯锡预计,到 2030 年,AI 的全球经济价值将高达 13 万亿美元。

这是因为在 AI 浪潮的影响下,几乎各行各业乃至每一个应用领域的工程环节都在转型。除了自动驾驶以外,AI 还广泛应用于以下领域:机器故障预测模型,告知何时需要进行机器保养;健康和传感器分析,如病患监护系统;机器人系统,直接从经验中学习并不断改进。

1.png

AI 工作流的重要组成部分 要想取得 AI 项目的成功,不单纯是训练AI模型,在需要做出决策并采取行动的 AI 驱动系统中尤为如此。稳健可靠的 AI 工作流涵盖多个环节:准备数据;创建模型;设计运行模型的系统;部署到硬件或企业系统。

2.png

AI 工作流步骤如下。

数据准备

提取原始数据,确保数据可用于构造准确、高效而有意义的模型,这是一个关键步骤。事实上,准备阶段会占用 AI 项目的绝大部分精力。 数据准备要求具备领域专业知识,如语音和音频信号、导航和传感器融合、图像和视频处理、雷达和激光雷达经验。这些领域的工程师最适合确定哪些是数据的关键特征,哪些是不重要的特征,以及需要考虑哪些罕见事件。 而且 AI 涉及大量数据。但是,标记数据和图像既乏味又费时。有时,您无法获得足够的数据,特别是关键安全系统数据。生成准确的合成数据有助于改善数据集。在这两种情况下,自动化技术对于如期完成工作至关重要。

AI 建模

成功实施 AI 系统建模的关键因素如下:

首先从一套完整的机器学习、深度学习、强化学习及其他 AI 技术算法和预置模型开始。

通过应用程序开展卓有成效的设计和分析

在开放式生态系统中工作,可以综合运用 MATLAB®、PyTorch 和 TensorFlow™ 等 AI 工具

通过 GPU 加速功能管理计算复杂度,并扩展到并行服务器、云服务器及本地数据中心

系统设计

AI 模型存在于完整的系统中。在自动驾驶系统中,AI 感知系统必须与定位和路线规划算法以及制动、加速和转弯控制集成。

3.png

思考一下 AI 在风力发电厂预测性维护及现代飞机自动驾驶操纵系统中的应用。

上述复杂 AI 驱动系统需要集成和仿真。

部署

最终产品要把AI 模型需要部署到 CPU、GPU 和/或 FPGA 中,无论部署到嵌入式设备、边缘设备、企业系统还是云中皆不例外。嵌入式设备或边缘设备上运行的 AI 模型可以立即现场返回结果,而企业系统和云中运行的 AI 模型则可以处理来自多台设备收集的数据。通常,AI 模型将部署到两者结合的系统中。

倘若使用模型生成代码并部署到设备,势必可以加快部署过程。您可以运用代码生成优化技术和硬件优化库,调整代码以满足嵌入式设备和边缘设备的低功耗特性或者企业系统和云的高性能需求。

使用 MATLAB 开发 AI 驱动的系统

人工智能技能普遍欠缺是众所周知的。但是,使用 MATLAB 或 Simulink® 的工程师和科学家具备在自身专业领域内创建 AI 驱动系统所需的技能和工具。

使用 MATLAB 进行数据处理

可以节省预处理数据的时间。无论是时序传感器数据、图像还是文本等,MATLAB 应用程序和数据类型都能大大缩短预处理数据所需的时间。借助高级函数,您可以轻松同步不同的时序、用插值替换离群值、过滤含噪信号、将原始文本分割成单词等。借助绘图和实时编辑器,您可以快速可视化数据,理解内在趋势并发现数据质量问题。

MATLAB 应用程序会自动进行图像、视频和音频数据的真实值 (ground-truth) 标注。

要想从传感器或其他设备获得真实数据之前先测试算法,您可以从 Simulink 生成合成数据。此方法在自动驾驶系统中十分常见,如自适应巡航控制、车道保持辅助和自动紧急制动。

4.png

5.png

 

不同应用程序的 AI 建模方法有所不同。

机器学习

MATLAB 用户部署了成千上万的应用程序,用于预测性维护、传感器分析、金融和通信电子领域。Statistics and Machine Learning Toolbox™ 借助用于训练和比较模型的 App、高级信号处理和特征提取,以及用于监督式和无监督学习的分类、回归和聚类算法,让机器学习的难点部分变得简单。

半导体制造商 ASML 运用机器学习技术开发了虚拟量测技术,用于提高构成芯片的复杂结构的套刻和对准精度。“作为一名工艺工程师,我没有神经网络或机器学习方面的经验。我通过 MATLAB 示例为生成虚拟量测找到了最好的机器学习函数。我用 C 或 Python 做不到这一点,查找、验证和集成合适的包会花费太多时间。”工程师 Emil Schmitt-Weaver 解释道。

对于大多数统计和机器学习计算,MATLAB 模型比开源工具执行速度更快。

6.png

深度学习

工程师将 MATLAB 深度学习功能广泛应用于自动驾驶、计算机视觉、语音和自然语言处理及其他多种应用领域。您可以使用 Deep Learning Toolbox™ 创建、互连、训练及评估深度神经网络的层结构。参考示例和预训练的网络可以让使用MATLAB 进行深度学习变得轻松,即使不懂高级计算机视觉算法或神经网络知识也能如此。

MATLAB 让工程师能够在不同的深度学习框架下工作。由于 MATLAB 支持 ONNX,因而支持与其他支持框架(包括 TensorFlow)相互导入和导出最新模型。

 

强化学习

在通过累积奖励学习持续受益的控制系统中,强化学习堪称理想方法。在 Reinforcement Learning Toolbox™ 中,您可以使用 DQN、A2C、DDPG 和其他强化学习算法训练策略。您可以使用这些策略为复杂系统(如机器人和自主系统)实现控制器和决策算法。您可以使用深度神经网络、多项式或查找表来实现策略。

 

自然语言处理

自然语言处理模型常用于进行情感分析、预测性维护和主题建模。Text Analytics Toolbox™ 为文本数据的预处理、分析和建模提供算法和可视化。您可以用它来提取并处理不同来源(例如设备日志、新闻提要、调查、操作员报告和社交媒体)的原始文本。

使用机器学习技术(如 LSA、LDA 和词嵌入),您可以从高维文本数据集中找到聚簇并创建特征。使用 Text Analytics Toolbox 创建的特征可以与其他数据源中的特征相结合,以构建利用文本、数字和其他类型数据的机器学习模型。

系统设计

复杂 AI 驱动系统需要与其他算法集成。系统设计和仿真十分重要,因为整个系统会对 AI 模型的有效性产生影响。工程师使用 Simulink 实现快速设计迭代和闭环测试。

例如,在自动驾驶系统中,您可以使用 AI 和仿真技术设计制动、加速和转弯控制器。使用 Simulink 设计和仿真系统模型,使用 MATLAB 设计和仿真 AI 模型。同时,使用软件(如 Unreal Engine)合成理想的摄像机图像,馈送至 AI 模型。

Voyage 专注面向退休老人居住的社区提供自动驾驶出租车服务,在短短三个月内完成了 3 级自动驾驶汽车的部署工作。集成的模型加快了从构思到路面测试的整个过程。Simulink 仿真危险工况从而安全完成测试。

Simulink 还可以生成已知故障工况的故障数据。在风力发电厂中,您可以将合成故障数据添加到风力发电机测得的真实数据中。您可以优化系统模型,以获得准确的未来设备故障预测器。

部署

MATLAB 中的 AI 模型可广泛部署到嵌入式设备或板、现场边缘设备、企业系统或云中。

对于深度学习模型,您可以使用 GPU Coder™ 生成并部署 NVIDIA® CUDA® GPU。或者使用 MATLAB Coder™ 生成 C 代码,以便部署到 Intel® 和 Arm® 板上。供应商优化库可创建具有高性能推理速度的可部署模型。

您可以使用 MATLAB Production Server™ 安全部署至企业 IT 系统、数据源和运营技术并与上述各项集成。