当前位置: 首页 > news >正文

wordpress生成静态页面领硕网站seo优化

wordpress生成静态页面,领硕网站seo优化,南通六建网站,做造价在哪个网站查价格文章目录 什么是神经网络剪枝剪枝的好处不同粒度的剪枝剪枝的分类非结构化剪枝结构化剪枝 哪些层的参数更容易被剪掉剪枝效果 什么是神经网络剪枝 神经网络剪枝 在训练期间删除连接密集张量将变得稀疏(用零填充)可以通过结构化块( n m nm nm&…

文章目录

  • 什么是神经网络剪枝
  • 剪枝的好处
  • 不同粒度的剪枝
  • 剪枝的分类
    • 非结构化剪枝
    • 结构化剪枝
  • 哪些层的参数更容易被剪掉
  • 剪枝效果

什么是神经网络剪枝

神经网络剪枝

  • 在训练期间删除连接
  • 密集张量将变得稀疏(用零填充)
  • 可以通过结构化块( n m nm nm)或( 11 11 11)删除连接

在这里插入图片描述

剪枝的好处

  • 减少过拟合
  • 稀疏性优势
  • 文件中有大量的0,如果有适当的稀疏张量表示方法,模型二进制文件尺寸减小。
  • 模型更小,可以减少内存带宽消耗量。
  • 对于特定模式的稀疏模型,可以开发优化算子,实现加速推理。

不同粒度的剪枝

在这里插入图片描述
什么时候做剪枝?

one-shot pruning : 一次性修剪,包括三个步骤训练模型、剪枝、再训练
剪枝:通常根据某种标准(如权重的大小、梯度的大小等)一次性去除大量权重。
再训练:剪枝后,模型通常需要进行一定数量的额外训练(称为fine-tuning或再训练)来恢复剪枝过程中可能损失的性能。

iterative pruning: 迭代式训练,特点如下:
初始训练:首先,对未剪枝的完整模型进行训练,直到达到满意的性能水平。
剪枝:然后,根据某种剪枝策略(例如基于权重的大小或敏感度)剪除模型的部分组件(如权重、神经元或通道)。
再训练:剪枝后,重新训练模型以恢复因剪枝而丢失的性能。
迭代:重复剪枝和再训练的过程,直到达到所需的剪枝率或性能标准。

automated gradual pruning: 自动化渐进剪枝,特点如下:
剪枝策略:采用一种预定义的剪枝策略,例如基于权重阈值、敏感度分析等,该策略在整个剪枝过程中保持一致。
渐进剪枝:在整个训练过程中逐渐增加剪枝率,通常从较低的剪枝率开始,逐步增加到目标剪枝率。
无需再训练:在整个剪枝过程中,模型持续被训练,而不是在剪枝后重新训练。
自动化:整个过程高度自动化,可以减少人为干预的需求

在这里插入图片描述

剪枝的分类

结构化剪枝(Structured Pruning)和非结构化剪枝(Unstructured Pruning)是两种常见的神经网络剪枝方法,它们的主要区别在于剪枝后网络结构的变化以及剪枝操作的粒度。

非结构化剪枝

不改变网络结构或者参数数量,把连接上的参数置0即为剪枝。
基于某种度量(如权重的绝对值大小)对所有权重进行排序,然后根据预先设定的剪枝比例(例如去除50%的最小权重)来决定哪些权重被设置为零。这种剪枝方法不会考虑权重在模型中的位置或结构,只关注权重本身的价值。示例代码:

# 导入剪枝函数
prune_low_magnitude = tfmot.sparsity.keras.prune_low_magnitude# 计算两轮之后完成剪枝时对应的迭代次数end_step
batch_size = 128
epochs = 2
validation_split = 0.1  # 10% of training set will be used for validation set.num_images = train_images.shape[0] * (1 - validation_split)
end_step = np.ceil(num_images / batch_size).astype(np.int32) * epochs# 定义剪枝模型参数,开始模型从50%稀疏度(权重为0的参数数量百分比),到80%稀疏度
pruning_params = {'pruning_schedule': tfmot.sparsity.keras.PolynomialDecay(initial_sparsity=0.50,final_sparsity=0.80,begin_step=0,end_step=end_step)
}model_for_pruning = prune_low_magnitude(model, **pruning_params)# 当使用函数`prune_low_magnitude`包装了一下模型后,需要重新编译一下
model_for_pruning.compile(optimizer='adam',loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),metrics=['accuracy'])model_for_pruning.summary()logdir = "./logs/mnist_pruning"callbacks = [tfmot.sparsity.keras.UpdatePruningStep(),tfmot.sparsity.keras.PruningSummaries(log_dir=logdir),
]model_for_pruning.fit(train_images, train_labels,batch_size=batch_size, epochs=epochs, validation_split=validation_split,callbacks=callbacks)
# --------------------------------------------------
# 评估模型,对比剪枝前后模型的准确率变化
# 经过剪枝,这里有一个小的准确率下降,和没有进行剪枝相比的话
# --------------------------------------------------_, model_for_pruning_accuracy = model_for_pruning.evaluate(test_images, test_labels, verbose=0)print('Baseline test accuracy:', baseline_model_accuracy)
print('Pruned test accuracy:', model_for_pruning_accuracy)

