torch.Tensor

参考   torch.Tensor - 云+社区 - 腾讯云

目录

class torch.Tensor

new_tensor(data, dtype=None, device=None, requires_grad=False) → Tensor

new_full(size, fill_value, dtype=None, device=None, requires_grad=False) → Tensor

new_empty(size, dtype=None, device=None, requires_grad=False) → Tensor

new_ones(size, dtype=None, device=None, requires_grad=False) → Tensor

new_zeros(size, dtype=None, device=None, requires_grad=False) → Tensor

is_cuda

device

grad

ndim

T

abs() → Tensor

abs_() → Tensor

acos() → Tensor

acos_() → Tensor

add(value) → Tensor

add_(value) → Tensor

add_(value=1, other) -> Tensor

addbmm(beta=1, alpha=1, batch1, batch2) → Tensor

addbmm_(beta=1, alpha=1, batch1, batch2) → Tensor

addcdiv(value=1, tensor1, tensor2) → Tensor

addcdiv_(value=1, tensor1, tensor2) → Tensor

addcmul(value=1, tensor1, tensor2) → Tensor

addcmul_(value=1, tensor1, tensor2) → Tensor

addmm(beta=1, alpha=1, mat1, mat2) → Tensor

addmm_(beta=1, alpha=1, mat1, mat2) → Tensor

addmv(beta=1, alpha=1, mat, vec) → Tensor

addmv_(beta=1, alpha=1, mat, vec) → Tensor

addr(beta=1, alpha=1, vec1, vec2) → Tensor

addr_(beta=1, alpha=1, vec1, vec2) → Tensor

allclose(other, rtol=1e-05, atol=1e-08, equal_nan=False) → Tensor

apply_(callable) → Tensor

argmax(dim=None, keepdim=False) → LongTensor

argmin(dim=None, keepdim=False) → LongTensor

argsort(dim=-1, descending=False) → LongTensor

asin() → Tensor

asin_() → Tensor

as_strided(size, stride, storage_offset=0) → Tensor

atan() → Tensor

atan2(other) → Tensor

atan2_(other) → Tensor

atan_() → Tensor

backward(gradient=None, retain_graph=None, create_graph=False)[source]

baddbmm(beta=1, alpha=1, batch1, batch2) → Tensor

baddbmm_(beta=1, alpha=1, batch1, batch2) → Tensor

bernoulli(*, generator=None) → Tensor

bernoulli_(p=0.5, *, generator=None) → Tensor

bernoulli_(p_tensor, *, generator=None) → Tensor

bfloat16() → Tensor

bincount(weights=None, minlength=0) → Tensor

bitwise_not() → Tensor

bitwise_not_() → Tensor

bmm(batch2) → Tensor

bool() → Tensor

byte() → Tensor

cauchy_(median=0, sigma=1, *, generator=None) → Tensor

ceil() → Tensor

ceil_() → Tensor

char() → Tensor

cholesky(upper=False) → Tensor

cholesky_inverse(upper=False) → Tensor

cholesky_solve(input2, upper=False) → Tensor

chunk(chunks, dim=0) → List of Tensors

clamp(min, max) → Tensor

clamp_(min, max) → Tensor

clone() → Tensor

contiguous() → Tensor

copy_(src, non_blocking=False) → Tensor

cos() → Tensor

cos_() → Tensor

cosh() → Tensor

cosh_() → Tensor

cpu() → Tensor

cross(other, dim=-1) → Tensor

cuda(device=None, non_blocking=False) → Tensor

cumprod(dim, dtype=None) → Tensor

cumsum(dim, dtype=None) → Tensor

data_ptr() → int

dequantize() → Tensor

det() → Tensor

dense_dim() → int

detach()

detach_()

diag(diagonal=0) → Tensor

diag_embed(offset=0, dim1=-2, dim2=-1) → Tensor

diagflat(offset=0) → Tensor

diagonal(offset=0, dim1=0, dim2=1) → Tensor

