三层神经网络的推理过程实现(前向处理)
# 1.三层神经网络推理过程 示意图 上图从左到右依次是输入层、隐藏层1、隐藏层2和输出层。由于有权重的只有三层,故称之为三层神经网络。 x1,x2表示整个神经网络的输入信号,y1,y2表示整个神经网络的输出信号。内含1的神经元以及bij标识是为了表示偏置,bij表示第i层偏置的第j个元素。 比较大的神经元中aij表示它的输入信号,zij表示它的输出信号。图中的直线均表示从左到右的箭头,各层权重的具体数据没有在箭头上表示出来,但它们是存在的。aij就是指向它所有箭头所表示的加权和,将aij经过激活函数转化就得到zij。 将输入信号x1,x2通过如图三层神经网络的推理处理,就可以得到该神经网络的推理结果y1,y2。 # 2.三层神经网络推理过程的实现以及解析 import numpy as np from sigmoid import sigmoid # 从sigmoid.py文件中导入sigmoid函数 from identity import identity_function # 从identity.py文件中导入identity_function函数 #三层神经网络的实现 #初始化函数 def init_network(): network={} #定义一个字典变量network network['W1']=np.array([[0.1,0.3,0.5],[0.2,0.4,0