标签为 [BP算法] 的文章

C++从零实现深度神经网络之二——前向传播和反向传播

前言 前一篇博客Net类的设计和神经网络的初始化中,大部分还是比较简单的。因为最重要事情就是生成各种矩阵并初始化。神经网络中的重点和核心就是本文的内容——前向和反向传播两大计算过程。每层的前向传播分别包含加权求和(卷积?)的线性运算和激活函数的非线性运算。反向传播主要是用BP算法更新权值。本文也分为两部分介绍。 前向过程 如前所述,前向过程分为线性运算和非线性运算两部分。相对来说比较简单。 线型运算可以用Y = WX+b来表示,其中X是输入样本,这里即是第N层的单列矩阵,W是权值矩阵,Y是加权求和之后的结果矩阵 ......