fill_diagonal_(fill_value, wrap=False) → Tensor

digamma() → Tensor

digamma_() → Tensor

dim() → int

dist(other, p=2) → Tensor

div(value) → Tensor

div_(value) → Tensor

dot(tensor2) → Tensor

double() → Tensor

eig(eigenvectors=False) -> (Tensor, Tensor)

element_size() → int

eq(other) → Tensor

eq_(other) → Tensor

equal(other) → bool

erf() → Tensor

erf_() → Tensor

erfc() → Tensor

erfc_() → Tensor

erfinv() → Tensor

erfinv_() → Tensor

exp() → Tensor

exp_() → Tensor

expm1() → Tensor

expm1_() → Tensor

expand(*sizes) → Tensor

expand_as(other) → Tensor

exponential_(lambd=1, *, generator=None) → Tensor

fft(signal_ndim, normalized=False) → Tensor

fill_(value) → Tensor

flatten(input, start_dim=0, end_dim=-1) → Tensor

flip(dims) → Tensor

float() → Tensor

floor() → Tensor

floor_() → Tensor

fmod(divisor) → Tensor

fmod_(divisor) → Tensor

frac() → Tensor

frac_() → Tensor

gather(dim, index) → Tensor

ge(other) → Tensor

ge_(other) → Tensor

gels(A)[source]

geometric_(p, *, generator=None) → Tensor

geqrf() -> (Tensor, Tensor)

ger(vec2) → Tensor

get_device() -> Device ordinal (Integer)

gt(other) → Tensor

gt_(other) → Tensor

half() → Tensor

hardshrink(lambd=0.5) → Tensor

histc(bins=100, min=0, max=0) → Tensor

ifft(signal_ndim, normalized=False) → Tensor

index_add_(dim, index, tensor) → Tensor

index_add(dim, index, tensor) → Tensor

index_copy_(dim, index, tensor) → Tensor

index_copy(dim, index, tensor) → Tensor

index_fill_(dim, index, val) → Tensor

index_fill(dim, index, value) → Tensor

index_put_(indices, value, accumulate=False) → Tensor

index_put(indices, value, accumulate=False) → Tensor

index_select(dim, index) → Tensor

indices() → Tensor

int() → Tensor

int_repr() → Tensor

inverse() → Tensor

irfft(signal_ndim, normalized=False, onesided=True, signal_sizes=None) → Tensor

is_floating_point() → bool

is_leaf()

is_pinned()[source]

is_set_to(tensor) → bool

is_shared()[source]

is_signed() → bool

is_sparse()

item() → number

kthvalue(k, dim=None, keepdim=False) -> (Tensor, LongTensor)

le(other) → Tensor

le_(other) → Tensor

lerp(end, weight) → Tensor

lerp_(end, weight) → Tensor

log() → Tensor

log_() → Tensor

logdet() → Tensor

log10() → Tensor

log10_() → Tensor

log1p() → Tensor

log1p_() → Tensor

log2() → Tensor

log2_() → Tensor

log_normal_(mean=1, std=2, *, generator=None)

logsumexp(dim, keepdim=False) → Tensor

long() → Tensor

lstsq(A) -> (Tensor, Tensor)

lt(other) → Tensor

lt_(other) → Tensor

lu(pivot=True, get_infos=False)[source]

lu_solve(LU_data, LU_pivots) → Tensor

map_(tensor, callable)

masked_scatter_(mask, source)

masked_scatter(mask, tensor) → Tensor

masked_fill_(mask, value)

masked_fill(mask, value) → Tensor

masked_select(mask) → Tensor

matmul(tensor2) → Tensor

matrix_power(n) → Tensor

max(dim=None, keepdim=False) -> Tensor or (Tensor, Tensor)

mean(dim=None, keepdim=False) -> Tensor or (Tensor, Tensor)

median(dim=None, keepdim=False) -> (Tensor, LongTensor)

min(dim=None, keepdim=False) -> Tensor or (Tensor, Tensor)

