文章目录
- 一、基本组成单元:神经元
- 二、神经网络层
- 三、偏置与权重
- 四、激活函数
- 1.激活函数的作用
- 2.常见的激活函数
- 1).Sigmoid
- 2).Tanh函数
- 3).ReLU函数
- 五、优点与缺点
- 六、总结
神经网络(Neural Network, NN)是一种模拟人类大脑工作方式的计算模型,它是深度学习和机器学习领域的基础。神经网络的构造是一个复杂但系统的过程,涉及多个关键组件和步骤。
一、基本组成单元:神经元
神经网络的基本组成单元是神经元,它模拟了生物神经元的结构和功能。每个神经元接收来自其他神经元的输入信号,通过加权求和、加上偏置项,并应用激活函数,最终产生输出信号。
二、神经网络层
神经网络由多个层组成,包括输入层、隐藏层和输出层。
- 输入层:接收原始数据作为输入,不进行任何计算,只是将数据传递给隐藏层。
- 隐藏层:位于输入层和输出层之间,可以有一层或多层。隐藏层的神经元对输入数据进行加权求和、加上偏置项,并通过激活函数产生输出,这些输出将作为下一层的输入。隐藏层是神经网络进行复杂计算和信息处理的关键部分。
- 输出层:神经网络的最后一层,负责产生最终的输出结果。输出层的神经元数量通常与任务的具体需求相关,例如,在分类任务中,输出层的神经元数量可能与类别数相同。
三、偏置与权重
- 偏置:加到加权和上的一个常数,可以看作是每个神经元的一个额外输入。偏置允许神经元即使在所有输入都为零时也有非零的输出。
- 权重:连接不同神经元的参数,代表一个神经元输出对另一个神经元输出的影响力。在训练过程中,神经网络通过调整权重来学习数据中的模式。
- 权重和偏置的初始化
在训练神经网络之前,通常需要初始化权重和偏置。初始化的方法有很多种,比如将权重和偏置都初始化为0、小的随机数、或者根据某种特定的分布(如正态分布或均匀分布)来初始化。不同的初始化方法可能会对网络的训练过程和最终性能产生不同的影响。
四、激活函数
激活函数是神经网络中的非线性元素,它使得神经网络能够解决非线性问题。
1.激活函数的作用
- 引入非线性:激活函数为神经网络引入了非线性因素,使得网络能够拟合各种复杂的函数或映射,从而解决线性模型表达能力不足的问题。
- 归一化:激活函数通常会将神经元的输出限制在一个特定的范围内,如Sigmoid函数的输出范围在(0,
1)之间,这有助于限制数据的扩张,防止数据过大导致的溢出风险。 - 增强特征:激活函数能够增强输入的有效特征,去除或降低噪音特征,从而提高模型的泛化能力。
2.常见的激活函数
1).Sigmoid
公式:
s i g ( t ) = 1 1 + e − t sig(t)= \frac{1}{1+e^{-t}} sig(t)=1+e−t1
特点:Sigmoid函数将输入值映射到(0, 1)之间,输出值可以解释为概率或激活程度。它适合用于二分类问题的输出层。然而,Sigmoid函数存在梯度消失和计算量大的问题,且在深层网络中容易导致梯度消失,影响训练效果。
2).Tanh函数
公式:
t a n h : a = e z − e − z e z + e − z tanh : a= \frac{e^z-e^{-z}}{e^z+e^{-z}} tanh:a=ez+e−zez−e−z
特点:Tanh函数将输入值映射到(-1, 1)之间,且输出以0为中心,这有助于加速收敛。与Sigmoid函数相比,Tanh函数在收敛速度和梯度传播方面表现更好。但是,它同样存在梯度消失和计算量大的问题。
3).ReLU函数
公式:
f ( x ) = m a x ( 0 , x ) f(x)=max(0,x) f(x)=max(0,x)
特点:ReLU函数在正输入时保持输入不变,负输入时输出为0。这种特性使得ReLU函数在计算速度上远快于Sigmoid和Tanh函数,且能够有效缓解梯度消失问题。
五、优点与缺点
- 优点:
- 自动特征提取:无需人工设计特征,能够自动从数据中提取关键特征。
- 强大的数据拟合能力:能够捕捉数据中的非线性关系,提高模型预测的准确性
- 广泛的应用场景:适用于图像识别、语音识别、自然语言处理等多个领域。
- 缺点:
六、总结
本文主要介绍了神经网络部分组成,例如基本单元、网络层、偏置、权重与激活函数等组成部分。其中简述了网络层的三部分,即输入层、输出层与隐藏层,然后讲到了神经网络中的可训练参数,即偏置与权重,它们共同决定了网络的行为和性能。其次我们介绍了神经网络常用的几种激活函数,通过图像与公式为大家展示了几种激活函数的异同。最后我们为大家讲述了神经网络的优缺点,以便让大家合理的运用神经网络。