请注意更新TensorFlow 2.0的旧代码
TensorFlow 2.0 將包含許多 API 變更,例如,對參數(shù)進行重新排序、重新命名符號和更改參數(shù)的默認(rèn)值。手動執(zhí)行所有這些變更不僅枯燥乏味,而且容易出錯。為簡化變更過程并讓您盡可能順暢地過渡到 TensorFlow 2.0,TensorFlow 工程團隊創(chuàng)建了實用程序?tf_upgrade_v2,可幫助您將舊代碼轉(zhuǎn)換至新 API。
60s測試:你是否適合轉(zhuǎn)型人工智能?
https://edu.csdn.net/topic/ai30?utm_source=cxrs_bw
傳送門:
tf_upgrade_v2:https://github.com/tensorflow/docs/blob/master/site/en/r2/guide/upgrade.md
?
使用 pip 安裝 ?TensorFlow 2.0 時,系統(tǒng)會自動添加 tf_upgrade_v2 實用程序。該程序可將現(xiàn)有的 TensorFlow 1.13 Python 腳本轉(zhuǎn)換為 TensorFlow 2.0,以幫助加快您的升級過程。
?
我們已嘗試自動化處理盡可能多的升級任務(wù),但腳本仍無法處理一些句法和風(fēng)格方面的變更。
?
某些 API 符號可能無法僅使用字符串替代方案簡單升級。為確保 TensorFlow 2.0 仍支持您的代碼,升級腳本加入了 compat.v1 模塊。此模塊將以等效的 tf.compat.v1.foo 引用代替表單 tf.foo 的調(diào)用。不過,建議您手動檢查此類替代方案,并盡快將其遷移至 tf.* 命名空間(代替 tf.compat.v1.* 命名空間)中的新 API。
?
此外,由于我們棄用了某些模塊(例如 tf.flags 和 tf.contrib),您將無法通過切換至 compat.v1 來實現(xiàn) TensorFlow 2.0 中的某些變更。升級使用這些模塊的代碼可能需要額外使用一個庫(如 absl.flags)或切換至 tensorflow/addons 中的軟件包。
?
傳送門:
tensorflow/addons:
https://github.com/tensorflow/addons
?
如果您想嘗試將模型從 TensorFlow 1.12 升級至 TensorFlow 2.0,請按照下方說明執(zhí)行操作:
?
首先,安裝 tf-nightly-2.0-preview / tf-nightly-gpu-2.0-preview。
注意:使用 pip 安裝 TensorFlow 1.13 及以上版本(包括 nightly 2.0 構(gòu)建版)時,系統(tǒng)會自動安裝 tf_upgrade_v2。
?
您可以在單個 Python 文件上運行升級腳本:
?
tf_upgrade_v2 --infile foo.py --outfile foo-upgraded.py
?
您也可以在目錄樹上運行升級腳本:
?
# upgrade the .py files and copy all the other files to the outtree
tf_upgrade_v2 --intree foo/ --outtree foo-upgraded/
?
# just upgrade the .py files
tf_upgrade_v2 --intree foo/ --outtree foo-upgraded/ --copyotherfiles False
?
此腳本還會列出詳細(xì)的變更,例如參數(shù)重命名:
?
?
?
?
添加關(guān)鍵字:
?
?
?
?
以及推薦進行的任何手動檢查情況:
?
?
?
?
所有這些信息將導(dǎo)出至主目錄的 report.txt 文件中。在 tf_upgrade_v2 運行升級后的腳本并將其導(dǎo)出后,您便可運行模型并進行檢查,以確保您的輸出與 TensorFlow 1.13 類似:
?
?
注意:
-
在運行此腳本前,請勿手動升級部分代碼。特別要注意的是,在對函數(shù)中的 tf.argmax 或 tf.batch_to_space 等參數(shù)進行重新排序后,腳本會錯誤地添加關(guān)鍵字參數(shù)并導(dǎo)致現(xiàn)有的代碼發(fā)生錯誤映射
?
?
-
此腳本不會對參數(shù)進行重新排序。相反,此腳本會將關(guān)鍵字參數(shù)添加至對自身參數(shù)進行重新排序的函數(shù)中
?
如要報告升級腳本錯誤或發(fā)出功能請求,請在 GitHub 上提交問題。
?
(本文為AI科技大本營轉(zhuǎn)載文章,轉(zhuǎn)載請聯(lián)系作者)
2019年人工智能系統(tǒng)學(xué):
https://edu.csdn.net/topic/ai30?utm_source=csdn_bw
?
群招募
?
掃碼添加小助手微信,回復(fù):公司+研究方向(學(xué)校+研究方向),邀你加入技術(shù)交流群。技術(shù)群審核較嚴(yán),敬請諒解。
推薦閱讀:
-
2018 Python開發(fā)者大調(diào)查:Python和JavaScript最配?
-
指紋鎖就安全了?防火防盜還得防AI
-
小米半年來最大調(diào)整:成立技術(shù)委員會,雷軍稱技術(shù)事關(guān)生死存亡
-
7種常見的機器學(xué)習(xí)算法的Python實現(xiàn)(附完整代碼)
-
程序員如何實現(xiàn)財富自由?
-
華為小米入場,能拯救樂視互聯(lián)網(wǎng)電視挖的坑嗎?
-
如果中本聰沒說錯,這場戰(zhàn)爭美國輸定了!
-
《流浪地球》票房:預(yù)測10億卻飚50億 ,數(shù)據(jù)預(yù)測為什么這么難
-
剛剛,阿里發(fā)布了一個重磅技術(shù)炸彈,70%的程序員受影響!
? ? ? ? ? ? ? ? ? ? ? ? ?
點擊“閱讀原文”,查看歷史精彩文章。
總結(jié)
以上是生活随笔為你收集整理的请注意更新TensorFlow 2.0的旧代码的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: tf.cast用法
- 下一篇: ISOOSI网络模型的通俗解析