TensorFlow的新型模型優化工具包可以使模型速度提升3倍

  本週TensorFlow推出了一個新的模型優化工具包。這套技術同時適用於新老開發員以優化機器學習模型,特別是運行TensorFlowLite的開發人員。任何現有TensorFlow模型均適用。網絡

  什麼是TensorFlow中的模型優化?機器學習

  TensorFlowLite轉換工具新支持訓練後量化。理論上,這能夠使數據中的壓縮率提升四倍,相關機器學習模型的執行速度提升三倍。工具

  在量化它們所使用的模型時,功耗也下降。post

  啓用訓練後量化學習

  此量化技術已集成到TensorFlowLite轉換工具中。啓動很是容易。構建TensorFlow模型後,您能夠在TensorFlowLite轉換工具中簡單地啓用「post_training_quantize」標誌。若是模型被保存並存儲在saved_model_dir中,則能夠生成量化的tfliteflatbuffer。優化

 

  有一個說明性的教程解釋瞭如何作。TensorFlowLite當前不支持在平臺上使用此技術部署,但計劃將其合併到通用TensorFlow工具中。blog

  訓練後量化的優點教程

  這種量化技術的好處包括:內存

  l模型尺寸減小約四倍。開發

  l在主要由卷積層組成的模型中執行速度提升10-50%。

  l是RNN模型速度的三倍。

  l因爲減小了內存和計算要求,大多數模型的功耗也會下降。

  下圖顯示了使用單核在GooglePixel2手機上幾個模型的模型尺寸減少,執行時間加速。咱們能夠看到優化後的模型幾乎小了四倍。

  

  加速和模型尺寸的減少不會對精度產生太大影響。啓動時小尺寸的模型可能會遭受更大的損失。這是一個比較:

  

  它是如何工做的?

  在幕後,它以減小參數精度(神經網絡權重)的方式來運行優化。從訓練時間32位浮點表達至更小更有效的8位整數表達中縮減模型尺寸。

  這些優化在結果模型中用固定和浮點算數混合的內核粗略地操做,以確保配對。這可以快速執行最重的計算,但精度較低。可是,最敏感的數據仍然是以高精度計算的,準確性較高。

相關文章
相關標籤/搜索