python神经网络入门---读书笔记简单的神经网络
Posted 35岁北京一套房
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python神经网络入门---读书笔记简单的神经网络相关的知识,希望对你有一定的参考价值。
Neural Networks
神经网络:一种能够模仿人类的认知过程的数学模型,例如 AlphaGo、识别玩具,深度学习训练玩游戏,过滤垃圾短信。
#矩阵的点乘
A = [ ]
for i in range(3):
A.append([ ])
for j in range(3):
A[i].append(1)
# print(A)
B = [ ]
for i in range(3):
B.append([ ])
for j in range(3):
B[i].append(2)
# print(B)
C = [ ]
for i in range(3):
C.append([ ])
for j in range(3):
C[i].append(A[i][j]*B[i][j])
上面的例子,首先看A,从头往下看,当i=0时,j=0,1,2 是第一行,都填充1;当i=1时,j=0,1,2 是第二行,都填充1;当i=2时,j=0,1,2 是第三行,都填充1;最后得到矩阵[[1,1,1],[1,1,1],[1,1,1]]
1 感知器模型
运算规则
y
=
w
1
x
1
+
w
2
x
2
+
w
3
x
3
y=w_1x_1+w_2x_2+w_3x_3
y=w1x1+w2x2+w3x3, 偏置为b ,计算误差包括均方误差,交叉熵误差,损失函数越小,网络解决问题能力越强,寻找损失函数最小值。
1.1 误差反向传播
误差导数 e ′ = d e d w e'=\\fracdedw e′=dwde,w为权值,e对y求导,y对w求导,不断改变连接权值,优化出解决问题,使输出和期望输出距离越来越小。
1.2 激活函数
对于非线性问题,提高网络拟合性能。
- sigmoid函数, f ( z ) = 1 1 + e − z f(z) = \\frac11+e^-z f(z)=1+e−z1, f ( z ) ′ = f ( z ) [ 1 − f ( z ) ] f(z)^'=f(z)[1-f(z)] f(z)′=f(z)[1−f(z)],当z=0时,梯度消失,反向传播随之消失,解决方法是把输入z控制在[-a,a]范围内。
- tanh函数, f ( z ) = e z − e − z e z + e − z f(z) = \\frace^z-e^-ze^z+e^-z f(z)=ez+e−zez−e−z, f ( z ) ′ = 1 − f ( z ) 2 f(z)^'=1-f(z)^2 f(z)′=1−f(z)2,梯度下降更快。
- ReLU函数
2 单层神经网络
输入层,隐含层,输出层
以上是关于python神经网络入门---读书笔记简单的神经网络的主要内容,如果未能解决你的问题,请参考以下文章