人工神经网络(ANN) 是一个广泛的概念,包括多种网络架构,用于模仿生物神经网络的信息处理方式。
MLP 是由多个全连接层(和激活函数层)组成的特定类型的 ANN,主要用于处理向量化的数据。
全连接层 是构建 MLP 和其他类型的 ANN 的基本单元,负责执行线性变换,并通常与非线性激活函数结合使用以增加网络的表达能力。
人工神经网络 (ANN)
- 定义:人工神经网络(ANN)是一类模仿生物神经网络结构和功能的计算模型,设计用于模拟人脑分析和处理信息的方式。
- 特点:
- 多样性:ANN 包括多种架构,如前馈神经网络(包括 MLP)、卷积神经网络(CNN)、循环神经网络(RNN)等。
- 灵活性:ANN 可以处理各种类型的数据和任务,包括图像识别、语音处理、自然语言理解等。
- 概念范围:MLP 是 ANN 的一种特殊形式,所有的 MLP 都是 ANN,但不是所有的 ANN 都是 MLP。
全连接层(Linear 层)
- 定义:全连接层(也称为 Linear 层、线性层)是神经网络中的一种层,其中每个输入节点都与下一层的每个节点全连接。
- 特点:
- 线性变换:全连接层对输入执行线性变换(加权和加偏置),可选地后接一个非线性激活函数。
- 通用性:几乎所有类型的 ANN 都可以包含全连接层,它们在网络中充当信息综合和变换的角色。
- 用途:尽管全连接层非常通用,但它们特别适用于从高层特征中学习全局模式,在 MLP、CNN 和其他 ANN 架构中作为输出层或中间层出现。
多层感知机 (MLP)
- 定义:多层感知机(MLP)是一种前馈人工神经网络,由一个输入层、一个或多个隐藏层以及一个输出层组成。
- 特点:
- 全连接:MLP 的每一层都完全连接到下一层,意味着每一层的每个神经元都与前一层的所有神经元连接。
- 非线性激活函数:MLP 中通常在每个线性层后面跟着一个非线性激活函数,如 ReLU、Sigmoid 或 Tanh,这允许 MLP 捕捉数据中的非线性关系。
- 输出层:输出层的情况比较特殊,是否使用激活函数以及使用哪种激活函数取决于特定的任务:
回归任务
:如果是回归问题,输出层通常不使用激活函数或使用线性激活函数(即不改变输入),以便网络可以输出一系列连续值。
二分类任务
:对于二元分类问题,输出层常使用 Sigmoid 激活函数,将输出压缩到 [0, 1] 范围内,表示概率。
多分类任务
:对于多类分类问题,输出层通常使用 Softmax 激活函数,将输出转换为概率分布。
特定架构和任务
:在某些特定的网络架构或任务中,可能会故意省略某些层的激活函数,以适应特定的需求或实验设计。
- 应用:广泛用于分类、回归、特征学习等任务。
当数据量和模型量比较大的时候,MLP会过拟合,而CNN等卷积神经网络可以相对更好的解决此类问题
神经网络之BP算法(图说神经网络+BP算法理论推导+例子运用+代码)