如何在 torch 中创建一个具有可变长度的二维列表?
2017-5-23 12:1:6
收藏:0
阅读:67
评论:2
我想创建一个可以在其中包含长度可变元素的二维列表,例如在 MATLAB 中,如果我有一个 10x10 的列表,我可以使用以下方式定义它:
z = cell(10,10)
并通过以下方式开始分配一些元素:
z{2}{3} = ones(3,1)
z{1}{1} = zeros(100,1)
z{1}{2} = []
z{1}{3} = randn(20,1)
...
在 torch 中,定义这样的空二维列表的最佳方法是什么?此外,有没有一种方法可以利用张量结构来做到这一点?
在 python 中,我可以通过如下方法定义一个空的 10x10 二维列表:
z = [[None for j in range(10)] for i in range(10)]
我认为,在 torch 中做类似的事情可能是这样的:
z = torch.Tensor(10,10)
for i=1,10 do
for j=1,10 do
z[{{i},{j}}] = torch.Tensor()
end
end
但是,这样做行不通,在一个张量内部定义一个张量似乎不是一个好主意...
这是对此处提出的问题的后续问题(但在链接中是用 python 提问的):Create 2D lists in python with variable length indexed vectors
点赞
用户1282043
从 Torch 的 Google 组论坛的回答中得知,表格是解决问题的方法:
z = {}
for i=1,10 do
z[i] = {}
for j=1,10 do
z[i][j] = torch.Tensor()
end
end
2016-08-26 18:59:00
评论区的留言会收到邮件通知哦~
推荐文章
- Lua 虚拟机加密load(string.dump(function)) 后执行失败问题如何解决
- 我想创建一个 Nginx 规则,禁止访问
- 如何将两个不同的lua文件合成一个 东西有点长 大佬请耐心看完 我是小白研究几天了都没搞定
- 如何在roblox studio中1:1导入真实世界的地形?
- 求解,lua_resume的第二次调用继续执行协程问题。
- 【上海普陀区】内向猫网络招募【Skynet游戏框架Lua后端程序员】
- SF爱好求教:如何用lua实现游戏内调用数据库函数实现账号密码注册?
- Lua实现网站后台开发
- LUA错误显式返回,社区常见的规约是怎么样的
- lua5.3下载库失败
- 请问如何实现文本框内容和某个网页搜索框内容连接,并把网页输出来的结果反馈到另外一个文本框上
- lua lanes多线程使用
- 一个kv数据库
- openresty 有没有比较轻量的 docker 镜像
- 想问一下,有大佬用过luacurl吗
- 在Lua执行过程中使用Load函数出现问题
- 为什么 neovim 里没有显示一些特殊字符?
- Lua比较两个表的值(不考虑键的顺序)
- 有个lua简单的项目,外包,有意者加微信 liuheng600456详谈,最好在成都
- 如何在 Visual Studio 2022 中运行 Lua 代码?

从我所阅读的文档来看,张量(tensors)仅支持基本数字数据类型。你将无法将张量用于你的预期用途。利用表格(tables)。
local function makeMatrix(initialVal, ...) local isfunc = type(initialVal) == "function" local dimtable = {...} local function helper(depth) if depth == 0 then return isfunc and initialVal() or initialVal else local plane = {} for i = 1, dimtable[depth] do plane[i] = helper(depth-1) end return plane end end return helper(#dimtable) end p = makeMatrix(0, 2, 3, 5) -- makes 3D matrix of size 2x3x5 with all elements initialized to 0 makeMatrix(torch.Tensor, m ,n)