深度学习(一):python实现一个三层神经网络的搭建

python搭建如下图一个三层神经网络,简单的单向传播。深度学习(一):python实现一个三层神经网络的搭建_第1张图片

激活函数的选取,要满足的条件:(1)单调性。(2)可微性。(3)非线性。 

附代码:

##搭建一个三层神经网络

#选用sigmoid函数作为该神经网络的阈值函数
def sigmoid(x): #S型生长曲线,可作为激活函数
    return 1/(1+np.exp(-x))

#权重
w1 = np.array([[0.1,0.3,0.5],[0.2,0.4,0.6]])
w2 = np.array([[0.1,0.4],[0.2,0.5],[0.3,0.6]])
w3 = np.array([[0.1,0.3],[0.2,0.4]])

#偏置项
b1 = np.array([0.1,0.2,0.3])
b2 = np.array([0.1,0.2])
b3 = np.array([0.1,0.2])

#输入值
x = np.array([1.0,0.5])

#矩阵乘法numpy.dot(A,B)
a1 = np.dot(x,w1) + b1
z1 = sigmoid(a1)# 第一层神经元输出

a2 = np.dot(z1,w2) + b2
z2 = sigmoid(a2)# 第二层神经元输出

a3 = np.dot(z2,w3) + b3
z3 = sigmoid(a3)# 第三层神经元输出

print(z3)

你可能感兴趣的:(深度学习,pycharm,python,神经网络,深度学习)