笔记 | 百度飞浆AI达人创造营:深度学习模型训练和关键参数调优详解

笔记 | 百度飞浆AI达人创造营:深度学习模型训练和关键参数调优详解

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

一、模型选择

从任务类型出发,选择最合适的模型。

1.回归任务

从使用Numpy推导,到使用深度学习框架,一步步走进最简单的回归任务:当人工智能邂逅蓝桥杯算法题,会擦出怎样的火花/p>

人脸关键点检测

完整代码详见基于空间注意力SAM的GoogLeNet实现人脸关键点检测并自动添加表情贴纸

笔记 | 百度飞浆AI达人创造营:深度学习模型训练和关键参数调优详解
  • 1-17:人脸的下轮廓
  • 18-27:眉毛
  • 28-36: 鼻子
  • 37-48:眼睛
  • 49-68:嘴巴

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

  • Inception模块

GoogLeNet是由Inception模块进行组成的,GoogLeNet采用了模块化的结构,因此修改网络结构时非常简单方便。

笔记 | 百度飞浆AI达人创造营:深度学习模型训练和关键参数调优详解
  • 空间注意力模块

空间注意力聚焦在“哪里”是最具信息量的部分。计算空间注意力的方法是沿着通道轴应用平均池化和最大池操作,然后将它们连接起来生成一个有效的特征描述符。

笔记 | 百度飞浆AI达人创造营:深度学习模型训练和关键参数调优详解

2.分类任务

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

图像分类

基于CIFAR-10数据集实现图像10分类。项目完整代码详见:从论文到代码深入解析带有门控单元的gMLP算法

gMLP中,最核心的部分就是空间选通单元(Spatial Gating Unit,SGU),它的结构如下图所示:

笔记 | 百度飞浆AI达人创造营:深度学习模型训练和关键参数调优详解

查看网络结构:

gMLP是由一个个gMLP block构成的,上面我们已经把gMLP block中最重要的空间选通单元(Spatial Gating Unit,SGU)实现了,接下来我们只需要拿来用即可,代码如下:

import paddleimport paddle.nn as nnclass gMLPBlock(nn.Layer):    def __init__(self, dim, dim_ff, seq_len, act = None):super(gMLPBlock, self).__init__()self.proj_in = nn.Sequential(    nn.Linear(dim, dim_ff),    nn.GELU())self.sgu = SpatialGatingUnit(dim_ff, seq_len, act)self.proj_out = nn.Linear(dim_ff // 2, dim)    def forward(self, x):x = self.proj_in来源:KHB1698
                                                        

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年6月28日
下一篇 2021年6月28日

相关推荐