清华青年AI自强作业hw5:基于CNN实现CIFAR10分类任务

清华青年AI自强作业hw5:基于CNN实现CIFAR10分类任务

在这里插入图片描述

一起学AI系列博客:目录索引

简述


hw5作业为利用深度卷积神经网络实现CIFAR_10数据集十分类问题,帮助理解CNN的前向传播结构。

CIFAR-10是一个常用的彩色图片数据集,它有10个类别: ‘airplane’, ‘automobile’, ‘bird’, ‘cat’, ‘deer’, ‘dog’, ‘frog’, ‘horse’, ‘ship’, ‘truck’。

其中,训练集样本5W张图,测试集样本1W张图。

在这里插入图片描述

官网介绍:The CIFAR-10 dataset,link

作业实现


首先,根据课程作业上搭建的模型网络,得到总体算法流程。

在这里插入图片描述

简单的CNN网络模型及具体参数

算法流程

  • 输入图像
  • 进行数据增强
  • 两层卷积网络
    • 卷积计算
    • 加入偏置
    • 激活函数
    • 池化计算
  • 将结果输出展开成1维向量
  • 通过两层FC网络
  • 通过softmax得到10分类结果

注意,卷积+池化+偏置+relu,这里我们整体算1层卷积网络。

基本超参设置

  • batch-size: 256
  • epoch:100
  • lr:0.1
  • learning_decay:0.001
  • loss:交叉熵
  • 优化方法:adam
  • 模型层数:4
  • batchnorm: yes
  • 激活函数:relu
  • 末端输出:softmax

实现步骤

  • 本地调试
    • 先本地CPU跑通demo
  • 服务器正式训练
    • 在服务器跑GPU
    • 先调小的epoch、batchsize、样本输入,保证gpu环境通的
    • 再调正式的参数进行训练

遇到的问题


数据集100次epoch后loss就无法下降,预测集精度仅55%

  • 老师结果:70.18%
  • 学生结果:87.35%

现象分析

  • 是否训练次数不够高,欠拟合
    • epoch调大后,依然无济于事
  • 查看样本大小,原始的:5w训练,最新的:10w训练,是否训练集问题?
    • 确认不是,最新的数据集本质也是5w张图片,只是数据增强后,增加了5w张图
  • keras编译项loss还是二分类loss,应该改为categorical_crossentropy。
    • 确认有影响,导致模型loss无法正常收敛
  • 是否学习率过大导致loss无法进一步收敛?
    • 确认有影响,学习率衰减设置过大0.8,导致lr很快为0,改为0.001,再后期可以精细化调节loss

结论

  • 编译项loss类型选择错误
  • 学习率设置过大

在分析过程中,同期实现了基于keras官网介绍的模型训练demo,改进后测试精度达到:76%。主要做了以下修改:

  • 网络卷积层数和feature个数不同
  • 去除图片增强模块
  • 基于colab环境运行,适配其keras版本

最终,基于课程上的网络模型训练,经过100个epoch得到的结果是:

  • 训练集:99.97%
  • 测试集:68%

说明有些过拟合,后期还需要增大正则化、减小epoch提前终止训练等方式来进行优化。

相关链接


  1. 文科生都能零基础学AI?清华这门免费课程让我信了,link
  2. 清华青年AI自强作业hw2:线性回归预测,link
  3. 清华青年AI自强作业hw3_1:用线性回归模型拟合MNIST手写数字分类,link
  4. 清华青年AI自强作业hw3_2:前向传播和反向传播实战,link
  5. 清华青年AI自强作业hw3_3:用NN网络拟合MNIST手写数字分类,link
  6. 清华青年AI自强作业hw4:基于DNN实现狗狗二分类与梯度消失实验,link
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值