首页 AI 创造营 帖子详情
深度学习模型训练和关键参数调优详解学习笔记
收藏
快速回复
AI 创造营 文章学习资料 1017 1
深度学习模型训练和关键参数调优详解学习笔记
收藏
快速回复
AI 创造营 文章学习资料 1017 1

针对特定场景任务从模型选择、模型训练、超参优化、效果展示这四个方面进行模型开发

 

一、模型选择

 

1.回归任务

 

人脸关键点检测

人脸关键点检测任务中,输出为 人脸关键点的数量x2,即每个人脸关键点的横坐标与纵坐标。在模型组网时,主要使用2个模块,分别是Inception模块和空间注意力模块。增加空间注意力模块是为了提高模型效果。

 

2.分类任务

 

CIFAR-10数据集也是分类任务中一个非常经典的数据集,在科研中,常常使用CIFAR数据集评估算法的性能。

 

3.场景任务

 

这里说的场景任务包括但不限于目标检测、图像分割、文本生成、语音合成、强化学习等。

 

根据场景任务,精度和速度需求选择合适的模型。

 

二、模型训练

 

1.基于高层API训练模型

2.使用PaddleX训练模型

3.模型训练通用配置基本原则

每个输入数据的维度要保持一致,且一定要和模型输入保持一致。
配置学习率衰减策略时,训练的上限轮数一定要计算正确。
BatchSize不宜过大,太大容易内存溢出,且一般为2次幂。


三、超参优化

 

1.超参优化的基本概念

 

参数

输入一个值(x),乘以权重,结果就是网络的输出值。权重可以随着网络的训练进行更新,从而找到最佳的值,这样网络就能尝试匹配输出值与目标值。

这里的权重其实就是一种参数。

超参数

模型的超参数指的是模型外部的配置变量,是不能通过训练的进行来估计其取值不同的,且不同的训练任务往往需要不同的超参数。

超参数不同,最终得到的模型也是不同的。

一般来说,超参数有:学习率,迭代次数,网络的层数,每层神经元的个数等等。

常见的超参数有以下三类:

网络结构,包括神经元之间的连接关系、层数、每层的神经元数量、激活函数的类型等 .
优化参数,包括优化方法、学习率、小批量的样本数量等 .
正则化系数
1)使用提前停止来确定训练的迭代次数

2)让学习率从高逐渐降低

我们⼀直都将学习速率设置为常量。但是,通常采用可变的学习速率更加有效。

如果学习率设置的过低,在训练的前期,训练速度会非常慢;而学习率设置地过高,在训练的后期,又会产生震荡,降低模型的精度:

3)宽泛策略

4)小批量数据(mini-batch)大小不必最优

模型结构、学习率、batch_size

 

四、效果展示

 

1.可视化输入与输出

 

2.巧用VisualDL

 

VisualDL可视化流程

创建日志文件:


   2.训练前记录每组实验的超参数名称和数值,且记录想要展示的模型指标名称

  3.训练过程中插入作图语句,记录accuracy和loss的变化趋势,同时将展示于Scalar和HyperParameters两个界面中:

  4.记录每一批次中的第一张图片:

  5.记录训练过程中每一层网络权重(weight)、偏差(bias)的变化趋势:

  6.记录分类效果--precision & recall曲线:

  7.保存模型结构:

3.权重可视化

 

五、总结与升华

本文最重要的地方在于神经网络工作的基本原理,只有搞懂了原理,才能更好地进行超参优化,得到的模型效果才会更好。
对于模型组网,最重要的是学会使用SubClass形式组网,使用套件虽然简单,但是可定制化程度较低,如果是科研需要,建议一定要学会用SubClass形式组网。
模型训练是本文中最简单的部分,只需要按照文档在操作即可,但是超参数的选择有很多讲究,超参的好坏往往会影响模型的最终结果
效果展示是一个项目的加分项,如果是科研需要,那么你也需要可视化地展示你的工作成果,这也是十分重要的。

 


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0
收藏
回复
全部评论(1)
时间顺序
花式少杰
#2 回复于2021-11

你好,电网比赛数据集可以发我一下吗?谢谢

0
回复
在@后输入用户全名并按空格结束,可艾特全站任一用户