跨越重重“障礙”,我從 PyTorch 轉換爲了 TensorFlow Lite

本文最初發表在 Towards Data Science 博客,經原作者 Ran Rubin 授權,InfoQ 中文站翻譯並分享。

本文作者分享了他在 PyTorch 到 TensorFlow 之間轉換的經驗,或許可以給我們一些啓發。

簡 介

我最近不得不將深度學習模型(MobileNetV2的變體)從PyTorch轉換爲TensorFlow Lite。這是一個漫長而複雜的旅程。需要跨越很多障礙才能成功。我發現自己從 StackOverflow 帖子和 GitHub 的問題中搜集了一些信息。我的目標是分享我的經驗,以幫助其他像我一樣“迷失”的人。

免責聲明:本文並非關於如何正確進行轉換的指南。我只想分享我的經驗,但我也有可能做錯(尤其是因爲我沒有 TensorFlow 的經驗)。

任 務

將深度學習模型(MobileNetV2 變體)從 PyTorch 轉換爲 TensorFlow Lite,轉換過程應該是這樣的:

PyTorch → ONNX → TensorFlow → TFLite

測 試

爲了測試轉換後的模型,我生成了一組大約 1000 個輸入張量,併爲每個模型計算了 PyTorch 模型的輸出。這個集合後來被用來測試每個轉換後的模型,方法是通過一個平均誤差度量,在整個集合中將它們的輸出與原始輸出進行比較。在相同的輸入下,平均誤差反映了在相同的輸入下,轉換後的模型輸出與原始 PyTorch 模型輸出相比有多大的不同。

原文鏈接:【https://www.infoq.cn/article/ACQFj4IqyKL48NEXoeox】。未經作者許可,禁止轉載。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章