mm(mat2) → Tensor

mode(dim=None, keepdim=False) -> (Tensor, LongTensor)

mul(value) → Tensor

mul_(value)

multinomial(num_samples, replacement=False, *, generator=None) → Tensor

mv(vec) → Tensor

mvlgamma(p) → Tensor

mvlgamma_(p) → Tensor

narrow(dimension, start, length) → Tensor

narrow_copy(dimension, start, length) → Tensor

ndimension() → int

ne(other) → Tensor

ne_(other) → Tensor

neg() → Tensor

neg_() → Tensor

nelement() → int

nonzero() → LongTensor

norm(p='fro', dim=None, keepdim=False, dtype=None)[source]

normal_(mean=0, std=1, *, generator=None) → Tensor

numel() → int

numpy() → numpy.ndarray

orgqr(input2) → Tensor

ormqr(input2, input3, left=True, transpose=False) → Tensor

permute(*dims) → Tensor

pin_memory() → Tensor

pinverse() → Tensor

pow(exponent) → Tensor

pow_(exponent) → Tensor

prod(dim=None, keepdim=False, dtype=None) → Tensor

put_(indices, tensor, accumulate=False) → Tensor

qr(some=True) -> (Tensor, Tensor)

qscheme() → torch.qscheme

q_scale() → float

q_zero_point() → int

random_(from=0, to=None, *, generator=None) → Tensor

reciprocal() → Tensor

reciprocal_() → Tensor

register_hook(hook)[source]

remainder(divisor) → Tensor

remainder_(divisor) → Tensor

renorm(p, dim, maxnorm) → Tensor

renorm_(p, dim, maxnorm) → Tensor

repeat(*sizes) → Tensor

repeat_interleave(repeats, dim=None) → Tensor

requires_grad()

requires_grad_(requires_grad=True) → Tensor

reshape(*shape) → Tensor

reshape_as(other) → Tensor

resize_(*sizes) → Tensor

resize_as_(tensor) → Tensor

retain_grad()[source]

rfft(signal_ndim, normalized=False, onesided=True) → Tensor

roll(shifts, dims) → Tensor

rot90(k, dims) → Tensor

round() → Tensor

round_() → Tensor

rsqrt() → Tensor

rsqrt_() → Tensor

scatter(dim, index, source) → Tensor

scatter_(dim, index, src) → Tensor

scatter_add_(dim, index, other) → Tensor

scatter_add(dim, index, source) → Tensor

select(dim, index) → Tensor

set_(source=None, storage_offset=0, size=None, stride=None) → Tensor

share_memory_()[source]

short() → Tensor

sigmoid() → Tensor

sigmoid_() → Tensor

sign() → Tensor

sign_() → Tensor

sin() → Tensor

sin_() → Tensor

sinh() → Tensor

sinh_() → Tensor

size() → torch.Size

slogdet() -> (Tensor, Tensor)

solve(A) → Tensor, Tensor

sort(dim=-1, descending=False) -> (Tensor, LongTensor)

split(split_size, dim=0)[source]

sparse_mask(input, mask) → Tensor

sparse_dim() → int

sqrt() → Tensor

sqrt_() → Tensor

squeeze(dim=None) → Tensor

squeeze_(dim=None) → Tensor

std(dim=None, unbiased=True, keepdim=False) → Tensor

stft(n_fft, hop_length=None, win_length=None, window=None, center=True, pad_mode='reflect', normalized=False, onesided=True)[source]

storage() → torch.Storage

storage_offset() → int

storage_type() → type

stride(dim) → tuple or int

sub(value, other) → Tensor

sub_(x) → Tensor

sum(dim=None, keepdim=False, dtype=None) → Tensor

sum_to_size(*size) → Tensor

svd(some=True, compute_uv=True) -> (Tensor, Tensor, Tensor)

symeig(eigenvectors=False, upper=True) -> (Tensor, Tensor)

t() → Tensor

