[英]keras.models.load_model takes too long to import
我有一個 python 項目,我在其中導入 keras.models.load_model:
from keras.models import load_model
這會導致我的項目在 3 到 4 秒內啟動,如何減少導入時間?
根據本文的基准,保存權重的格式會影響 model 實例化和加載保存的權重的速度。
似乎.h5
格式比SavedModel
格式更快。 但是,如果速度對於您的項目的 function 來說真的很重要,那么您可能需要考慮采取以下步驟之一,盡管它肯定涉及一些工作:
同意@evantkchong。
h5
格式是 SavedModel 的輕量級替代方案。 由於它重量輕,加載速度比SavedModel
或tf
格式快。 但是,有一些重要的限制需要考慮。
如果您的 model 很簡單,則以h5
格式保存並加載它是更好的選擇。 但是,如果您有復雜的自定義 model,那么SavedModel
/ tf
格式會更好。
以下來自Tensorflow網站
- 通過 model.add_loss() 和 model.add_metric() 添加的外部損失和指標不會保存(與 SavedModel 不同)。 如果您在 model 上有此類損失和指標,並且您想恢復訓練,則需要在加載 model 后自行添加這些損失。 請注意,這不適用於通過 self.add_loss() 和 self.add_metric() 在層內創建的損失/指標。 只要圖層被加載,這些損失和指標就會被保留,因為它們是圖層調用方法的一部分。
- 自定義層等自定義對象的計算圖不包含在保存的文件中。 在加載時,Keras 將需要訪問這些對象的 Python 類/函數,以重建 model。 請參閱自定義對象。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.