赞
踩
tensorflow笔记系列文章均参考自中国大学Mooc上北京大学软件与微电子学院曹建老师的《Tensorflow笔记2》课程。曹建老师讲的非常棒,受益良多,强烈建议tensorflow初学者学习。
神经网络复杂度多用神经网络层数和神经网络参数的个数来表示。
空间复杂度:
3*4+4
,第二层神经网络个数为4*2+2
,所以一共有26个参数。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dHLvFh2p-1596169483071)(C:\Users\xiao\AppData\Roaming\Typora\typora-user-images\image-20200730110726117.png)]
时间复杂度:
3*4
次运算,第二层经历了4*2
次运算,一共运算次数是20次。对于学习率来说,我们知道的是,学习率设置过小,模型收敛会很慢,学习率设置过大,模型可能不收敛。那么怎样设置一个合适的学习率呢,可以使用指数衰减学习率来解决这个问题。公式如下:
指数衰减学习率 = 初始学习率*学习率衰减率**(当前轮数/多少轮衰减一次)
优秀的激活函数:
激活函数输出值的范围:
**损失函数(loss)**就是预测值与已知答案的差距,神经网络的优化目标就是找到一套参数,使得损失函数的值最小。
损失函数的定义常使用均方误差(mse),在tensorflow中可以用以下方式来定义:loss_mse = tf.reduce_mean(tf.square(y_ - y))
,其中y_
是真实值,y
是预测值。
除此之外,损失函数的定义还能使用均方误差和交叉熵,自定义损失函数就不介绍了,下面介绍一下交叉熵函数。
**交叉熵函数CE(Cross Entropy)**表示两个概率分布之间的距离:
H ( y − , y ) = − ∑ y − ∗ l n y H(y_ -, y) = -\sum{y_ -*lny} H(y−,
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。