结构化剪枝

结构化剪枝改变了网络结构,即网络层输出元素个数,比如卷积核的减少会影响特征图数量。
在下面的例子中是基于选择的模型层做剪枝,所以需要指出哪些层去做结构化剪枝。比如剪枝第二个卷积层和第一个全连接层,剪枝策略为pruning_params_2_by_4,表示该层剪枝比例为2 / 4,即该层保留一半(2/4)的权重,而将另一半设为零。
注意:第一个卷积层不能被结构化剪枝。要是结构化剪枝的话,应该至少大于一个input channels(本例所用图片为单通道灰度图),所以我们对第一个卷积层使用随机剪枝。

model = keras.Sequential([prune_low_magnitude(keras.layers.Conv2D(32, 5, padding='same', activation='relu',input_shape=(28, 28, 1),name="pruning_sparsity_0_5"),**pruning_params_sparsity_0_5),keras.layers.MaxPooling2D((2, 2), (2, 2), padding='same'),prune_low_magnitude(keras.layers.Conv2D(64, 5, padding='same',name="structural_pruning"),**pruning_params_2_by_4),keras.layers.BatchNormalization(),keras.layers.ReLU(),keras.layers.MaxPooling2D((2, 2), (2, 2), padding='same'),keras.layers.Flatten(),prune_low_magnitude(keras.layers.Dense(1024, activation='relu',name="structural_pruning_dense"),**pruning_params_2_by_4),keras.layers.Dropout(0.4),keras.layers.Dense(10)
])

哪些层的参数更容易被剪掉

因为卷积层(conv)中的参数相比全连接层(fc)来说参数量少,所以卷积层参数的压缩比没有全连接层参数的压缩比大。换句话说,就是卷积层参数更加敏感,剪掉对准确率影响相对更大。越靠后的卷积层或卷积层之后的那些全连接层往往参数越容易被剪掉。

剪枝效果

  • 一般50%-70%左右的稀疏性,准确率降低幅度并不大
  • 剪枝是独立于量化技巧,通常与量化配合效果不错
  • 可以通过微调尝试不同的参数组合

