什么是神经网络?

你需要知道三件事

神经网络(也称人工神经网络)是一种自适应系统,它通过类似人脑的分层结构,使用相互连接的节点或神经元进行学习。神经网络可以从数据中学习,因此可以训练它识别模式,对数据进行分类,并预测未来事件。

神经网络将输入分解成抽象层。例如,它可以像人类大脑一样,通过许多例子训练来识别语言或图像中的模式。它的行为是由其各个元素的连接方式以及这些连接的强度或权重来定义的。在训练过程中,这些权重会根据指定的学习规则自动调整,直到人工神经网络正确地执行所需的任务。

为什么神经网络很重要?

神经网络尤其适合执行模式识别识别和分类语言、视觉和控制系统中的物体或信号它们还可以用于进行时间序列预测和建模。

下面是一些使用人工神经网络的例子:

深度学习:浅网和深网

深度学习是一个使用人工神经网络非常频繁的领域。一个常见的应用是卷积神经网络,用来对图像、视频、文本或声音进行分类。

由两到三层相连的神经元层组成的神经网络被称为神经网络神经网络深度学习网络可以有许多层,甚至数百层。两者都是直接从输入数据中学习的机器学习技术。

深度学习特别适合复杂的识别应用,如人脸识别、文本翻译和语音识别。这也是一项用于高级驾驶员辅助系统和车道分类、交通标志识别等任务的关键技术。

神经网络是如何工作的?

神经网络结合了几个处理层,使用简单的元素并行操作,并受到生物神经系统的启发。它由一个输入层、一个或多个隐藏层和一个输出层组成。每一层都有几个节点或神经元,每一层使用前一层的输出作为其输入,因此神经元将不同层连接起来。每个神经元通常都有在学习过程中调整的权重,随着权重的减少或增加,它会改变该神经元信号的强度。

典型的神经网络结构。

使用神经网络的技术

设计人工神经网络应用的常用机器学习技术包括监督和非监督学习、分类、回归、模式识别和聚类。

监督式学习

监督神经网络经过训练,可以根据样本输入产生所需的输出,使它们特别适合于建模和控制动态系统,对噪声数据进行分类,以及预测未来事件。深度学习工具箱™包括四种类型的监督网络:前馈、径向基、动态和学习向量量化。

分类

分类是一种有监督的机器学习,其中算法“学习”从标记数据的例子中对新的观察结果进行分类。

回归

回归模型描述一个响应(输出)变量和一个或多个预测(输入)变量之间的关系。

模式识别

模式识别是人工神经网络在计算机视觉、雷达处理、语音识别和文本分类等方面应用的重要组成部分。它的工作原理是根据关键特征将输入数据分类为对象或类,使用监督或非监督分类。

例如,在计算机视觉中,监督模式识别技术被用于光学字符识别(OCR)、人脸检测、人脸识别、目标检测和目标分类。在图像处理和计算机视觉中,无监督模式识别技术被用于目标检测和图像分割。

无监督学习

无监督神经网络通过让神经网络不断调整自己以适应新的输入来训练。它们被用来从没有标记响应的输入数据组成的数据集中得出推论。您可以使用它们来发现数据中的自然分布、类别和类别关系。

聚类

聚类是一种无监督学习方法,利用人工神经网络进行探索性数据分析,发现数据中隐藏的模式或分组。这个过程涉及到根据相似性对数据进行分组。申请聚类分析包括基因序列分析、市场研究和对象识别。

用MATLAB开发浅层神经网络

有了管理大型数据集的工具和功能,MATLAB®为机器学习、人工神经网络、深度学习、计算机视觉和自动驾驶提供专门的工具箱。

只需几行代码,MATLAB就可以让您开发神经网络,而无需成为专家。快速入门,创建并可视化模型,并将模型部署到服务器和嵌入式设备。

使用MATLAB,您可以将结果集成到现有的应用程序中。MATLAB可以在企业系统、集群、云和嵌入式设备上自动部署人工神经网络模型。

典型的神经网络设计流程

每个神经网络应用程序都是独特的,但开发网络通常遵循以下步骤:

  1. 获取并准备您的数据
  2. 创建人工神经网络
  3. 配置网络的输入输出
  4. 调整网络参数(权重和偏差)以优化性能
  5. 培训网络
  6. 验证网络的结果
  7. 将网络集成到生产系统中

浅层网络的分类与聚类

MATLAB和深度学习工具箱提供命令行函数和应用程序,用于创建、训练和模拟浅神经网络。这些应用程序使开发用于分类、回归(包括时间序列回归)和聚类等任务的神经网络变得很容易。在这些工具中创建网络之后,您可以自动生成MATLAB代码来捕获您的工作并实现任务自动化。

预处理、后处理和改进你的网络

对网络输入和目标进行预处理,提高了浅神经网络训练的效率。后处理可以详细分析网络性能。MATLAB和万博1manbetx®提供工具帮助您:

  • 利用主成分分析降低输入向量的维数
  • 在网络响应与相应目标之间进行回归分析
  • 调整输入和目标,使其在[-1,1]范围内
  • 对训练数据集的均值和标准差进行归一化
  • 在创建网络时使用自动数据预处理和数据划分

提高网络的泛化能力有助于防止过拟合这一人工神经网络设计中的常见问题。当网络已经记住了训练集,但还没有学会对新的输入进行泛化时,就会发生过拟合。过拟合在训练集上产生的误差相对较小,但在向网络提供新数据时产生的误差就大得多。了解更多关于如何做到这一点使用交叉验证以避免过拟合

改进泛化万博 尤文图斯的两种解决方案包括:

  • 正则化修改网络的性能函数(训练过程最小化的误差度量)。通过包含权重和偏差的大小,正则化产生了一个网络,它能很好地处理训练数据,并且在面对新数据时表现出更流畅的行为。
  • 早期停止使用两个不同的数据集:用于更新权重和偏差的训练集,以及当网络开始过拟合数据时停止训练的验证集

用于分析网络性能的后处理图,包括连续训练阶段的均方误差验证性能(左上)、误差直方图(右上)和训练、验证和测试阶段的混淆矩阵(右下)。

使用神经网络的应用

隆德大学开发了一种预测模型,并模拟了数千种风险组合,以提高患者的长期生存率。
改进癌症诊断使用神经网络从质谱数据的蛋白质谱检测癌症。
训练人工神经网络对数字图像进行分类。