Advertisement

Python机器学习神经网络反向传播算法

阅读量:

从理论层面分析,多层神经网络在具备充足隐藏层以及大量训练样本的前提下,具备拟合任意方程的能力。
因此,当前神经网络技术才得以广泛流行。

接下来我们将探讨神经网络结构的设计方法。

设计神经网络结构

  • 输入层
    在特征向量被送入输入层之前,需要将其标准化(normalize)至0到1的区间,此举旨在提升训练过程的效率

    • 隐藏层
      涉及网络层数的设定以及各层节点数量的确定。目前尚无明确的标准用于判断隐藏层的数量与节点数目,通常借助交叉验证 的方式加以确定

    • 输出层
      神经网络既可以应用于分类任务,也可以用于回归任务。当处理分类问题时,输出层中的单元数量应与类别总数相对应

接下来我们将探讨一种在ANN中广泛应用的算法——Backpropagation算法,以了解ANN的具体实现方式

Backpropagation算法解析

算法思想解析

•对训练集中的样本实施迭代处理过程
•将神经网络输出层所得预测结果与实际值进行比较分析
•使误差信号由输出层经隐藏层逆向传递至输入层,从而实现连接权重的优化调整

算法过程解析

  1. 权重(weights)与偏置(bias)的初始化:在-1至1的区间内随机设定初始值,每个神经元节点均对应一个偏置项

  2. 对每一个训练样本实施以下操作:
    2.1

全部评论 (0)

还没有任何评论哟~