IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 研究生新生培训第四周:MobileNetV1 V2 V3 -> 正文阅读

[人工智能]研究生新生培训第四周:MobileNetV1 V2 V3

PART 1:论文阅读和视频学习?

一、MobileNet V1 & V2 & V3

? ? ? ? 1.MobileNet V1

? ? ? ??

?????????mobilenetv1的一个主要特点是网络所需要的参数很少,以至于在手机这种移动设备上都可以跑,在准确率小幅度降低的代价下,可以再次大幅度减少我们的参数量。

? ? ? ? 其中的一个主要亮点为采用了DW卷积,很大程度上减少了运算量和参数数量。

? ? ? ?

? ? ? ? 同时也使用了PW卷积,一种卷积核为1*1的卷积,从输入到输出可以改变维度,dw和pw通常是一起使用的。

????????dw和pw的使用可以大大减少参数量,通常是普通卷积参数的1/8-1/9。

????????\alpha指是卷积核的倍率,值越大,则使用的卷积核数量越多,\alpha就算大幅度降低,准确率也不会降低太多,但是参数量会大幅度降低。\beta指的是输入的图像的尺寸图像的大小从224到128,准确率小幅度降低,但是参数量会大幅度降低。

????????2.MobileNet V2

? ? ? ? MobileNet V2 最主要的改动为采用了倒残差结构?,与ResNet不同,这里采用的激活函数为ReLu6.

? ? ? ?第二个主要的改动为,在最后一层1*1卷积后,采用了线性链接,relu激活函数在低维度的信息会造成较大的损失,高维信息造成的损失很小,就使用一个线性的激活函数,防止损失太多的信息。

? ? ? ? 3.MobileNet V3

????????MobileNet V3 中最主要的改动是引入了SE注意力机制

二、SENet??

? ? ? ? 1.Squeeze :顺着空间维度来进行特征压缩,将每个二维的特征通道变成一个实数,这个实数某种程度上具有全局的感受野,并且输出的维度和输入的特征通道数相匹配。它表征着在特征通道上响应的全局分布,而且使得靠近输入的层也可以获得全局的感受野,这一点在很多任务中都是非常有用的

? ? ? ? 2.Excitation :它是一个类似于循环神经网络中门的机制。通过参数来为每个特征通道生成权重,其中参数被学习用来显式地建模特征通道间的相关性。

? ? ? ? 3.Reweight :将Excitation的输出的权重看做是进过特征选择后的每个特征通道的重要性,然后通过乘法逐通道加权到先前的特征上,完成在通道维度上的对原始特征的重标定。

????????上左图是将SE模块嵌入到Inception结构的一个示例。方框旁边的维度信息代表该层的输出。

????????除此之外,SE 模块还可以嵌入到含有skip-connections 的模块中。上右图是将SE 嵌入到ResNet模块中的一个例子,操作过程基本和SE-Inception一样,只不过是在Addition前对分支上Residual的特征进行了特征重标定。如果对Addition后主支上的特征进行重标定,由于在主干上存在0~1的scale操作,在网络较深BP优化时就会在靠近输入层容易出现梯度消散的情况,导致模型难以优化。

????????目前大多数的主流网络都是基于这两种类似的单元通过repeat方式叠加来构造的。由此可见,SE 模块可以嵌入到现在几乎所有的网络结构中。通过在原始网络结构的building block 单元中嵌入SE模块,我们可以获得不同种类的SENet。如SE-BN-Inception、SE-ResNet、SE-ReNeXt、SE-Inception-ResNet-v2等等。

part 2:代码作业

?一、Hyperspectral Image Classification

? ? ? ? 本篇论文构建了一个 混合网络,用以解决高光谱图像分类问题,首先用 3D卷积,然后使用 2D卷积。

? ? ? ? 1.导入数据、引入基本函数库

????????2. 构建网络

三维卷积部分:

  • conv1:(1, 30, 25, 25), 8个 7x3x3 的卷积核 ==>(8, 24, 23, 23)
  • conv2:(8, 24, 23, 23), 16个 5x3x3 的卷积核 ==>(16, 20, 21, 21)
  • conv3:(16, 20, 21, 21),32个 3x3x3 的卷积核 ==>(32, 18, 19, 19)

接下来要进行二维卷积,因此把前面的 32*18 reshape 一下,得到 (576, 19, 19)

二维卷积:(576, 19, 19) 64个 3x3 的卷积核,得到 (64, 17, 17)

接下来是一个 flatten 操作,变为 18496 维的向量,

接下来依次为256,128节点的全连接层,都使用比例为0.4的 Dropout,

最后输出为 16 个节点,是最终的分类类别数。

? ? ? ? 测试网络:?

? ? ? ? 3.创建数据集?

????????首先对高光谱数据实施PCA降维;然后创建 keras 方便处理的数据格式;然后随机抽取 10% 数据做为训练集,剩余的做为测试集。结果如下图:?

? ? ? ? 4.训练网络

? ? ? ? 训练结果:

? ? ? ? 5.模型测试

二、实验总结

? ? ? ? 本次实验利用pytorch构建了HybridSN模型并实现了高光图谱分类,使用colab平台训练网络,耗时接近1h。

PART 3:问题思考

? ? ? ? 1.每次分类的结果都不一样,请思考为什么?

? ? ? ? ?模型中采用 dropout() 进行正则处理防止过拟合,具有随机选择的特性,故每次得到的结果不同。

? ? ? ? 2.如果想要进一步提升高光谱图像的分类性能,可以如何改进?

? ? ? ? 可以尝试引入注意力机制,例如SENet

? ? ? ? 3.3D卷积和2D卷积的区别?

? ? ? ? 主要区别为滤波器的空间维度不同,高维卷积容易提取高维数据之间的特征关系,适合处理高维信息。

??

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-08-06 10:44:55  更:2022-08-06 10:45:29 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/29 9:11:19-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计