t_() → Tensor

to(*args, **kwargs) → Tensor

to(dtype, non_blocking=False, copy=False) → Tensor

to(device=None, dtype=None, non_blocking=False, copy=False) → Tensor

to(other, non_blocking=False, copy=False) → Tensor

to_mkldnn() → Tensor

take(indices) → Tensor

tan() → Tensor

tan_() → Tensor

tanh() → Tensor

tanh_() → Tensor

tolist()

topk(k, dim=None, largest=True, sorted=True) -> (Tensor, LongTensor)

to_sparse(sparseDims) → Tensor

trace() → Tensor

transpose(dim0, dim1) → Tensor

transpose_(dim0, dim1) → Tensor

triangular_solve(A, upper=True, transpose=False, unitriangular=False) -> (Tensor, Tensor)

tril(k=0) → Tensor

tril_(k=0) → Tensor

triu(k=0) → Tensor

triu_(k=0) → Tensor

trunc() → Tensor

trunc_() → Tensor

type(dtype=None, non_blocking=False, **kwargs) → str or Tensor

type_as(tensor) → Tensor

unbind(dim=0) → seq

unfold(dimension, size, step) → Tensor

uniform_(from=0, to=1) → Tensor

unique(sorted=True, return_inverse=False, return_counts=False, dim=None)[source]

unique_consecutive(return_inverse=False, return_counts=False, dim=None)[source]

unsqueeze(dim) → Tensor

unsqueeze_(dim) → Tensor

values() → Tensor

var(dim=None, unbiased=True, keepdim=False) → Tensor

view(*shape) → Tensor

view_as(other) → Tensor

where(condition, y) → Tensor

zero_() → Tensor

class torch.BoolTensor

all()

all() → bool

all(dim, keepdim=False, out=None) → Tensor

any() → bool

any(dim, keepdim=False, out=None) → Tensor


torch.Tensor是一个包含单一数据类型元素的多维矩阵。Torch定义了9种CPU张量类型和9种GPU张量类型:

Data type

dtype

CPU tensor

GPU tensor

32-bit floating point

torch.float32 or torch.float

torch.FloatTensor

torch.cuda.FloatTensor

64-bit floating point

torch.float64 or torch.double

torch.DoubleTensor

torch.cuda.DoubleTensor

16-bit floating point

torch.float16 or torch.half

torch.HalfTensor

torch.cuda.HalfTensor

8-bit integer (unsigned)

torch.uint8

torch.ByteTensor

torch.cuda.ByteTensor

8-bit integer (signed)

torch.int8

torch.CharTensor

torch.cuda.CharTensor

16-bit integer (signed)

torch.int16 or torch.short

torch.ShortTensor

torch.cuda.ShortTensor

32-bit integer (signed)

torch.int32 or torch.int

torch.IntTensor

torch.cuda.IntTensor

64-bit integer (signed)

torch.int64 or torch.long

torch.LongTensor

torch.cuda.LongTensor

Boolean

torch.bool

torch.BoolTensor

torch.cuda.BoolTensor

torch.Tensor是默认张量类型的别名(torch.FloatTensor)。张量可以使用torch.tensor()构造函数从Python列表或序列中构造:

>>> torch.tensor([[1., -1.], [1., -1.]])
tensor([[ 1.0000, -1.0000],
        [ 1.0000, -1.0000]])
>>> torch.tensor(np.array([[1, 2, 3], [4, 5, 6]]))
tensor([[ 1,  2,  3],
        [ 4,  5,  6]])

警告:

通常复制数据,如果你有一个张量数据并且仅仅想改变它的requires_grad标记,使用requires_grad_()或detach()来避免复制。如果你有一个numpy数组并且想避免复制,使用torch.as_tensor()。指定数据类型的张量可以通过torch.dtype或者torch.device来构建或者张量创建op来构建。

>>> torch.zeros([2, 4], dtype=torch.int32)
tensor([[ 0,  0,  0,  0],
        [ 0,  0,  0,  0]], dtype=torch.int32)
