【笔记】Adam各个参数分析:params, lr=1e

您所在的位置:网站首页 alienware17r1参数 【笔记】Adam各个参数分析:params, lr=1e

【笔记】Adam各个参数分析:params, lr=1e

2023-07-25 11:53| 来源: 网络整理| 查看: 265

 

 

 

 

 

 

 

 

 

5 数据集和模型

Source code: https://github.com/YiddishKop/ml_src_adam_compare.git

5.1 MNIST

5.1.1 Dataset

数据集样本类型训练集验证集MNIST灰度图(28*28)600006000

5.1.2 NN 架构

层形状input_shape(28,28,1)cnn_filter(3,3,30)cnn_filter(3,3,60)max_pooling(2,2)flattenfcn_relu600keep_prob0.5fcn_softmax10

5.1.3 model parameter

参数值learning_rate0.001 (no decay)loss fncategorical cross entropyepoch30 5.2 Cifar-10

5.2.1 Dataset

数据集样本类型训练集验证集Cifar-10RGB彩图(32*32*3)5000010000

5.2.2 NN 架构

层形状input_shape(32,32,3)cnn_filter(3,3,32)cnn_filter(3,3,32)max_pooling(2,2)keep_prob0.25cnn_filter(3,3,64)cnn_filter(3,3,64)max_pooling(2,2)keep_prob0.25flattenfcn_relu512fcn_softmax10

5.2.3 model parameter

参数值learning_rate1e-4 (decay)loss fnmseepoch200batch_size256 5.3 回归

5.3.1 Dataset

数据集样本类型训练集验证集house sales in king county, USAcsv180003600

5.3.2 型号架构

层形状input_shape71fcn_relu1000fcn_relu1000fcn_relu1000fcn_relu1keep_prob1

5.3.3 model parameter

参数值learning_rate1e-4 (no decay)loss fnmseepoch40batch_size100 5.4 DCGAN

5.4.1 Dataset

数据集样本类型训练集验证集Cartoon image Cifar-10RGB彩图180003600

5.4.2 Model架构

Generator of conditional-DCGAN

输入feature (256+100维)→ 通过fc [input = 356, output = (64 × 4 × 4 × 8)]→ reshape成[4, 4, 128]→ batch normalization(所有batch normalization的epsilon = 1e-5, momentum = 0.9)→ relu activation→ 通过4层deconv layer (kernel size = 5 × 5, stride = 2, filters依序为[256, 128, 64, 3])→ 每通过一层deconv都经过batch normalization和relu再传到下一层

Discriminator of conditional-DCGAN

两个feature:image 维度= (64, 64, 3),分成三类:real(符合文字叙述的图)、wrong(不符合文字叙述的图)、fake(G 对应文字产生的图)。text 维度= 256。图片经过4层convolution layer(kernel size = 5 × 5, stride = 2, filters各自为[64, 128,256, 512] )→每一层都经过leaky relu (max(x, 0.2 x))→后三层的convolution layer通过leaky relu前都会经过batch normalization (这部分的参数设定与generator中相同)

5.4.3 model parameter

参数值learning_rate2e-4(decay)loss fnmseepoch200batch_size64 5.5 Wasserstein GAN

在WGAN 原始论文中提到:因为WGAN 的训练过程较不稳定,不太适合使用就有动量的优化器,可能会导致loss 增加或是产生的sample 变差,因此可用 RMSProp 取代Adam,而此次我也会针对这一点进行验证。

5.5.1 Dataset

同 DCGAN

5.5.2 Model架构

更改DCGAN的以下部分:

去掉discriminator 输出的sigmoid。去掉 loss function 中的 log。在discriminator 加上weight-clipping,设定为0.01。

5.5.3 model parameter

参数值learning_rate1e-4(decay)loss fnmseepoch15batch_size64weight-cliping0.01 6 贡献和创新性 7 结论 MNIST如同Adam 论文中的叙述,Adam 默认的参数是这个资料集上最好的优化器设定,然而,当 β1、β2 调小一点时,结果不会差很多。Cifar-10Adam 中的 β2 = 0.9。regreAdam 中的 β1、β2 调小一点(如0.5 和0.9),可使error 下降一些。DCGAN使用Adam 时,要把β1 设定的小一点,才能较快随着discriminator 改变的方向转向。WGAN使用Adam,动量会造成收敛方向无法即时随着discriminator 改变的方向即时,因此结果会变差,并且变差的情况比DCGAN 严重许多。 8 可以改进的地方

可尝试使用更好的降维方法。我在参数对loss 的作图中,使用的降维方法为PCA,PCA 的降维过程中会损失一些空间分布的特性。所以我认为可以试试看其他降维的方法,例如: t-SNE,t-SNE可以保留一些空间的特性,也许可从图中得到更多资讯。从我做出的实验结果去找最佳Adam 参数的规则,设定一套流程来判断Adam 最佳的参数。原本我推测Adam 最佳参数与task 的性质(ex: Image classification)有关,然而Google Net 最佳的参数如果套用到Cifar-10 的model,performance 会变得非常差,所以,从我的实验结果来看,参数的选择应该和task 的性质没有绝对的相关性。后来我想到model 参数量的多寡会影响到整个 loss function 的分布,因为直觉上简单的model 应该鞍点或是局部最小值的数量应该会远小于复杂的model 中鞍点跟局部最小值的数量,所以未来可以尝试看看model 参数量与Adam 最佳参数的关系。除了不同参数在鞍点的表现,也可以尝试看看不同参数在local minimum 的表现。

 

 

 

 

 

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3