BP(back propagation)神经网络是1986年由Rumelhart和McClelland为首的科学家提出的概念,是一种按照误差逆向传播算法训练的多层前馈神经网络。 (其实就是反向传播,不要怕奇奇怪怪的专有名词,多看几个文章基本就能理解了)
这就是很专业,很不亲民的文章:https://blog.csdn.net/qq_32241189/article/details/80305566 但论文大多如此,所以你要学会看懂这类文章
这是很亲民,容易理解的文章:https://blog.csdn.net/zhaomengszu/article/details/77834845
第一步:
确定你的输入,想要的输出:也就是制定好(规则)目标,网络结构,初始权重,激活函数,学习率,是否正则化,以及是否纳入RMSprop,early—stopping,等策略制定。(详见机器学习笔记文本)
第二步:
让它前向传播就好,你会得到一个结果,别如说你给它一个人的图片,它第一次传播输出是:狗。肯定不对,是吧?这时候就要开始反向传播了
第三步:
反向传播:计算总误差,如下:
先计算w5的偏导:
图解偏导计算计算好偏导之后:更新我们的权重值:
η是学习率按此方法网络中所有的权重值都会被更新一遍,然后我们拿更新好权重后的网络再一次跑
第二步
结果还是不满意?继续:
第三步
..........................................(如此循环)
如此循环下去,直到你的分类器输出终于是:人 。为止
或者是在训练集上误差在你的容忍值之内,之后你还要测试它在开发集,测试集上的表现,如果不好,你肯恩还要改变你的输入,使它们子在同一分布......等等。此为后话。
以上即为BP算法的全部回顾。
网友评论