【任务一】视频学习心得及问题总结

根据下面三个视频的学习内容,写一个总结,最后列出没有学明白的问题。

【任务二】代码练习

在谷歌 Colab 上完成代码练习,关键步骤截图,并附一些自己的想法和解读。

【任务三】展望学习

结合论文自学谷歌提出的 Inception V1 至 V4, 以及 MobileNets,整理一个学习心得。

【任务四】实战练习

AI研习社新上了一个比赛 “ 工业表面纹理缺陷检测 ”,奖金3000元。比赛链接:https://god.yanxishe.com/80

比赛时间为7月24日至8月22日,来自德国海德堡大学图像处理合作项目,提交结果只要大过标准分40就有奖金。

1. 视频学习

● 深度学习的数学基础

(下载地址:https://www.jianguoyun.com/p/DStBQ98QrKKIBhis-K4D)

● 卷积神经网络

(下载地址:https://www.jianguoyun.com/p/DaAOf94QrKKIBhi1-K4D)

主要内容包括:

  • CNN的基本结构:卷积、池化、全连接
  • 典型网络结构:AlexNet、VGG、GoogleNet、ResNet

● 京东专家结合 pytorch 代码讲解 ResNet

B站链接:https://www.bilibili.com/video/BV1o7411f7UM

主要内容包括:残差学习的基本原理、恒等映射和Shotcut、使用 pytorch 实现 ResNet152

所有视频下载链接2020年7月30日自动过期,请抓紧时间下载。

【任务一解答】视频学习心得及问题总结

视频学习心得:

● 深度学习的数学基础

一、机器学习(深度学习)中的数学基础

二、机器学习三要素:模型、策略、算法

1.概率/函数形式的统一

2.“最优”的策略设计

3.损失函数

三、频率学派 & 贝叶斯学派

四、Beyond深度学习

1.因果推断

2.群体智能

● 卷积神经网络 

一、绪论

1.卷积神经网络的应用

(1)基本应用

分类、检索、检测、分割

(2)具体运用

       人脸识别、表情识别、图像生成(Image to Image、Text to Image)、图像风格转化、自动驾驶

2.传统神经网络vs卷积神经网络

(1)深度学习三部曲

step1.搭建神经网络结构

step2.找到一个合适的损失函数

如:交叉熵损失(cross entropy loss),均方误差(MSE),......

step3.找到一个合适的优化函数,更新参数

                  如:反向传播(BP),随机梯度下降(SGD),.......

(2)one-hot

       真实的位置为1,其他地方都为0。

(3)损失函数

分类损失中,yi:真实类别     yip:预测类别     y:真实类别     f(x):预测结果

回归损失中,yi:真实位置     yip:预测位置


(4)传统神经网络和卷积神经网络的区别

传统神经网络中的每一层采用的都是全连接层,这样就会造成参数太多,导致过拟合;

卷积神经网络采用卷积核达到局部关联和参数共享的效果,中间有卷积层、激活层、池化层、全连接层等。

二、基本组成结构

1.卷积

(1)卷积涉及到的基本概念

(2)特征图大小计算公式

(N+padding*2-F)/stride+1

(输入图大小+padding*2-卷积核大小)/步长+1

(3)卷积举例

(4)卷积的可视化理解

浅层时卷积核更关注整体的信息,深层时卷积核更关注局部某个特征的信息,不同的卷积核关注不同的信息。

2.池化

(1)池化的特征

       a.池化相当于在做一个缩放,它在保留了主要特征的同时减少参数和计算量,防止过拟合,提高模型泛化能力;

b.它一般处于卷积层与卷积层之间,全连接层与全连接层之间。

(2)池化的类型

Max pooling:最大值池化

Average pooling:平均池化

(3)实验中常用的池化参数

a.分类任务中常用最大值池化

b.filter大小一般设置为2*2或3*3

c.步长一般设置为2

3.全连接

a.两层之间所有神经元都有权重连接

b.通常全连接层在卷积神经网络尾部

c.全连接层参数量通常最大

三、卷积神经网络典型结构

1.AlexNet

2.ZFNet

3.VGG

4.GoogleNet

5.ResNet

四、代码实战:Tensorflow-CNN

● 京东专家结合 pytorch 代码讲解 ResNet

2. 代码练习

代码练习需要使用谷歌的 Colab。

● MNIST 数据集分类

构建简单的CNN对 mnist 数据集进行分类。同时,还会在实验中学习池化与卷积操作的基本作用。

链接:https://github.com/OUCTheoryGroup/colab_demo/blob/master/05_01_ConvNet.ipynb

要求: 把代码输入 colab,在线运行观察效果

● CIFAR10 数据集分类

使用 CNN 对 CIFAR10 数据集进行分类

链接:https://github.com/OUCTheoryGroup/colab_demo/blob/master/05_02_CNN_CIFAR10.ipynb

要求: 把代码输入 colab,在线运行观察效果

● 使用 VGG16 对 CIFAR10 分类

链接:https://github.com/OUCTheoryGroup/colab_demo/blob/master/05_03_VGG_CIFAR10.ipynb

要求: 把代码输入 colab,在线运行观察效果

● 使用VGG模型迁移学习进行猫狗大战

链接:https://github.com/OUCTheoryGroup/colab_demo/blob/master/05_04_Transfer_VGG_for_dogs_vs_cats.ipynb

要求:这部分为 Kaggle 于 2013 年举办的猫狗大战竞赛,使用在 ImageNet 上预训练的 VGG 网络进行测试。因为原网络的分类结果是1000类,所以这里进行迁移学习,对原网络进行 fine-tune (即固定前面若干层,作为特征提取器,只重新训练最后两层)。

仔细研读AI研习社猫狗大战赛题的要求:https://god.yanxishe.com/41 (目前比赛已经结束,但仍可做为练习赛每天提交测试结果)

下载比赛的测试集(包含2000张图片),利用fine-tune的VGG模型进行测试,按照比赛规定的格式输出,上传结果评测。

【任务二解答】代码练习

● MNIST 数据集分类

● CIFAR10 数据集分类

● 使用 VGG16 对 CIFAR10 分类

● 使用VGG模型迁移学习进行猫狗大战

3. 展望学习

       Google团队的 Inception网络:

1. 为了捕获多个感受野的信息,使用了多个尺寸卷积核来并行处理;

2. 大尺寸的卷积核可以由小的卷积核组合替换(经如1个 5x5 的卷积可以由2个 3x3 的卷积来替换);

3. 使用了非对称卷积。

  • 阅读谷歌2017年的论文:《MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications》

       MobileNet:使用了深度可分离卷积,把标准卷积分解为 depth-wise 和 point-wise 卷积。具体细节可以参考知乎文章:https://zhuanlan.zhihu.com/p/80041030

  • 阅读《HybridSN: Exploring 3-D–2-D CNN Feature Hierarchy for Hyperspectral Image Classification》

       HybridSN: 思考二维卷积和三维卷积的区别?

【任务三解答】展望学习

● GoogLeNet(从Inception v1到v4的演进)

● MobileNets

● HybridSN

4. 实战练习

随机推荐

  1. NOT IN 和NOT EXISTS

    今天写了一个简单的NOT IN语句,结果跟预期大相径庭,百度之发现深坑一个,遂录之. 登陆账户表logins code name status a admin N b guest N c member ...

  2. Bug总结流程

    小明入职已有两年,期间测试能力已不知不觉成长许多,得到了Leader大熊的高度认可.回首这两年间,小明对"Bug总结流程"印象最为深刻,他对这个流程的认识在不断改变着:从最初的好奇 ...

  3. PHP linux spl_autoload_register区分大小写

    一个PHP脚本用到spl_autoload_register,在WINDOWS下运行正常,但在LINUX就include不了,后来发现WINDOWS大小写不敏感,而在LINUX下区分大小写,WINDO ...

  4. UVA 10608 Friends

    题目大意:共有n个人,m对人为已知的朋友关系,而且这种关系具有传递性,也就是A与B,B与C是朋友,可以确定A与C是朋友,求一个人数最多的朋友团体. bfs就可以了,遇到未访问的结点,加入队列并且朋人数 ...

  5. 【python自动化第十一篇】

    [python自动化第十一篇:] 课程简介 gevent协程 select/poll/epoll/异步IO/事件驱动 RabbitMQ队列 上节课回顾 进程: 进程的诞生时为了处理多任务,资源的隔离, ...

  6. Linux shell入门基础(六)

    六.Shell脚本编程详解 将上述五部分的内容,串联起来,增加对Shell的了解 01.shell脚本 shell: # #perl #python #php #jsp 不同的脚本执行不同的文本,执行 ...

  7. MIME (Multipurpose Internet Mail Extensions) 是描述消息内容类型的因特网标准

    http://www.alixixi.com/program/a/2010080364045.shtml MIME 消息能包含文本.图像.音频.视频以及其他应用程序专用的数据. 官方的 MIME 信息 ...

  8. jquery的输入框自动补全功能+ajax

    jquery的输入框自动补全功能+ajax 2017年05月10日 18:51:39 辣姐什么鬼 阅读数:1461 标签: web前端 更多 个人分类: web前端   内容参考网友文章写成,原博的链 ...

  9. web爬虫,BeautifulSoup

    BeautifulSoup 该模块用于接收一个HTML或XML字符串,然后将其进行格式化,之后遍可以使用他提供的方法进行快速查找指定元素,从而使得在HTML或XML中查找指定元素变得简单. 1 2 3 ...

  10. TravelPort官方API解读

    TravelPort Ping通使用教程 Unit1 Lesson 1: 标签(空格分隔): 完成第1单元的三个课程后,您可以使用Travelport Universal API来提出服务请求并了解响 ...