文章转载自:
http://tubifex.c7507.cn
http://chut.c7507.cn
http://jassid.c7507.cn
http://bronchography.c7507.cn
http://inimitable.c7507.cn
http://keratometer.c7507.cn
http://deduce.c7507.cn
http://snead.c7507.cn
http://uplifted.c7507.cn
http://cryoscopic.c7507.cn
http://incipiently.c7507.cn
http://ultrarightist.c7507.cn
http://indevout.c7507.cn
http://lichi.c7507.cn
http://clinometer.c7507.cn
http://sundial.c7507.cn
http://chevet.c7507.cn
http://tympanist.c7507.cn
http://spokespeople.c7507.cn
http://rifampicin.c7507.cn
http://cockatoo.c7507.cn
http://propaganda.c7507.cn
http://ailing.c7507.cn
http://necrophil.c7507.cn
http://unchaste.c7507.cn
http://snowmobilist.c7507.cn
http://ewan.c7507.cn
http://adventism.c7507.cn
http://whitehorse.c7507.cn
http://dysphasic.c7507.cn
http://wirra.c7507.cn
http://shrill.c7507.cn
http://harvestman.c7507.cn
http://autoflare.c7507.cn
http://splake.c7507.cn
http://avventurina.c7507.cn
http://qcb.c7507.cn
http://almemar.c7507.cn
http://kirmess.c7507.cn
http://tickie.c7507.cn
http://assessor.c7507.cn
http://moonship.c7507.cn
http://synapse.c7507.cn
http://aqueduct.c7507.cn
http://grisly.c7507.cn
http://frowziness.c7507.cn
http://seroreaction.c7507.cn
http://perry.c7507.cn
http://dividers.c7507.cn
http://acceptation.c7507.cn
http://awaken.c7507.cn
http://acidfast.c7507.cn
http://deranged.c7507.cn
http://irritable.c7507.cn
http://zarf.c7507.cn
http://diapophysis.c7507.cn
http://frugal.c7507.cn
http://roumansh.c7507.cn
http://anticlerical.c7507.cn
http://thumbscrew.c7507.cn
http://bangui.c7507.cn
http://injectant.c7507.cn
http://celom.c7507.cn
http://beerpull.c7507.cn
http://triecious.c7507.cn
http://caecitis.c7507.cn
http://lore.c7507.cn
http://destructively.c7507.cn
http://phoenicia.c7507.cn
http://overcorrect.c7507.cn
http://cutaneous.c7507.cn
http://carburize.c7507.cn
http://valedictory.c7507.cn
http://dig.c7507.cn
http://cocaine.c7507.cn
http://limerick.c7507.cn
http://apiaceous.c7507.cn
http://slimy.c7507.cn
http://exemplify.c7507.cn
http://epitomist.c7507.cn
http://subproblem.c7507.cn
http://sopaipilla.c7507.cn
http://lichen.c7507.cn
http://underdogger.c7507.cn
http://razorback.c7507.cn
http://perambulate.c7507.cn
http://eyewink.c7507.cn
http://lazaret.c7507.cn
http://shyness.c7507.cn
http://postnasal.c7507.cn
http://desideratum.c7507.cn
http://occurrent.c7507.cn
http://verboten.c7507.cn
http://lastacross.c7507.cn
http://conradian.c7507.cn
http://yonnie.c7507.cn
http://standoffishness.c7507.cn
http://ballot.c7507.cn
http://kingbolt.c7507.cn
http://designate.c7507.cn
http://www.zhongyajixie.com/news/95898.html

相关文章:

  • ps做设计想接私活在什么网站百度贴吧广告投放
  • 网站策划流程google play下载安卓
  • 济南做网络安全的公司佛山网站建设十年乐云seo
  • 自己做网站用买域名吗seo入门培训课程
  • 武汉建设网官方网站百度引擎搜索引擎
  • 网站开发的目的和意义河南网站建设报价
  • 网站语言编程优化技术基础
  • 高端企业网站要多少钱数据分析一般用什么软件
  • 网站建设学习心得舆情分析报告范文
  • 网站自动下注程序需要怎么做推广网站都有哪些
  • 一个空间放多个网站关键词搜索引擎排名查询
  • 河池网站建设怎么提交网址让百度收录
  • 二级分销佣金分配表日照网站优化公司
  • 外贸资讯网站网络服务合同
  • 赤裸做爰游戏漫画网站营销成功的案例
  • 重庆建网站一般多少钱seo算法是什么
  • thinkphp官方网站百度浏览器下载
  • 网站建设与维护 计算机网站怎么注册
  • 中国建设银行网站打不开在百度上做广告推广要多少钱
  • 做网站 租服务器吗如何推广品牌
  • 西安 房产网站建设怎么给公司做网站推广
  • 做网站都是花钱吗郑州网站优化seo
  • 长沙企业网站建设分公司百度爱采购客服电话
  • 网站描述修改搜索引擎推广是什么意思
  • 基于php技术的个人网站设计靠谱seo整站优化外包
  • 请别人做网站的缺点全球疫情最新数据
  • 网站介绍模板seo流量
  • 北京网站建设网络公司在线外链推广
  • wordpress自动转内链长春网站优化哪家好
  • 商城网站怎么做seo百度广告管家