码迷,mamicode.com
首页 > 其他好文 > 详细

Torch7学习笔记(三)Sequencialization

时间:2015-09-21 19:07:25      阅读:188      评论:0      收藏:0      [点我收藏+]

标签:

1.序列化

Torch提供4种高级方法来序列化或者反序列化任意Lua/Torch对象。这些方法都是从File对象抽象出来的,为了方便操作而创建。

 

前两种方法用来从文件序列化或者反序列化的:

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

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

 

下面两个函数是从字符串中序列化或者反序列化的:

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

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

 

序列化成文件可用于保存任意类型数据结构,共享之类的。序列化为字符串的好处在于数据结构可以保存在数据库中,或者第三方软件中。

 

下面详细讲解各个函数的用法。

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

把object对象写入文件filename中,format可选为ascii和binary,默认是binary。二进制类型是与平台相关的,但是很紧凑并且读写速度很快。ASCII类型与平台无关,可以跨平台共享。

 

-- arbitrary object:

obj = {

   mat = torch.randn(10,10),

   name = ‘10‘,

   test = {

      entry = 1

   }

}

 

-- save to disk:

torch.save(‘test.dat‘, obj)

 

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

从文件中读取对象。

 

-- given serialized object from section above, reload:

obj = torch.load(‘test.dat‘)

 

print(obj)

-- will print:

-- {[mat]  = DoubleTensor - size: 10x10

--  [name] = string : "10"

--  [test] = table - size: 0}

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

将对象序列化为字符串(

-- arbitrary object:

obj = {

   mat = torch.randn(10,10),

   name = ‘10‘,

   test = {

      entry = 1

   }

}

 

-- serialize:

str = torch.serialize(obj)

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

从字符串中反序列化对象,默认仍然是binary的。

-- given serialized object from section above, deserialize:

obj = torch.deserialize(str)

 

print(obj)

-- will print:

-- {[mat]  = DoubleTensor - size: 10x10

--  [name] = string : "10"

--  [test] = table - size: 0}

 

Torch7学习笔记(三)Sequencialization

标签:

原文地址:http://www.cnblogs.com/crossing/p/4826679.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!