神经网络的基础知识

神经网络是机器学习中的一种模型,是一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。这种网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。其基本结构为:

 其中,每个节点代表一个神经元。神经网络至少包括三层:输入层、隐藏层和输出层,每一层由不同数量的神经元组成。

1 神经元

神经元是神经网络中最基本的结构,其思想起源于生物学意义上的神经元。神经元模型是一个包含输入,输出与计算功能的模型。输入可以类比为神经元的树突,而输出可以类比为神经元的轴突,计算则可以类比为细胞核。神经元的输入向前传递获得输出的过程称为前馈结构如图所示:

 我们用a表示输入,w表示权重,y表示输出,g表示非线性函数sgn(现在通常使用的是Relu函数),则这个结构可以表示为:

y=g(a1*w1+a2*w2+a3*w3)

其真实意义是,我们已知一个样本的三个属性a1,a2,a3(特征),需要通过这三个属性预测一个未知属性y(标签),预测的过程就是这个神经元的公式。

实际应用中,我们一般将求和函数和非线性函数合并为一个整体,整个神经元模型在神经网络中表示为:

2 误差 

我们使用误差值,也就是节点生成的答案与所知正确答案之间的差值,指导我们对权重w和偏差b进行调整。当神经网络进行训练时,通常会采用优化算法来最小化损失函数,以使神经网络的输出结果与真实结果之间的差异尽可能小。当神经网络进行训练时,其实就是通过不断地调整神经元之间的连接权重,以最大化训练集中样本的正确率。这个过程中常用的优化算法是反向传播算法。

反向传播的基本原理:先将神经网络给定的输入样本通过前向传播计算得到网络的输出结果,然后计算输出结果与真实结果之间的误差,并将误差反向传播到网络中去,计算每个神经元的误差贡献,并按照梯度下降法的原理更新网络中每个连接的权值和每个神经元的偏置值,从而不断迭代,找到能够最小化误差的神经网络模型。

具体来说,有以下步骤:①随即给定w和b,并给定损失函数L,利用前向传播获取神经网络输出结果;②用L计算网络输出值与真实值的误差,并反向传递回网络,计算每个神经元的误差梯度;③根据梯度下降原理,对w和b进行更新,使得输出与真实值逼近;④重复②和③,直到误差达到阈值或训练次数达到某个阈值。

常见的损失函数包括均方误差(Mean Squared Error, MSE)、交叉熵(Cross Entropy)等。MSE是回归问题中的常用损失函数,而交叉熵则是分类问题中的常用损失函数。以均方误差为例:

通过不断地迭代,神经网络的损失函数会越来越小,表示网络的性能逐渐提高。当损失函数降至最小值时,神经网络的训练就完成了。

3 神经网络预测的运作流程

给定输入和输出神经元数量→找到算法,能够从输入得到输出→根据一些已知正确答案的数据集,来训练模型中的w和b→新数据输入得到结果

 学习率是神经网络训练中的一个超参数,用来控制神经网络权重和偏置的更新速度。学习率越大,网络的权重和偏置就会更新得越快,收敛速度会加快,但是可能会导致网络在极小值附近来回震荡或产生不稳定的情况;学习率过小,网络更新的速度就会过慢,可能需要花费更多的时间甚至无法达到最优点。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
卷积神经网络(Convolutional Neural Network,CNN)是一种深度学习模型,主要用于图像识别和计算机视觉任务。它的基本概念包括以下几个方面: 1. 卷积层(Convolutional Layer):卷积层是CNN的核心组成部分,通过使用一系列可学习的滤波器(也称为卷积核)对输入图像进行卷积操作,提取图像的特征。每个滤波器会在输入图像上滑动,并计算出对应位置的卷积结果,生成一个特征图。 2. 池化层(Pooling Layer):池化层用于减小特征图的空间尺寸,同时保留重要的特征信息。常见的池化操作包括最大池化(Max Pooling)和平均池化(Average Pooling),它们分别选取局部区域中的最大值或平均值作为池化结果。 3. 激活函数(Activation Function):激活函数引入非线性变换,增加模型的表达能力。在卷积神经网络中,常用的激活函数包括ReLU(Rectified Linear Unit)、Sigmoid和Tanh等。激活函数通常被应用在卷积层之后。 4. 全连接层(Fully Connected Layer):全连接层将前一层的所有神经元与当前层的所有神经元相连接,每个连接都有一个权重。全连接层通常用于将卷积层和池化层提取的特征映射转化为最终的分类结果。 5. Dropout:Dropout是一种正则化技术,用于减少模型的过拟合。在训练过程中,随机将一部分神经元的输出置为0,可以有效地防止网络对某些特定特征过度依赖。 6. 卷积神经网络的训练:CNN的训练通常使用反向传播算法(Backpropagation)进行参数更新。通过将输入数据和对应的标签进行前向传播和反向传播,不断调整网络参数,使得网络能够逐渐学习到更好的特征表示。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值