成人av在线资源一区,亚洲av日韩av一区,欧美丰满熟妇乱XXXXX图片,狠狠做五月深爱婷婷伊人,桔子av一区二区三区,四虎国产精品永久在线网址,国产尤物精品人妻在线,中文字幕av一区二区三区欲色
    您正在使用IE低版瀏覽器,為了您的雷峰網賬號安全和更好的產品體驗,強烈建議使用更快更安全的瀏覽器
    此為臨時鏈接,僅用于文章預覽,將在時失效
    人工智能開發者 正文
    發私信給楊鯉萍
    發送

    0

    TensorFlow 模型優化工具包:模型大小減半,精度幾乎不變!

    本文作者: 楊鯉萍 2019-08-09 11:31
    導語:文末附有 TensorFlow 官方給出的教程地址!

    雷鋒網 AI 開發者按:近日,TensorFlow 強勢推出能將模型規模壓縮卻幾乎不影響精度的半精度浮點量化(float16 quantization)工具。小體積、高精度,還能夠有效的改善 CPU 和硬件加速器延遲。TensorFlow 發出相應的文章對該工具做了簡要的說明,雷鋒網 AI 開發者將其整理編譯如下。

    TensorFlow 模型優化工具包:模型大小減半,精度幾乎不變!

    Float16 Quantization

    我們非常高興能夠將訓練后的 float16 quantization 作為模型優化工具包(Model Optimization Toolkit)的一部分。這套工具包括了:

    在計算中,半精度是二進制浮點計算機數字格式,占用計算機存儲器中的 16 位。在 IEEE 754-2008 標準中,16 位 base-2 格式稱為 binary16。它用于在高精度對于執行算術計算不是必需的應用中存儲浮點值,并且 IEEE 754 標準將 binary16 指定為具有以下格式:

    • Sign bit(符號位): 1 bit

    • Exponent width(指數位寬): 5 bits

    • Significand precision(尾數精度): 11 bits (有10位被顯式存儲)

    TensorFlow 模型優化工具包:模型大小減半,精度幾乎不變!

    圖 1  IEEE 754 標準下 binary16 的格式

    訓練后的 float16 quantization 減少了 TensorFlow Lite 模型的大小(高達 50%),同時以少量的精度損失為代價。它將模型常量(如權重和偏差值)從全精度浮點(32 位)量化為減少精度的浮點數據類型(IEEE FP16)。

    訓練后的 float16 quantization 是量化 TensorFlow Lite 模型很好的方法,因為它對精度的影響極小并且能夠使得模型大小顯著減小。在這里可以通過查看該文檔(包括一個新的浮動圖表,https://www.tensorflow.org/lite/performance/post_training_quantization),以幫助你了解不同的量化選項和場景。

    TensorFlow 模型優化工具包:模型大小減半,精度幾乎不變!

    圖 2 幫助確定合適量化場景的決策樹

    降低精度的收益

    尤其是在部署到邊緣時,降低精度將產生很大的收益。

    • 模型尺寸減少 2 倍。模型中的所有常量值都存儲在 16 位浮點數而不是 32 位浮點數中;由于這些常量值通常在整個模型尺寸中占主導地位,因此通常會將模型的尺寸減小約一半。

    • 精確度損失可忽略不計。深度學習模型通常能夠在使用相較于最初訓練時更少精確度的情況下,產生良好的推理結果。并且在我們對多個模型的實驗中,我們發現推理質量幾乎沒有損失。例如圖 4 中,MobileNet V2 top 1 的測試結果顯示,其精度降低值小于 0.03%。

    模型尺寸測試結果

    訓練后的 float16 quantization 對精度的影響很小,并可以使得深度學習模型的大小減小約 2 倍。

    以下是在 MobileNet V1 和 V2 模型以及 MobileNet SSD 模型的一些測試結果。其中,MobileNet v1 和 v2 的結果基于 ImageNet 圖像識別任務測得,而 MobileNet SSD 模型則在 COCO 目標檢測任務上評估而得。

    TensorFlow 模型優化工具包:模型大小減半,精度幾乎不變!

    圖 3 不同模型下模型大小變化

    模型精度測試結果

    在 ILSVRC 2012 圖像分類任務中,我們評估了標準 Mobilenet Float32 模型(和 FP16 變體)。在 COCO 目標檢測任務中,我們對 Mobilenet SSD float32 模型及其 fp16 變體進行了評估。

    TensorFlow 模型優化工具包:模型大小減半,精度幾乎不變!

    圖 4 不同模型下精度損失測試結果

    如何使用 float16 quantization 工具

    用戶可以在 TensorFlow Lite converter 上指定訓練后的 float16 quantization,即使用經過訓練的 float32 模型,將優化設置為 DEFAULT,然后再將目標規范支持的類型設置為 float16 常量。

    TensorFlow 模型優化工具包:模型大小減半,精度幾乎不變!

    圖 5 模型參數相關設置

    轉換模型后,用戶就可以像任何其它 TensorFlow Lite 模型那樣直接運行該模型了。默認情況下,模型將在 CPU 上運行,通過將 16 位參數「上采樣」為 32 位,然后在標準 32 位浮點運算中執行操作。在今后的優化過程中,我們也希望能夠有更多的硬件支持加速 fp16 計算,這樣半精度值就不再需要進行「上采樣」的操作,而是直接進行計算。

    同時,用戶還可以在 GPU 上運行模型。我們已經增強了 TensorFlow Lite GPU 代理,以接收 16 位精度參數并直接運行(而無需像在 CPU 上那樣先進行轉換)。

    在應用程序中,用戶可以通過 TfLiteGpuDelegateCreate 函數(文檔)創建 GPU 代理。需要注意的是在為代理指定選項時,請確保將 precision_loss_allowed 設置為 1,從而使其能夠在 GPU 上直接使用 float16 操作。

    TensorFlow 模型優化工具包:模型大小減半,精度幾乎不變!

    圖 6 在 GUP 上運行模型的參數設置

    有關 GPU 委托的概述,可以參閱我們之前的帖子(https://medium.com/tensorflow/tensorflow-lite-now-faster-with-mobile-gpus-developer-preview-e15797e6dee7);如果想進一步了解該工具,可以在 CoLab 教程中查看 float16 quantization 工具的使用示例。

    原文鏈接:

    https://medium.com/tensorflow/tensorflow-model-optimization-toolkit-float16-quantization-halves-model-size-cc113c75a2fa  

    CoLab 教程:

    https://github.com/tensorflow/tensorflow/blob/master/tensorflow/lite/g3doc/performance/post_training_float16_quant.ipynb  

    雷鋒網 AI 開發者

    雷峰網原創文章,未經授權禁止轉載。詳情見轉載須知

    TensorFlow 模型優化工具包:模型大小減半,精度幾乎不變!

    分享:
    相關文章
    當月熱門文章
    最新文章
    請填寫申請人資料
    姓名
    電話
    郵箱
    微信號
    作品鏈接
    個人簡介
    為了您的賬戶安全,請驗證郵箱
    您的郵箱還未驗證,完成可獲20積分喲!
    請驗證您的郵箱
    立即驗證
    完善賬號信息
    您的賬號已經綁定,現在您可以設置密碼以方便用郵箱登錄
    立即設置 以后再說