>>> cuda0 = torch.device('cuda:0')
>>> torch.ones([2, 4], dtype=torch.float64, device=cuda0)
tensor([[ 1.0000,  1.0000,  1.0000,  1.0000],
        [ 1.0000,  1.0000,  1.0000,  1.0000]], dtype=torch.float64, device='cuda:0')

张量的内容可以通过Python的检索或者切片符号来访问和构建:

>>> x = torch.tensor([[1, 2, 3], [4, 5, 6]])
>>> print(x[1][2])
tensor(6)
>>> x[0][1] = 8
>>> print(x)
tensor([[ 1,  8,  3],
        [ 4,  5,  6]])

使用torch.Tensor.item()从包含单个值的张量中获得Python数值:

>>> x = torch.tensor([[1]])
>>> x
tensor([[ 1]])
>>> x.item()
1
>>> x = torch.tensor(2.5)
>>> x
tensor(2.5000)
>>> x.item()
2.5

张量可以用requires_grad=True来创建,这样torch.autograd记录对它们的操作,以便自动微分。

>>> x = torch.tensor([[1., -1.], [1., 1.]], requires_grad=True)
>>> out = x.pow(2).sum()
>>> out.backward()
>>> x.grad
tensor([[ 2.0000, -2.0000],
        [ 2.0000,  2.0000]])

每个张量都和torch.Storage相关,这保持了一个数据。张量类提供了一个多维,存储的条带视图,并定义其上的数值操作。

注意:

改变张量的方法用下划线后缀标记。例如,torch.FloatTensor.abs_()计算当前的绝对值并返回修改后的张量,而torch.FloatTensor.abs()计算结果得到一个新的张量。

注意:

为了改变已经存在的torch.device或者torch.dtype,考虑使用张量上的to()方法。

警告:

目前实施的torch.Tensor引入了内存开销,因此在有很多小张量的应用中可能会导致意外的高内存使用量。如果是这样,可以考虑使用一个大型结构。

class torch.Tensor

There are a few main ways to create a tensor, depending on your use case.

有几种主要的方式来创建一个张量,取决于你使用的情况:

  • 创建一个提前存在数据的张量,使用torch.tensor()。
  • 创建一个指定大小的张量,使用torch.* 张量创建op。
  • 创建一个和其他张量具有相同尺寸的张量(相似的类型),使用torch.*_like张量创建op(Creation Ops)。
  • 创建一个和其他张量具有相同类型但是尺寸不同的张量,使用tensor.new_*操作ops。

new_tensor(data, dtype=None, device=None, requires_grad=False) → Tensor

以数据作为张量数据返回一个新的张量。默认情况下,返回的张量数据和这个张量的torch.dtype和torch.device相同。

警告:

new_tensor()通常复制这个数据。如果你有一个张量数据并且想避免复制,使用torch.Tensor.requires_grad_()或torch.Tensor.detach()。如果你有numpy数据并且想避免复制,使用torch.from_numpy()。

警告:

当数据是一个张量x,new_tensor()从它所传递的内容中读出“数据”,并且构造叶变量。因此,tensor.new_tensor(x)和x.clone()相等,并且tensor.new_tensor(x, requires_grad=True)和x.clone().detach().requires_grad_(True)相等。同推荐使用clone()和detach()。

参数:

  • data (array_like) – The returned Tensor copies data. 返回的张量复制数据data。

  • dtype (torch.dtype, optional) – 返回数期望的类型。默认情况下:和这个张量的torch.dtype相同。

  • device (torch.device, optional) – 返回张量期望的设备。默认:如果没有的话,和这个张量相同。

  • requires_grad (bool, optional) – 在返回的张量上如果autograd是推荐的,默认:Fasle

例:

>>> tensor = torch.ones((2,), dtype=torch.int8)
>>> data = [[0, 1], [2, 3]]
>>> tensor.new_tensor(data)
tensor([[ 0,  1],
        [ 2,  3]], dtype=torch.int8)

