1初始化
创建网络规模
创建网络规模列表
表示m+1层网络,第i层节点数为,输入为
,输入为
创建权重列表(初始为随机数)
weight[m]=
创建阈值列表(初始为随机数)
threshold[m]=
创建更新权重列表(初始为0)
delta_weight[m]=
创建更新阈值列表(初始为0)
delta_threshold[m]=
构造Sigmod函数
def sigmoid(x):
return 1 / (1 + np.exp(-x))
Sigmod计算结果列表
输入为,输入为
加权和计算结果列表
2正向计算
for k in range(1,m+1):#循环m次
----#
----#
3反向计算
初始化:
E_H[m]=
H_I[m]=
for k in range(m,0,-1):
----#1.
----#2.
----#3.
----#4.
weight[m]=weight[m]+delta_weight[m]
threshold[m]=threshold[m]+delta_threshold[m]
python实现的BP神经网络
https://github.com/dai-zb/BPNN_python.git