选自Medium
机器之心编译
参与:张倩、王淑婷
近日,TensorFlow 推出了一款新的模型优化工具包。利用该该工具包中的技术可以将模型压缩 75%,最大可将速度提升到原来的 3 倍。
新手和熟练的开发者都能利用这套工具包中的技术来优化待部署和执行的机器学习模型。预计该工具包中的技术将有助于优化所有 TensorFlow 模型以进行部署,但它对于那些为内存紧张、功率和存储受限的设备提供模型的 TensorFlow Lite 开发人员来说帮助最大。
TensorFlow Lite 相关信息链接:https://www.tensorflow.org/mobile/tflite/。
优化模型以减少尺寸、延迟和功耗,使准确率损失不明显
添加的第一项支持技术是对 TensorFlow Lite 转换工具的训练后量化(post-training quantization)。对于相关的机器学习模型,利用该技术可以将模型压缩到原来的 1/4,并将速度提升到原来的 3 倍。
开发者可以通过量化模型减少能耗。这点对于在边缘设备中部署(不局限于手机)非常有用。
实现训练后量化
训练后量化技术是 TensorFlow Lite 转换工具的一部分。上手非常简单:创建 TensorFlow 模型之后,开发者可以简单地实现 TensorFlow Lite 转换工具中的「post_training_quantize」标记。假设这一保存的模型存储在 saved_model_dir 中,则可以生成量化的 tflite flatbuffer:
converter=tf.contrib.lite.TocoConverter.from_saved_model(saved_model_dir)
converter.post_training_quantize=True
tflite_quantized_model=converter.convert()
open(“quantized_model.tflite”, “wb”).write(tflite_quantized_model)
TensorFlow 提供了相关教程,深入解析如何做到这一点。未来的目标是将这种技术纳入通用的 TensorFlow 工具中,以便将其部署在目前没有 TensorFlow Lite 支持的平台上。
教程链接:https://github.com/tensorflow/tensorflow/blob/master/tensorflow/contrib/lite/tutorials/post_training_quant.ipynb
训练后量化的好处
模型缩小到原来的 1/4
主要由卷积层组成的模型执行速度提高了 10-50%。
基于 RNN 的模型得到了 3 倍的加速
由于减少了内存和计算需求,预计大多数模型将降低功耗。
下图显示一些模型尺寸减小,执行速度提高(使用单核的 Android Pixel 2 手机上进行的测量)。
图 1:模型大小比较:优化后的模型差不多缩小到原来的 1/4。
图 2:延时比较:优化后的模型速度是原来的 1.2—1.4 倍。
加速和模型尺寸减小对准确率的影响很小。一般对于手头任务来说,已经较小的模型(如用于图像分类的 mobilenet v1)可能会损失更多的准确率。对于这些模型,TensorFlow 为其中的大部分提供预训练的完全量化模型。
图 3:准确率比较:除了 mobilenets,优化后的模型准确率下降不明显。
TensorFlow 期望在未来继续改进结果,所以请参见模型优化指南,了解最新的测量结果。
地址:https://www.tensorflow.org/performance/model_optimization
训练后量化如何起作用
TensorFlow 通过将参数(即神经网络权重)的精度从训练时的 32 位浮点表示降至小得多且高效的 8 位浮点数表示,来进行优化(也称为量化)。详细信息请参见训练后量化指南。地址:https://www.tensorflow.org/performance/post_training_quantization
这些优化将确保结果模型中精度降低的操作定义与使用固定和浮点数学混合的内核实现配对。这将在较低精度下快速执行最重的计算,但在较高精度下执行最敏感的计算,因此通常会导致任务很少甚至没有最终准确率损失,但与纯浮点执行相比,速度显著加快。对于没有匹配的「混合」内核的操作,或者工具包认为有必要的操作,它会将参数重新转换为更高的浮点精度来执行。有关支持混合操作的列表,请参见训练后量化页面。
未来展望
TensorFlow 将继续改进训练后量化及简化模型优化过程的其它技术上的工作。这些将整合到 TensorFlow 相关工作流程中,使其更加容易使用。
训练后量化是 TensorFlow 正在开发的优化工具包下的第一个产品,该团队希望得到来自开发者的相关反馈。
原文链接:https://medium.com/tensorflow/introducing-the-model-optimization-toolkit-for-tensorflow-254aca1ba0a3
本文为机器之心编译,转载请联系本公众号获得授权。
✄------------------------------------------------
加入机器之心(全职记者 / 实习生):hr@jiqizhixin.com
投稿或寻求报道:content@jiqizhixin.com
广告 & 商务合作:bd@jiqizhixin.com
玻璃钢生产厂家澳门玻璃钢动物雕塑公司三沙玻璃钢花坛哪家好绥化玻璃钢制品制作长春玻璃钢树池坐凳加工绥化玻璃钢定做莱芜商场美陈定做衡阳玻璃钢前台厂家直销定西玻璃钢设备外壳加工资阳玻璃钢花盆生产厂家莱芜商场美陈哪家好汕头玻璃钢机械外壳加工白城玻璃钢树池坐凳价格枣庄玻璃钢天花吊顶加工朔州玻璃钢花瓶制作保定玻璃钢花坛价格汉中玻璃钢医疗外壳南昌玻璃钢花池制作定西商场美陈浙江玻璃钢公仔雕塑哪家好舟山玻璃钢花钵价格滁州玻璃钢天花吊顶厂十堰不锈钢家具多少钱宿迁玻璃钢医疗外壳哪家好保山玻璃钢花钵定做铁岭商场美陈哪家好鹰潭玻璃钢制品加工榆林玻璃钢种植池厂家三明玻璃钢造型固原玻璃钢花瓶批发宣城玻璃钢景观雕塑厂家歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运