经典机器学习系列之「神经网络详解」
作者头像
  • 2020-02-10 20:39:39 8

神经网络概述

神经网络是一种模仿生物神经系统对现实世界物体作出反应的广泛并行互联网络。尽管不同领域和不同人的称呼有所不同,但常见的名称包括:神经网络(Neural Network)、人工神经网络(Artificial Neural Network)、人工神经系统(Artificial Neural Systems)、神经计算机(Neural Computer)和自适应系统(Adaptive Systems)等。

M-P神经元模型

在神经网络中,最基本的处理单元是M-P神经元模型。这一模型接收其他神经元传递的输入信号,并通过带权重的连接传递信号。神经元接收到的总输入值将与阈值进行比较,如果超过阈值,则通过激活函数产生输出。理想情况下,激活函数是阶跃函数,但由于其不可导性,通常采用Sigmoid函数。当使用Sigmoid函数作为激活函数时,M-P模型实际上变成逻辑斯蒂回归模型。

单层感知机

单层感知机是一种只有一个M-P神经元层的神经网络模型。它包含输入层和输出层,输入层接收外界输入信号并传递给输出层。输出层中的M-P神经元对信号进行激活处理。对于线性可分问题,单层感知机最终会收敛;但对于线性不可分问题,例如异或问题,单层感知机可能会陷入振荡状态。

为了处理非线性可分问题,需要引入隐藏层。隐藏层和输入层中的神经元都使用激活函数处理信号。

多层前馈神经网络

多层前馈神经网络是指包含一个或多个隐藏层的神经网络。每个神经元与下一层的所有神经元全连接,但不存在同层连接或跨层连接。这种网络结构通常称为“多层前馈神经网络”。网络通过调整神经元之间的连接权和阈值,根据训练样本对未知样本进行泛化。

BP算法求解单隐层前馈网络

BP算法用于求解多层前馈神经网络的参数。在单隐层前馈网络中,我们首先计算输入层到隐藏层的权重和隐藏层到输出层的权重,以及隐藏层和输出层的阈值。通过计算均方误差,我们可以确定神经网络的数学模型。BP算法基于梯度下降策略,调整参数以最小化误差。具体步骤包括前向传播和误差反向传播,最终通过迭代更新参数。

BP算法存在的问题

BP算法在实际应用中会遇到一些问题。例如,网络结构的选择、初始化参数的设置、学习率的调整以及权重和阈值的更新等。这些问题可以通过适当的调整和优化来解决,如采用提前终止训练和正则化方法来避免过拟合。

深层神经网络

随着计算能力的提升和训练数据的增加,深层神经网络得到了广泛应用。典型的深层神经网络包含两个以上的隐藏层。增加隐藏层的数量可以使模型更加复杂,但也会带来梯度消失的问题。为此,常用的方法包括预训练加微调和权共享。预训练阶段采用无监督逐层训练,之后进行微调;权共享则是让一组神经元共享相同的权重,如卷积神经网络(CNN)就是这样。

深度学习的理解

深度学习通过多层处理,逐步将原始的低层特征转化为高层次特征,从而简化复杂任务的学习。与传统的特征工程相比,深度学习能够自动提取有效的特征,从而推动机器学习向全自动数据分析迈进。

    本文来源:图灵汇
责任编辑: :
声明:本文系图灵汇原创稿件,版权属图灵汇所有,未经授权不得转载,已经协议授权的媒体下载使用时须注明"稿件来源:图灵汇",违者将依法追究责任。
    分享
神经网络详解机器经典系列学习
    下一篇