如何从Torch/Lua的大矩阵中提取矩阵

在 torch7 / lua 中,有一个矩阵:

[  1,  2,  3,  4;
   5,  6,  7,  8;
   9, 10, 11, 12;
  13, 14, 15, 16  ]

如何提取它的子矩阵:

[  6,  7;
  10, 11  ]

以及如何通过矩阵运算重写它:

[  1,  2,  3,  4;
   5, 78, 66,  8;
   9, 45, 21, 12;
  13, 14, 15, 16  ]

谢谢。

点赞
用户5118777
用户5118777
矩阵操作

matrix:sub(2,3,2,3)

z = torch.Tensor({{78,66},{45,21}})

matrix:sub(2,3,2,3):copy(z)
矩阵操作

# 提取 matrix 的第 2 到第 3 行,第 2 到第 3 列的部分矩阵
matrix:sub(2,3,2,3)

# 定义一个 2x2 的新 Tensor
z = torch.Tensor({{78,66},{45,21}})

# 将新 Tensor 的值覆盖 matrix 的第 2 到第 3 行,第 2 到第 3 列的部分矩阵
matrix:sub(2,3,2,3):copy(z)
2015-11-30 08:55:25