zoukankan      html  css  js  c++  java
  • (原)torch中的序列化

    转载请注明出处:

    http://www.cnblogs.com/darkknightzh/p/6591667.html

    参考网址:

    https://github.com/torch/torch7/blob/master/doc/serialization.md

    1. 数据与文件之间的序列化/反序列化操作

    1.1 torch.save(filename, object [, format, referenced])

    format可选binary(默认)和ascii。binary依赖操作系统,但更容易读写。ascii不依赖操作系统。

    referenced指定是否需要保存object references(https://github.com/torch/torch7/blob/master/doc/file.md#torch.File.referenced)。当保存时设置为true,则读取时若设置为false,则不能成功读取。

    说明:感觉如果要保存多个变量,需要使用列表:

    obj = {   -- arbitrary object
       mat = torch.randn(10,10),
       name = '10',
       test = {
          entry = 1
       }
    }
    
    torch.save('test.dat', obj)  -- save to disk

    1.2 [object] torch.load(filename [, format, referenced])

    format可选ascii,binary(默认),b32,b64。当保存到32/64位的系统上,可以使用b32/b64。

    obj = torch.load('test.dat')  -- given serialized object from section above, reload
    
    print(obj)
    -- will print:
    -- {[mat]  = DoubleTensor - size: 10x10
    --  [name] = string : "10"
    --  [test] = table - size: 0}

    2. 数据与字符串之间的序列化/反序列化操作

    2.1 [str] torch.serialize(object [, format])

    format可选binary(默认)和ascii,binary依赖操作系统,但更容易读写。ascii不依赖操作系统。

    obj = {   -- arbitrary object
       mat = torch.randn(10,10),
       name = '10',
       test = {
          entry = 1
       }
    }
    
    str = torch.serialize(obj)  -- serialize

    2.2 [object] torch.deserialize(str [, format])

    format可选ascii,binary(默认)。
    obj = torch.deserialize(str)  -- given serialized object from section above, deserialize
    
    print(obj)
    -- will print:
    -- {[mat]  = DoubleTensor - size: 10x10
    --  [name] = string : "10"
    --  [test] = table - size: 0}
  • 相关阅读:
    各个控件说明
    html常用
    abp.message
    ABP框架——单表实体流程
    AngularJS $http和$.ajax
    AngularJS ng-if使用
    AngularJS 多级下拉框
    AngularJS 计时器
    AngularJS table循环数据
    Python之待学习记录
  • 原文地址:https://www.cnblogs.com/darkknightzh/p/6591667.html
Copyright © 2011-2022 走看看