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 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> PP-LCNet: A Lightweight CPU Convolutional Neural Network -> 正文阅读

[人工智能]PP-LCNet: A Lightweight CPU Convolutional Neural Network

轻量级Trick的优化组合。

论文名称:PP-LCNet: A Lightweight CPU Convolutional Neural Network

作者:Cheng Cui, Tingquan Gao, Shengyu Wei,Yuning Du…

Code:https://github.com/PaddlePaddle/PaddleClas

摘要

  1. 总结了一些在延迟(latency)几乎不变的情况下精度提高的技术;
  2. 提出了一种基于MKLDNN加速策略的轻量级CPU网络,即PP-LCNet。
image-20211007133525281

介绍

目前的轻量级网络在启用MKLDNN的Intel CPU上速度并不理想,考虑了一下三个基本问题:

  1. 如何促使网络学习到更强的特征,但不增加延迟?
  2. 在CPU上提高轻量级模型精度的要素是什么?
  3. 如何有效地结合不同的策略来设计CPU上的轻量级模型?

Method

PP-LCNet使用深度可分离卷积作为基础结构,构建了一个类似MobileNetV1的BaseNet,并在其基础上结合现有的技术,从而得到了PP-LCNet

image-20211007191050134

参数配置:

image-20211008131450331

Better activation function

激活函数是神经网络中非线性的来源,因此其质量一定程度上决定着网络的表达能力。

当激活函数由Sigmoid变为ReLU时,网络的性能得到了很大的提升,近来出现了很多超越ReLU的激活函数,如EfficientNet的Swish,MobileNetV3中将其升级为HSwish,避免了大量的指数运算;因此本网络中使用HSwish激活函数代替ReLU。

首先让我们看一下ReLU函数的近似推导:
KaTeX parse error: No such environment: align at position 8: \begin{?a?l?i?g?n?}? f(x)&=\sum_{i=…
softplus

出于计算量的考虑和实验验证选择了ReLU

ReLU6:

增加了上界

image-20211007184950617

Swish
f ( x ) = x ? s i g m o i d ( β x ) f(x)=x\cdot sigmoid(\beta x) f(x)=x?sigmoid(βx)
swish

β \beta β是个常数或可训练的参数。Swish 具备无上界有下界、平滑、非单调的特性。
Swish 在深层模型上的效果略优于 ReLU。仅仅使用 Swish 单元替换 ReLU 就能把 Mobile NASNetA 在 ImageNet 上的 top-1 分类准确率提高 0.9%,Inception-ResNet-v 的分类准确率提高 0.6%。

导数:

swish-derivation

β = 0 β = 0 β=0时,Swish变为线性函数 f ( x ) = x 2 f(x)=\frac x 2 f(x)=2x?
β → ∞ β → ∞ β, σ ( x ) = 1 1 + e ? x \sigma(x)=\frac{1}{1+e^{?x}} σ(x)=1+e?x1?为0或1,这时Swish变为 R e L U ( x ) = m a x ( 0 , x ) ReLU(x)=max(0,x) ReLU(x)=max(0,x)
因此Swish函数可以看做是介于线性函数与ReLU函数之间的平滑函数.

HSwish:

Swish函数的计算量是很大的,因此提出了HSwish,H表示Hard,意味着超过某个范围,激活值为常数

对ReLU6除以6再向左平移三个单位可以得到HSigmoid:

image-20211007185106870

HSwish的近似公式为 x ? h σ ( x ) = r e l u 6 ( x + 3 ) 6 x\cdot h\sigma(x)=\frac{relu6(x+3)}{6} x?hσ(x)=6relu6(x+3)?,图像如下:

SE modules at appropriate positions

注意力模块无疑是轻量级网络完美的选择,本文探究了SE模块放置的位置,发现在网络深层的效果较好。

image-20211007190945690

Larger convolution kernels

使用更大的卷积核尺寸,发现在网络深层效果较好

image-20211007191200660

Larger dimensional1×1conv layer after GAP

在网络最后的GAP之后使用Pointwise卷积进行升维,以此提高网络的性能

Drop out

实验发现drop out可以提高性能

image-20211007191715602

实验结果

image-20211007192557037

与其他网络进行对比

image-20211007192635596
  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-10-24 14:56:26  更:2021-10-24 14:59:05 
 
开发: 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年11日历 -2024/11/27 8:41:24-

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