new_full(size, fill_value, dtype=None, device=None, requires_grad=False) → Tensor

返回一个size的张量,size用fill_value填充。默认情况下,返回张量和这个张量的torch.dtype和torch.device相等。

参数:

  • fill_value (scalar) – 填充输出张量的数。

  • dtype (torch.dtype, optional) – 返回张量的期望type。默认:如果没有的话,和这个张量的torch.dtype相同。

  • device (torch.device, optional) – 返回张量的期望设备,默认:如果没有的话,和这个张量的torch.device相同。

  • requires_grad (bool, optional) – 在返回张量上autograd是否应该推荐操作。默认:False。

例:

>>> tensor = torch.ones((2,), dtype=torch.float64)
>>> tensor.new_full((3, 4), 3.141592)
tensor([[ 3.1416,  3.1416,  3.1416,  3.1416],
        [ 3.1416,  3.1416,  3.1416,  3.1416],
        [ 3.1416,  3.1416,  3.1416,  3.1416]], dtype=torch.float64)

new_empty(size, dtype=None, device=None, requires_grad=False) → Tensor

返回一个size的张量,size用未初始化的数据填充。默认情况下,返回的张量和这个张量具有相同的torch.dtype和torch.device。

参数:

  • dtype (torch.dtype, optional) – 返回张量的期望类型。默认:如果没有的话,和这个张量的torch.dtype相同。

  • device (torch.device, optional) – 返回张量期望的设备。默认:和这个张量的torch.device相同。

  • requires_grad (bool, optional) – 再返回的张量上autograd是否应该记录操作,默认:False。

例:

>>> tensor = torch.ones(())
>>> tensor.new_empty((2, 3))
tensor([[ 5.8182e-18,  4.5765e-41, -1.0545e+30],
        [ 3.0949e-41,  4.4842e-44,  0.0000e+00]])

new_ones(size, dtype=None, device=None, requires_grad=False) → Tensor

返回size的张量,size用1填充。默认情况下,返回的张量和这个张量具有相同的torch.dtype和torch.device。

参数:

  • fill_value (scalar) – 填充输出张量的数。

  • dtype (torch.dtype, optional) – 返回张量的期望type。默认:如果没有的话,和这个张量的torch.dtype相同。

  • device (torch.device, optional) – 返回张量的期望设备,默认:如果没有的话,和这个张量的torch.device相同。

  • requires_grad (bool, optional) – 在返回张量上autograd是否应该推荐操作。默认:False。

例:

>>> tensor = torch.tensor((), dtype=torch.int32)
>>> tensor.new_ones((2, 3))
tensor([[ 1,  1,  1],
        [ 1,  1,  1]], dtype=torch.int32)

new_zeros(size, dtype=None, device=None, requires_grad=False) → Tensor

返回size的张量,size用0填充。默认情况下,返回的张量和这个张量具有相同的torch.dtype和torch.device。

参数:

  • fill_value (scalar) – 填充输出张量的数。

  • dtype (torch.dtype, optional) – 返回张量的期望type。默认:如果没有的话,和这个张量的torch.dtype相同。

  • device (torch.device, optional) – 返回张量的期望设备,默认:如果没有的话,和这个张量的torch.device相同。

  • requires_grad (bool, optional) – 在返回张量上autograd是否应该推荐操作。默认:False。

Example:

>>> tensor = torch.tensor((), dtype=torch.float64)
>>> tensor.new_zeros((2, 3))
tensor([[ 0.,  0.,  0.],
        [ 0.,  0.,  0.]], dtype=torch.float64)

is_cuda

如果张量存储在GPU上的话就为真,否则为假。

device

torch.devic来表示张量在哪。

grad

默认情况下,属性为none,在第一次调用backward()为self计算梯度时成为一个张量。然后,该属性将包含计算得到的梯度,对backward()的未来调用将在其中累积(添加)梯度。

