问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

深度学习中的多层感知机:结构与激活函数详解

创作时间:
作者:
@小白创作中心

深度学习中的多层感知机:结构与激活函数详解

引用
CSDN
1.
https://blog.csdn.net/Sakura_ding/article/details/145430871

多层感知机(MLP)是深度学习中一种基础且重要的神经网络模型。它通过在输入层和输出层之间添加一个或多个隐藏层,克服了传统线性模型的局限性,能够处理更复杂的函数关系。本文将详细介绍MLP的结构、隐藏层的作用以及常用的激活函数。

为什么需要隐藏层?

在深度学习中,线性模型(如仿射变换)虽然简单,但其线性假设往往过于严格。例如,在预测贷款偿还概率时,收入与还款概率之间并非简单的线性关系;在根据体温预测死亡率时,温度与风险之间的关系更是非单调的。这些例子表明,现实世界中的许多问题都涉及复杂的非线性关系。

为了解决线性模型的局限性,我们可以在网络中加入一个或多个隐藏层。隐藏层通过引入非线性变换,使模型能够捕捉输入特征之间的复杂交互作用。这种架构通常被称为多层感知机(MLP)。

多层感知机的结构

一个多层感知机的基本结构如下图所示:

  • 输入层:接收原始数据输入。
  • 隐藏层:包含多个神经元,每个神经元都与前一层的所有神经元相连。隐藏层负责学习数据的抽象表示。
  • 输出层:产生最终的预测结果。

在数学上,一个多层感知机可以表示为:

$$
\begin{aligned}
\mathbf{H} & = \sigma(\mathbf{X} \mathbf{W}^{(1)} + \mathbf{b}^{(1)}), \
\mathbf{O} & = \mathbf{H}\mathbf{W}^{(2)} + \mathbf{b}^{(2)}.
\end{aligned}
$$

其中,$\mathbf{H}$是隐藏层的输出,$\sigma$是非线性激活函数,$\mathbf{W}^{(1)}$和$\mathbf{W}^{(2)}$分别是隐藏层和输出层的权重矩阵,$\mathbf{b}^{(1)}$和$\mathbf{b}^{(2)}$是偏置项。

激活函数

激活函数是深度学习中的关键组件,它决定了神经元是否应该被激活。常见的激活函数包括ReLU、sigmoid和tanh。

ReLU函数

ReLU(修正线性单元)是最受欢迎的激活函数之一,其定义为:

$$
\operatorname{ReLU}(x) = \max(x, 0)
$$

ReLU函数简单直观,当输入为负时输出为0,当输入为正时输出等于输入值。这种非线性变换使得模型能够学习到更复杂的特征。

Sigmoid函数

Sigmoid函数将输入映射到(0, 1)区间,常用于二分类问题的输出层。其定义为:

$$
\operatorname{sigmoid}(x) = \frac{1}{1 + \exp(-x)}
$$

Sigmoid函数在早期神经网络中广泛使用,但现在更多地被ReLU取代,因为ReLU在训练过程中表现更好。

Tanh函数

Tanh函数与Sigmoid类似,但将输入映射到(-1, 1)区间。其定义为:

$$
\operatorname{tanh}(x) = \frac{1 - \exp(-2x)}{1 + \exp(-2x)}
$$

Tanh函数在0附近接近线性,且关于原点对称,这使得它在某些场景下比Sigmoid更受欢迎。

总结

多层感知机通过引入隐藏层和非线性激活函数,能够处理复杂的非线性关系,是深度学习中的基础模型。选择合适的激活函数对于模型的性能至关重要,ReLU由于其简单性和有效性,已成为目前最常用的激活函数之一。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号