TensorFlow的新型模型优化工具包可使模型速度提高3倍

简介: 本周TensorFlow推出了一个新的模型优化工具包。这套技术同时适用于新老开发员以优化机器学习模型,特别是运行TensorFlowLite的开发人员。任何现有TensorFlow模型均适用。

  本周TensorFlow推出了一个新的模型优化工具包。这套技术同时适用于新老开发员以优化机器学习模型,特别是运行TensorFlowLite的开发人员。任何现有TensorFlow模型均适用。

  什么是TensorFlow中的模型优化?

  TensorFlowLite转换工具新支持训练后量化。理论上,这可以使数据中的压缩率提高四倍,相关机器学习模型的执行速度提高三倍。

  在量化它们所使用的模型时,功耗也降低。

  启用训练后量化

  此量化技术已集成到TensorFlowLite转换工具中。启动非常容易。构建TensorFlow模型后,您可以在TensorFlowLite转换工具中简单地启用“post_training_quantize”标志。如果模型被保存并存储在saved_model_dir中,则可以生成量化的tfliteflatbuffer。

 ca5927fb66af5d96fb102ce68954a6a0

  有一个说明性的教程解释了如何做。TensorFlowLite当前不支持在平台上使用此技术部署,但计划将其合并到通用TensorFlow工具中。

  训练后量化的优势

  这种量化技术的好处包括:

  l模型尺寸减少约四倍。

  l在主要由卷积层组成的模型中执行速度提高10-50%。

  l是RNN模型速度的三倍。

  l由于减少了内存和计算要求,大多数模型的功耗也会降低。

  下图显示了使用单核在GooglePixel2手机上几个模型的模型尺寸减小,执行时间加速。我们可以看到优化后的模型几乎小了四倍。

 c6c63e8dadd424e190b2225a11d576dd

  加速和模型尺寸的减小不会对精度产生太大影响。启动时小尺寸的模型可能会遭受更大的损失。这是一个比较:

 9c37cd1a78f2ee1d809cdd6466fe1de2

  它是如何工作的?

  在幕后,它以减少参数精度(神经网络权重)的方式来运行优化。从训练时间32位浮点表达至更小更有效的8位整数表达中缩减模型尺寸。

  这些优化在结果模型中用固定和浮点算数混合的内核粗略地操作,以确保配对。这能够快速执行最重的计算,但精度较低。但是,最敏感的数据仍然是以高精度计算的,准确性较高。

相关文章
|
3月前
|
机器学习/深度学习 算法 TensorFlow
文本分类识别Python+卷积神经网络算法+TensorFlow模型训练+Django可视化界面
文本分类识别Python+卷积神经网络算法+TensorFlow模型训练+Django可视化界面
57 0
文本分类识别Python+卷积神经网络算法+TensorFlow模型训练+Django可视化界面
|
3月前
|
机器学习/深度学习 监控 Python
tensorflow2.x多层感知机模型参数量和计算量的统计
tensorflow2.x多层感知机模型参数量和计算量的统计
|
3月前
|
机器学习/深度学习 搜索推荐 算法
推荐系统离线评估方法和评估指标,以及在推荐服务器内部实现A/B测试和解决A/B测试资源紧张的方法。还介绍了如何在TensorFlow中进行模型离线评估实践。
推荐系统离线评估方法和评估指标,以及在推荐服务器内部实现A/B测试和解决A/B测试资源紧张的方法。还介绍了如何在TensorFlow中进行模型离线评估实践。
187 0
|
1天前
|
机器学习/深度学习 TensorFlow 调度
优化TensorFlow模型:超参数调整与训练技巧
【4月更文挑战第17天】本文探讨了如何优化TensorFlow模型的性能,重点介绍了超参数调整和训练技巧。超参数如学习率、批量大小和层数对模型性能至关重要。文章提到了三种超参数调整策略:网格搜索、随机搜索和贝叶斯优化。此外,还分享了训练技巧,包括学习率调度、早停、数据增强和正则化,这些都有助于防止过拟合并提高模型泛化能力。结合这些方法,可构建更高效、健壮的深度学习模型。
|
1月前
|
机器学习/深度学习 TensorFlow 算法框架/工具
OpenCV读取tensorflow 2.X模型的方法:将SavedModel转为frozen graph
【2月更文挑战第22天】本文介绍基于Python的tensorflow库,将tensorflow与keras训练好的SavedModel格式神经网络模型转换为frozen graph格式,从而可以用OpenCV库在C++等其他语言中将其打开的方法~
OpenCV读取tensorflow 2.X模型的方法:将SavedModel转为frozen graph
|
2月前
|
机器学习/深度学习 人工智能 API
人工智能应用工程师技能提升系列2、——TensorFlow2——keras高级API训练神经网络模型
人工智能应用工程师技能提升系列2、——TensorFlow2——keras高级API训练神经网络模型
31 0
|
3月前
|
TensorFlow 网络安全 算法框架/工具
tensorflow的模型使用flask制作windows系统服务
tensorflow的模型使用flask制作windows系统服务
|
4月前
|
机器学习/深度学习 数据可视化 TensorFlow
用TensorBoard可视化tensorflow神经网络模型结构与训练过程的方法
用TensorBoard可视化tensorflow神经网络模型结构与训练过程的方法
126 0
|
4月前
|
人工智能 Java TensorFlow
基于Tensorflow技术开发的计算机毕业设计辅助生成器(使用AI大模型技术)
基于Tensorflow技术开发的计算机毕业设计辅助生成器(使用AI大模型技术)
161 0
|
4月前
|
机器学习/深度学习 自然语言处理 算法
【Tensorflow深度学习】优化算法、损失计算、模型评估、向量嵌入、神经网络等模块的讲解(超详细必看)
【Tensorflow深度学习】优化算法、损失计算、模型评估、向量嵌入、神经网络等模块的讲解(超详细必看)
54 1

热门文章

最新文章