C#中的深度学习:了解神经网络架构

在这里,我们将向不具备AI知识的读者介绍机器学习(ML)的基础知识,并描述在监督的ML模型中的训练和验证步骤。

MLAI的一个分支,它通过从一组示例中进行概括而不是接收明确的指令,试图使机器找出如何执行任务。机器学习有三种范式:监督学习,无监督学习和强化学习。在监督学习中,模型(我们将在下面讨论)通过称为训练的过程学习,在模型中提供示例输入及其正确输出。它了解数据集示例中的哪些特征映射到特定输出,然后能够在称为预测的阶段中预测新的传入数据。在无监督学习中,模型通过分析数据之间的关系来学习数据的结构,而无需任何其他过程。在强化学习中,我们建立了可以通过反复试验技术不断学习和改进的模型。

ML中的模型是什么?模型只是一个数学对象或实体,其中包含有关AI的一些理论背景,以便能够从数据集中学习。监督学习中流行的模型包括决策树,支持向量机,当然还有神经网络(NN)。

NN以堆叠类型的形状分层排列。除了输入和输出层之外,每一层中的节点都从上一层中的节点接收输入,并且还可以从下一层中的节点接收输入,同样可以将信号或输出发送到上一层和下一层中的节点。

NN中,我们总是有输入和输出层,并且我们可能有一个或多个隐藏层。最简单的NN是感知器,它仅包含单个节点的输入层和输出层。

对于NN中的每个边缘,都有一个关联的权重,对于每个节点,都有一个关联的值。输入层中每个节点的值可以例如来自与数据集中的图像相关联的像素值的输入数组。为了计算下一层中节点的值,我们计算连接到该节点的输入的加权和。这就是所谓的传递函数。一旦计算出该值,它将被传递到另一个称为激活函数的函数,该函数根据阈值确定该节点是否应触发下一层。一些激活函数是二进制的,而其他一些则可以具有多个输出。

通常在NN的末尾,我们有一个激活函数,用于对传递到输入层的数据进行分类(做出决定)。在硬币识别的情况下,它将决定图像中硬币的类别或类型。NN中的学习过程只能看作是对其权重的调整,这样我们就可以获得每个给定输入的预期输出。训练模型后,可以保存结果权重。

每当NN具有不止一个隐藏层时,就被视为深度学习(DL)。DL是一组依赖于具有多个隐藏层的NN的技术。具有多个隐藏层的原因是为了提供比单个隐藏层NN提供的结果更准确的结果。事实证明,与单个隐藏层NN相比,DL可以产生更快的给出结果并且更准确。此外,添加到NN的每一层都有助于从数据集中学习复杂的特征。

NN包含许多参数,需要对其进行调整以提高性能。为了能够检查参数调整的有效性和NN本身的性能,我们预留了原始数据集的大部分(通常大于70%)用作训练集,其余部分用作验证(测试)设置。验证集还可以帮助我们防止过度拟合,这种过度拟合是在模型很好地了解数据集中的一组非常相似的对象时发生的,从而使其过于适合此数据而不适用于与原始示例略有不同的新数据。

接下来的文章中,我们将考察硬币识别的问题卷积神经网络,我们将在Keras.NET中实现一个。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值