torch7:在行长超过 80 个字符的文本文件中打印矩阵
torch7 : print matrix in text file with lines longer than 80 characters
我正在尝试恢复此 NN 的参数:
nn.Sequential {
[input -> (1) -> (2) -> (3) -> (4) -> (5) -> (6) -> output]
(1): nn.Linear(4 -> 200)
(2): nn.Tanh
(3): nn.Linear(200 -> 200)
(4): nn.Tanh
(5): nn.Linear(200 -> 3)
(6): nn.LogSoftMax
}
使用此代码:
print(mlp:get(1).weight)
print(mlp:get(1).bias)
print(mlp:get(3).weight)
print(mlp:get(3).bias)
print(mlp:get(5).weight)
print(mlp:get(5).bias)
使用此命令行将输出 .lua 文件保存到文本文件时:
>>th 'MyScript.lua' > NNParameters.txt
我将所有权重矩阵包装成每段六列(第 1 至 6 列......第 193 至 198 列......第 199 至 200 列)。
有什么方法可以防止文本被换行并仅在一个块中显示权重矩阵?
谢谢。
我想你真正想做的是保存参数,以便稍后加载它们?既然如此,请看这个:
https://github.com/torch/torch7/blob/master/doc/serialization.md
printT = function(t)
t = t:view(-1)
for i=1,t:nElement() do
io.write(t[i] .. ',')
end
end
printT(mlp:get(1).weight)
printT(mlp:get(1).bias)
printT(mlp:get(3).weight)
printT(mlp:get(3).bias)
printT(mlp:get(5).weight)
printT(mlp:get(5).bias)
我正在尝试恢复此 NN 的参数:
nn.Sequential {
[input -> (1) -> (2) -> (3) -> (4) -> (5) -> (6) -> output]
(1): nn.Linear(4 -> 200)
(2): nn.Tanh
(3): nn.Linear(200 -> 200)
(4): nn.Tanh
(5): nn.Linear(200 -> 3)
(6): nn.LogSoftMax
}
使用此代码:
print(mlp:get(1).weight)
print(mlp:get(1).bias)
print(mlp:get(3).weight)
print(mlp:get(3).bias)
print(mlp:get(5).weight)
print(mlp:get(5).bias)
使用此命令行将输出 .lua 文件保存到文本文件时:
>>th 'MyScript.lua' > NNParameters.txt
我将所有权重矩阵包装成每段六列(第 1 至 6 列......第 193 至 198 列......第 199 至 200 列)。
有什么方法可以防止文本被换行并仅在一个块中显示权重矩阵?
谢谢。
我想你真正想做的是保存参数,以便稍后加载它们?既然如此,请看这个:
https://github.com/torch/torch7/blob/master/doc/serialization.md
printT = function(t)
t = t:view(-1)
for i=1,t:nElement() do
io.write(t[i] .. ',')
end
end
printT(mlp:get(1).weight)
printT(mlp:get(1).bias)
printT(mlp:get(3).weight)
printT(mlp:get(3).bias)
printT(mlp:get(5).weight)
printT(mlp:get(5).bias)