最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

pytorch加載自定義網絡權重的實現

 更新時間:2020年01月07日 14:25:31   作者:wuming無名  
今天小編就為大家分享一篇pytorch加載自定義網絡權重的實現,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

在將自定義的網絡權重加載到網絡中時,報錯:

AttributeError: 'dict' object has no attribute 'seek'. You can only torch.load from a file that is seekable. Please pre-load the data into a buffer like io.BytesIO and try to load from it instead.

我們一步一步分析。

模型網絡權重保存額代碼是:torch.save(net.state_dict(),'net.pkl')

(1)查看獲取模型權重的源碼:

pytorch源碼:net.state_dict()

def state_dict(self, destination=None, prefix='', keep_vars=False):
  r"""Returns a dictionary containing a whole state of the module.

  Both parameters and persistent buffers (e.g. running averages) are
  included. Keys are corresponding parameter and buffer names.

  Returns:
    dict:
      a dictionary containing a whole state of the module

  Example::

    >>> module.state_dict().keys()
    ['bias', 'weight']

  """

將網絡中所有的狀態(tài)保存到一個字典中了,我自己構建的就是一個字典,沒問題!

(2)查看保存模型權重的源碼:

pytorch源碼:torch.save()

def save(obj, f, pickle_module=pickle, pickle_protocol=DEFAULT_PROTOCOL):
  """Saves an object to a disk file.

  See also: :ref:`recommend-saving-models`

  Args:
    obj: saved object
    f: a file-like object (has to implement write and flush) or a string
      containing a file name
    pickle_module: module used for pickling metadata and objects
    pickle_protocol: can be specified to override the default protocol

  .. warning::
    If you are using Python 2, torch.save does NOT support StringIO.StringIO
    as a valid file-like object. This is because the write method should return
    the number of bytes written; StringIO.write() does not do this.

    Please use something like io.BytesIO instead.

函數功能是將字典保存為磁盤文件(二進制數據),那么我們在torch.load()時,就是在內存中加載二進制數據,這就是報錯點。

解決方案:將字典保存為BytesIO文件之后,模型再net.load_state_dict()

#b為自定義的字典
torch.save(b,'new.pkl')
net.load_state_dict(torch.load(b))

解決方法很簡單,主要記錄解決思路。

以上這篇pytorch加載自定義網絡權重的實現就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • Python3批量創(chuàng)建Crowd用戶并分配組

    Python3批量創(chuàng)建Crowd用戶并分配組

    這篇文章主要介紹了Python3批量創(chuàng)建Crowd用戶并分配組,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-05-05
  • Python淺析多態(tài)與鴨子類型使用實例

    Python淺析多態(tài)與鴨子類型使用實例

    python是一門解釋語言,但是同java等靜態(tài)語言一樣,是可以通過繼承的方式實現多態(tài)。而且python還有一個自己的特殊實現多態(tài)的方法,就是通過鴨子類型,來實現多態(tài)
    2022-10-10
  • Python模塊Typing.overload的使用場景分析

    Python模塊Typing.overload的使用場景分析

    在 Python 中,typing.overload 是一個用于定義函數重載的裝飾器,函數重載是指在一個類中可以定義多個相同名字但參數不同的函數,使得在調用函數時可以根據參數的不同選擇不同的函數執(zhí)行,這篇文章主要介紹了Python模塊Typing.overload的使用,需要的朋友可以參考下
    2024-02-02
  • python機器學習案例教程——K最近鄰算法的實現

    python機器學習案例教程——K最近鄰算法的實現

    本篇文章主要介紹了python機器學習案例教程——K最近鄰算法的實現,詳細的介紹了K最近鄰算法的概念和示例,具有一定的參考價值,有興趣的可以了解一下
    2017-12-12
  • Python拼接微信好友頭像大圖的實現方法

    Python拼接微信好友頭像大圖的實現方法

    這篇文章主要介紹了Python拼接微信好友頭像大圖的實現方法,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-08-08
  • python-opencv-cv2.threshold()二值化函數的使用

    python-opencv-cv2.threshold()二值化函數的使用

    這篇文章主要介紹了python-opencv-cv2.threshold()二值化函數的使用,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • python numpy實現文件存取的示例代碼

    python numpy實現文件存取的示例代碼

    這篇文章主要介紹了python numpy實現文件存取的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-05-05
  • Python實現多線程并發(fā)請求測試的腳本

    Python實現多線程并發(fā)請求測試的腳本

    這篇文章主要為大家分享了一個Python實現多線程并發(fā)請求測試的腳本,文中的示例代碼簡潔易懂,具有一定的借鑒價值,需要的小伙伴可以了解一下
    2023-06-06
  • Python實現實時監(jiān)測可視化數據大屏

    Python實現實時監(jiān)測可視化數據大屏

    實時監(jiān)測的可視化數據大屏是一種非常有用的工具,可以幫助我們實時了解數據的變化和趨勢,下面我們將介紹如何使用Python代碼實現實時監(jiān)測的可視化數據大屏,需要的可以參考一下
    2023-06-06
  • python 提取html文本的方法

    python 提取html文本的方法

    在解決自然語言處理問題時,有時你需要獲得大量的文本集?;ヂ摼W是文本的最大來源,但是從任意HTML頁面提取文本是一項艱巨而痛苦的任務。本文將講述python高效提取html文本的方法
    2021-05-05

最新評論

日喀则市| 和林格尔县| 尖扎县| 塔河县| 五家渠市| 周宁县| 通渭县| 白山市| 武冈市| 潞西市| 襄汾县| 宁海县| 永和县| 康马县| 开平市| 迁西县| 汉沽区| 紫金县| 泰和县| 兴海县| 崇义县| 丹凤县| 崇仁县| 和田县| 南开区| 丹东市| 江阴市| 澎湖县| 东港市| 皮山县| 呼和浩特市| 和平县| 金寨县| 舟山市| 宜城市| 闵行区| 岱山县| 凤城市| 鄂伦春自治旗| 彭阳县| 南安市|