论文笔记(Filter Pruning via Geometric Median for Deep Convolutional Neural Networks Acceleration)...

这是CVPR 2019的一篇oral。

预备知识点:Geometric median 几何中位数

\begin{equation}
\underset{y \in \mathbb{R}^{n}}{\arg \min } \sum_{i=1}^{m}\left\|x_{i}-y\right\|
\end{equation}

可以理解为距离给定点集欧式距离之和最近的点。这篇博客中有关于几何中位数的介绍:https://www.cnblogs.com/ybiln/p/4175695.html。

 

文中指出之前的剪枝算法应用的前提条件有两个:

1、权重间隔要大

2、最小值应该更靠近0

(PS: 这个地方文中还画出了图表分析数据的分布情况,但是数据的来源是没有经过稀疏化处理的权重数据,我觉得没有那么具有代表性)

 

文中最关键的点是利用了中位数这个概念,应该剪去的是中位数,作者知道中位数的数学表达形式,这是一个很关键的预备知识。

后面作者在求取中位数卷积核的一系列近似,得到了数学上能够讲得通的结果。有点诡辩的意思,有的地方不是很严谨。

转载于:https://www.cnblogs.com/yanxingang/p/10768316.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
代码修剪卷积神经网络用于资源高效推理,是一种优化模型的方法,旨在减小模型的尺寸和计算量,从而实现在资源受限的设备上进行高效推理。 修剪是指通过删除模型中的一些参数或神经元来减小模型的复杂性。在卷积神经网络中,修剪通常包括删除一些卷积核或通道,以及减少连接权重的数量。这可以通过一些算法和技术来实现,例如剪枝算法、稀疏矩阵和低秩近似等。 修剪卷积神经网络可以带来多个好处。首先,它可以大大减小模型的尺寸,从而降低了存储模型所需的内存空间。其次,修剪可以减少模型的计算量,使得模型可以更快地进行推理。这对移动设备和嵌入式系统等资源受限的设备非常重要。此外,修剪还可以提高模型的泛化能力,减少过拟合的风险。 对于修剪卷积神经网络的代码实现,一般分为两个步骤。首先,需要训练一个初始的卷积神经网络模型。然后,通过一些修剪算法选择要修剪的参数或神经元,并将其从模型中移除。修剪的目标可以是按照权重大小或梯度大小进行选择。 在实际编程中,代码可以使用一些深度学习框架(如PyTorch或TensorFlow)来实现。这些框架通常提供了一些修剪工具和函数,以便进行参数和神经元的修剪。开发者需要根据具体的应用场景和需求来选择合适的修剪策略,并根据框架的API来实现修剪过程。 总之,代码修剪卷积神经网络是一种资源高效推理的方法,通过减小模型的尺寸和计算量,提高模型的效率和性能。这对于在资源受限的设备上进行深度学习推理任务非常有意义。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值