4-机器学习进阶-神经网络压缩

4-机器学习进阶-神经网络压缩_第1张图片类似人脑的神经
4-机器学习进阶-神经网络压缩_第2张图片
裁剪权重还是神经元,裁剪不重要的,权重是否重要看大小即可,直接计算权重的L1或者L2,因为是向量
神经元的判断,就看他的输出是否为0,为0代表这个神经元不重要
4-机器学习进阶-神经网络压缩_第3张图片
逐步裁剪,逐步重新训练达到最佳,最终就是效率和准确率的一个平衡
4-机器学习进阶-神经网络压缩_第4张图片
大的好训练,所以先训练个大的,才裁剪,大不容易陷入局部最优
4-机器学习进阶-神经网络压缩_第5张图片权重删减会导致不规则,GPU矩阵运算不好加速
只是把对应的weight的值设置为0,实际上上weight还在,模型生成的大小仍然是一样的。所以一般是删除神经元
4-机器学习进阶-神经网络压缩_第6张图片
删除神经元是比较容易加速的
4-机器学习进阶-神经网络压缩_第7张图片
先集成在蒸馏,能学到更加丰富的知识,不单单知道硬编码,还知道百分数,还知道更其他的哪个数字更像,比如1跟7像,这样学习即使没看过一些数据也能学习出来
4-机器学习进阶-神经网络压缩_第8张图片
引入参数T,学习更多的信息,其实就是做一个缩放,比较大的,然输出的值别太分散,变成硬编码,互相之间比较靠近的软编码蕴含更丰富的信息

4-机器学习进阶-神经网络压缩_第9张图片
聚类用均值代替
4-机器学习进阶-神经网络压缩_第10张图片
不做梯度更新,而是更新后取最靠近的+1或者-1,量化的极限,效果可能还有上升

4-机器学习进阶-神经网络压缩_第11张图片
矩阵分解,减少参数 M X N >> M X K + K X V
4-机器学习进阶-神经网络压缩_第12张图片
4-机器学习进阶-神经网络压缩_第13张图片
图像的卷积运算也是一样的有点类似再中间拆入一层,正常的一个卷积核其实输入的缩小版,输入是几个通道,这一个卷积核就是几个通道。这个的本质就是把第一层的卷积核只管某一个通道
4-机器学习进阶-神经网络压缩_第14张图片
这个就是相差的倍数 O一般比较大,由K决定
4-机器学习进阶-神经网络压缩_第15张图片
MobileNet就是这个原理
4-机器学习进阶-神经网络压缩_第16张图片
训练一个大的模型,取其中某个层的输出,当做输出,节省空间的目的
但是近的是通用特征,不能打乱了,如果加一个分类,会破坏浅层的特征,强迫浅层去学习深层的特征,打破平衡
4-机器学习进阶-神经网络压缩_第17张图片

你可能感兴趣的:(神经网络,深度学习,机器学习)