百度paddle入门深度学习

之前看过吴恩达老师的深度学习的视频,还没开始自己动手尝试搭建一个神经网络,就看到了百度的CV打卡训练营,便和小伙伴一起报名参加了。

Day1

主要是paddle包的安装以及用python爬取疫情数据并可视化,因为有一定的python基础,感觉并不是很吃力(后面知道错了)。

Day2-手势识别

正式进入神经网络的学习,和之前的理论学习差不多,在一次过了一遍模型,损失函数,参数学习啥的,下面就是照样子画葫芦,照着老师的模板在AiStudio敲一遍代码,搭建一个全连接神经网络。第一次用的是四层神经网络
百度paddle入门深度学习_第1张图片
当时看群里大佬讨论着怎么优化网络的结构,用CNN啥的,小白啥都不懂,调参就完事了(狗头)。迭代次数直接往大了搞,学习率减一减,挑了一个0.9左右的acc。

Day3-车牌识别

开始接触卷积神经网络。
全连接神经网络主要的缺点有:

  1. 结构不灵活:只能针对单一尺寸的输入,如果要变大,只能增加隐藏层的神经元个数。
  2. 参数太多

卷积神经网络三大特性:局部连接、权值共享、下采样。
局部连接:处理图像中的特殊区域,用不同的卷积核大小提取不同的特征。
权值共享:每个神经元的权值相同。
下采样:减小图像尺寸,减少参数个数,只要不要影响判断就ok,听老师说最大池池化效果好像最好(可能听错了)。
百度paddle入门深度学习_第2张图片
这次跑的识别效果很好(CNN NB),能达到0.95的acc。

Day4-口罩分类

延续上一课的内容,介绍了一些经典的神经网络,AlexNet、VGG、GooLeNet、ResNet。总的来说是对池化层、卷积层进行调整,提高识别率。
这一课印象最深的是每一层参数计算,自己在调整网路的层数和卷积核大小啥的时候,手算是不可能的,只能把每一层输出的shape打出来一点一点改(心酸)。
这次的作业是一个二分类问题,怼了四个卷积池化层,再来三个全连接层,再来一波调参大法,达到了1.0的acc。

Day5-PaddleHub

贴一个百度paddlehub的开源链接,小白还不太会用(有api文档也用不来)。
然后就是竞赛的发布了,人流密度检测,菜鸡本质原形毕露。在基础版上,尝试了一下之前学过的VGG结构、一些数据增强的方法,但感觉效果并不是很理想,就只能混个完成了。

Day6-PaddleSlim

作业还是挺简单的(照着api文档抄),主要是理论上的收获,了解了模型压缩的一些方法。
裁剪:主要是裁剪卷积网络通道数量。
量化:float32运算变为int运算。
蒸馏:用teacher来训练student,又分为Soft label Loss和FSP Loss(FSP没怎么懂)。

总的来说,收获还是很大的,对神经网络的工作流程有了更深的了解,期待下一次更加基础的训练营,毕竟这个后期还是挺有难度的,主要在python的运用和神经网络的优化上有些吃力。

你可能感兴趣的:(神经网络)