ndim

dim()的别名。

T

维度转置后的张量。

如果n是x中的维度数,x.T等于x.permute(n-1, n-2, ..., 0)

abs() → Tensor

查看torch.abs()

abs_() → Tensor

abs()的原地版本

acos() → Tensor

查看torch.acos()

acos_() → Tensor

acos()的原地版本

add(value) → Tensor

add(value=1, other) -> Tensor

查看torch.add()

add_(value) → Tensor

add_(value=1, other) -> Tensor

add()的原地版本

addbmm(beta=1, alpha=1, batch1, batch2) → Tensor

查看torch.addbmm()

addbmm_(beta=1, alpha=1, batch1, batch2) → Tensor

addbmm()的原地版本

addcdiv(value=1, tensor1, tensor2) → Tensor

查看torch.addcdiv()

addcdiv_(value=1, tensor1, tensor2) → Tensor

addcdiv()的原地版本

addcmul(value=1, tensor1, tensor2) → Tensor

查看torch.addcmul()

addcmul_(value=1, tensor1, tensor2) → Tensor

addcmul()的原地版本

addmm(beta=1, alpha=1, mat1, mat2) → Tensor

查看torch.addmm()

addmm_(beta=1, alpha=1, mat1, mat2) → Tensor

addmm()的原地版本

addmv(beta=1, alpha=1, mat, vec) → Tensor

查看torch.addmv()

addmv_(beta=1, alpha=1, mat, vec) → Tensor

addmv()的原地版本

addr(beta=1, alpha=1, vec1, vec2) → Tensor

查看torch.addr()

addr_(beta=1, alpha=1, vec1, vec2) → Tensor

addr()的原地版本

allclose(other, rtol=1e-05, atol=1e-08, equal_nan=False) → Tensor

查看torch.allclose()

apply_(callable) → Tensor

在张量中对每个元素使用函数callable(),用callable返回的值替换每个元素。

注意:

这个函数仅仅在CPU中使用,并且不应该在需要高性能的代码章节中使用。

argmax(dim=None, keepdim=False) → LongTensor

查看torch.argmax()

argmin(dim=None, keepdim=False) → LongTensor

查看torch.argmin()

argsort(dim=-1, descending=False) → LongTensor

查看函数torch.argsort

asin() → Tensor

查看torch.asin()

asin_() → Tensor

asin()的原地版本

as_strided(size, stride, storage_offset=0) → Tensor

查看torch.as_strided()

atan() → Tensor

查看torch.atan()

atan2(other) → Tensor

查看torch.atan2()

atan2_(other) → Tensor

atan2()的原地版本

atan_() → Tensor

atan()的原地版本

backward(gradient=None, retain_graph=None, create_graph=False)[source]

计算当前张量关于图等级的梯度。图用链式法则求导。如果张量是一个非标量(例如,它的数据超过了一个)并且需要梯度,函数需要额外指定梯度。应该是一个匹配类型和位置的张量,包含关于self的微分函数的梯度。函数在叶中累积梯度-你也许需要在调用它之间置零。

参数:

  • gradient (Tensor or None) – 关于张量的梯度。如果它是一个张量,它将自动转换成不需要梯度的张量,除非create_graph为真。对标量张量不能指定任何值或者不需要梯度的张量。如果需要接受空值,这个参数是可选的。

  • retain_graph (bool, optional) – 如果为假,用来计算梯度的的图将被释放。请注意,在几乎所有情况下,不需要将此选项设置为True,而且通常可以以一种更有效的方式进行处理。默认值为create_graph。

  • create_graph (bool, optional) –  如果为真,则构造导数图,允许计算高阶导数。默认值为False。

baddbmm(beta=1, alpha=1, batch1, batch2) → Tensor

查看torch.baddbmm()

baddbmm_(beta=1, alpha=1, batch1, batch2) → Tensor

baddbmm()的原地版本

bernoulli(*, generator=None) → Tensor

