200813_tensorflow2---4、为什么需要批标准化(Batch Normalization)操作(杂)

200813_tensorflow2---4、为什么需要批标准化(Batch Normalization)操作(杂)

一、总结

一句话总结:

一、神经网络对0附近的数据更加敏感,但是随着网络层数的增加,特征数据会出现偏离0均值的情况
二、标准化可以使数据符合以0为均值,1为标准差的标准正态分布,把偏移的特征数据重新拉回到0附近

1、交叉熵损失函数CE(Cross Entropy):表征两个概率分布之间的距离?

①、定义:$$H ( y _ { - } , y ) = - sum y _ { - } * ln y$$
②、eg.二分类已知答案y_=(1,0)预测y1=(0.6,0.4)y2=(0.8,0.2),哪个更接近标准答案?
③、H1((1,0),(0.6,0.4))=-(1*In0.6+0*In0.4)=-(-0.511+0)=0.511
④、H2((1,0),(0.8,0.2))=-(1*In0.8+0*ln0.2)=-(-0.223+0)=0.223 因为H1>H2,所以y2预测更准

2、神经网络参数优化器(也就是各种梯度下降算法)(通式)?

A、mt:一阶动量,Vt:二阶动量,不同的梯度下降算法也就mt和Vt不同而已,t表示的是t时刻
B、$$w _ { t + 1 } = w _ { t } - eta _ { t } = w _ { t } - l r cdot m _ { t } / sqrt { V _ { t } }$$
C、一阶动量:与梯度相关的函数; 二阶动量:与梯度平方相关的函数

3、指数衰减学习率(学习率动态改变)?

1)、可以先用较大的学习率,快速得到较优解,然后逐步减小学习率,使模型在训练后期稳定。
2)、指数衰减学习率=初始学习率*学习率衰减率(当前轮数/多少轮衰减一次)

4、卷积神经网络为什么是卷积层然后接全连接层?

卷积计算可认为是一种有效提取图像特征的方法,经过卷积提取特征之后,把这些特征输入全连接的网络

5、卷积神经网络中池化操作的目的?

I、池化用于减少特征数据量。
II、最大值池化可提取图片纹理,均值池化可保留背景特征。

6、两个3*3的卷积核和一个5*5的卷积核的效果是一样的,如何选择?

选两个3*3的,这样无论参数,还是计算量,都要少很多,并且效果可能更好

7、卷积是什么?

卷积就是特征提取器,就是C(卷积层)B(批标准化层)A(激活层)P(池化层)D(dropout层)
model=tf.keras.models.Sequential([
    Conv2D(filters=6,kernel_size=(5,5),padding='same'),#卷积层
    BatchNormalization(),#BN层
    Activation('relu'),#激活层
    MaxPoo12D(pool_size=(2,2),strides=2,padding='same'),#池化层
    Dropout(0.2),#dropout层
])

8、为什么TensorFlow中的keras提供了层的功能,却还要提供自定义模型和自定义层的功能?

因为keras只能实现顺序模型,功能有限,一些复杂的模型实现不了

二、内容在总结中

博客对应课程的视频位置:

 
原文地址:https://www.cnblogs.com/Renyi-Fan/p/13505508.html