torch中与numpy中对矩阵操作的类似函数对比

操作PyTorch函数NumPy函数
矩阵形状tensor.shape or tensor.size()array.shape
改变形状tensor.view(shape) or tensor.reshape(shape)array.reshape(shape)
矩阵转置tensor.t() (2D) or tensor.permute(*dims)array.T or array.transpose(*axes)
矩阵乘法torch.matmul(tensor1, tensor2) or tensor1 @ tensor2numpy.matmul(array1, array2) or array1 @ array2
元素级乘法tensor1 * tensor2array1 * array2
矩阵加法tensor1 + tensor2array1 + array2
矩阵减法tensor1 - tensor2array1 - array2
矩阵求和torch.sum(tensor, dim)numpy.sum(array, axis)
广播自动应用自动应用
求平均torch.mean(tensor, dim)numpy.mean(array, axis)
求最大值torch.max(tensor, dim)numpy.max(array, axis)
求最小值torch.min(tensor, dim)numpy.min(array, axis)
条件筛选tensor[condition]array[condition]
连接矩阵torch.cat(tensors, dim)numpy.concatenate(arrays, axis)
堆叠矩阵torch.stack(tensors, dim)numpy.stack(arrays, axis)
按元素求指数torch.exp(tensor)numpy.exp(array)
对角矩阵torch.diag(tensor)numpy.diag(array)
逐元素应用函数torch.apply_(func)numpy.apply_along_axis(func, axis, array)
切片tensor[start:stop:step]array[start:stop:step]
选取特定索引torch.index_select(tensor, dim, index)array.take(indices, axis)
转换为其他数据类型tensor.type(dtype)array.astype(dtype)
创建矩阵torch.tensor(data)numpy.array(data)
创建单位矩阵torch.eye(n)numpy.eye(n)
创建全零矩阵torch.zeros(shape)numpy.zeros(shape)
创建全一矩阵torch.ones(shape)numpy.ones(shape)
创建随机矩阵torch.rand(shape)numpy.random.rand(*shape)
创建正态分布随机矩阵torch.randn(shape)numpy.random.randn(*shape)
创建等间隔数值torch.linspace(start, end, steps)numpy.linspace(start, end, num)
创建等间隔整数torch.arange(start, end, step)numpy.arange(start, stop, step)
矩阵拼接torch.cat([tensor1, tensor2], dim)numpy.concatenate([array1, array2], axis)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值