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 激活函数
对于非线性问题,提高网络拟合性能。

  1. sigmoid函数, f ( z ) = 1 1 + e − z f(z) = \\frac11+e^-z f(z)=1+ez1, f ( z ) ′ = f ( z ) [ 1 − f ( z ) ] f(z)^'=f(z)[1-f(z)] f(z)=f(z)[1f(z)],当z=0时,梯度消失,反向传播随之消失,解决方法是把输入z控制在[-a,a]范围内。
  2. tanh函数, f ( z ) = e z − e − z e z + e − z f(z) = \\frace^z-e^-ze^z+e^-z f(z)=ez+ezezez f ( z ) ′ = 1 − f ( z ) 2 f(z)^'=1-f(z)^2 f(z)=1f(z)2,梯度下降更快。
  3. ReLU函数
    2 单层神经网络
    输入层,隐含层,输出层

以上是关于python神经网络入门---读书笔记简单的神经网络的主要内容,如果未能解决你的问题,请参考以下文章

『TensorFlow』读书笔记_简单卷积神经网络

《Python深度学习》第五章-1(CNN简介)读书笔记

《Python深度学习》第五章-4(可视化中间激活层)读书笔记

《Python深度学习》第五章-5(可视化过滤器)读书笔记

《Python深度学习》第三章第一部分读书笔记

《Python深度学习》第二章读书笔记