返回一个张量,其中每个result[i]从Bernoulli(self[i])。self必须为浮点数类型,结果具有相同的dtype。查看torch.bernoulli()

bernoulli_(p=0.5, *, generator=None) → Tensor

将self的每个位置用Bernoulli(p)独立的采样填充。self可以是积分的dtype。

bernoulli_(p_tensor, *, generator=None) → Tensor

p_tensor应该是一个包含概率的张量,用来产生二进制的随机数。self的i^{th}个元素必须设置成Bernoulli(p_tensor[i])的采样值。self可以有dtype, 但是p_tensor必须有浮点数的dtype。也看bernoulli() torch.bernoulli()。

bfloat16() → Tensor

self.bfloat16()和self.to(torch.bfloat16)相等,查看to()

bincount(weights=None, minlength=0) → Tensor

查看torch.bincount()

bitwise_not() → Tensor

查看torch.bitwise_not()

bitwise_not_() → Tensor

bitwise_not()的原地版本

bmm(batch2) → Tensor

查看torch.bmm()

bool() → Tensor

self.bool()self.to(torch.bool)相等,查看to()

byte() → Tensor

self.byte()和self.to(torch.uint8)相等, 查看to()

cauchy_(median=0, sigma=1, *, generator=None) → Tensor

将张量用柯西分布得到的数填充:

                                 

ceil() → Tensor

查看torch.ceil()

ceil_() → Tensor

ceil()的原地版本

char() → Tensor

self.char()self.to(torch.int8)相等,查看to()

cholesky(upper=False) → Tensor

查看torch.cholesky()

cholesky_inverse(upper=False) → Tensor

查看torch.cholesky_inverse()

cholesky_solve(input2, upper=False) → Tensor

查看torch.cholesky_solve()

chunk(chunks, dim=0) → List of Tensors

查看torch.chunk()

clamp(min, max) → Tensor

查看torch.clamp()

clamp_(min, max) → Tensor

clamp()的原地版本

clone() → Tensor

返回self张量的拷贝,拷贝具有和self相同的尺寸和数据类型。

注意:

不像copy_(),这个函数在计算图中推荐。传播到克隆张量上的梯度将会传播到原始张量上。

contiguous() → Tensor

Returns a contiguous tensor containing the same data as self tensor. If self tensor is contiguous, this function returns the self tensor.

返回包含和self数据相同数据的原始张量。如果self张量是连续的,这个函数返回self张量。

copy_(src, non_blocking=False) → Tensor

Copies the elements from src into self tensor and returns self.

从src复制元素到self张量,并且返回self。src张量必须和self张量可广播。它可以是不同的数据类型或驻留在不同的设备上。

参数:

  • src (Tensor) – 复制来的原始张量

  • non_blocking (bool) – 如果为真,并且在CPU和GPU之间复制,复制关于host是异步的。对其他情况,这个参数无效。

cos() → Tensor

查看torch.cos()

cos_() → Tensor

cos()的原地版本

cosh() → Tensor

查看torch.cosh()

cosh_() → Tensor

cosh()的原地版本

cpu() → Tensor

Returns a copy of this object in CPU memory.

在CPU内存中返回这个对象的复制。如果目标已经在CPU内存中存在,就不执行复制,并且返回原始对象。

cross(other, dim=-1) → Tensor

查看torch.cross()

cuda(device=None, non_blocking=False) → Tensor

在CUDA内存中返回这个对象的复制。如果这个对象已经在CUDA内存中存在,并且不在当前的设备上,不进行复制并且返回原始对象。

参数:

  • device (torch.device) – 目标GPU设备,默认是目前的GPU设备。

  • non_blocking (bool) – 如果为真,并且在CPU和GPU之间复制,复制关于host是异步的。对其他情况,这个参数无效。

cumprod(dim, dtype=None) → Tensor

查看torch.cumprod()

cumsum(dim, dtype=None) →

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Wanderer001

ROIAlign原理

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值