def rename_(self, *names, **rename_map): # Note [rename_ / rename API] # The Python API for these is different from the C++ API. In Python: # 1) tensor.rename(*names) takes a vararglist of names # 2) tensor.rename(**rename_map) takes a map of names to rename. # C++ is static, making it difficult to implement similar behavior. return update_names(self, names, rename_map, inplace=True)
def rename_(self, *names, **rename_map): """In-place version of :meth:`~Tensor.rename`.""" if has_torch_function_unary(self): return handle_torch_function(Tensor.rename_, (self,), self, *names, **rename_map) # Note [rename_ / rename API] # The Python API for these is different from the C++ API. In Python: # 1) tensor.rename(*names) takes a vararglist of names # 2) tensor.rename(**rename_map) takes a map of names to rename. # C++ is static, making it difficult to implement similar behavior. return update_names(self, names, rename_map, inplace=True)
def rename_(self, *names, **rename_map): """In-place version of :meth:`~Tensor.rename`.""" relevant_args = (self,) from torch.overrides import has_torch_function, handle_torch_function if type(self) is not Tensor and has_torch_function(relevant_args): return handle_torch_function(Tensor.rename_, relevant_args, self, *names, **rename_map) # Note [rename_ / rename API] # The Python API for these is different from the C++ API. In Python: # 1) tensor.rename(*names) takes a vararglist of names # 2) tensor.rename(**rename_map) takes a map of names to rename. # C++ is static, making it difficult to implement similar behavior. return update_names(self, names, rename_map, inplace=True)
def rename(self, *names, **rename_map): """Renames dimension names of :attr:`self`. There are two main usages: ``self.rename(**rename_map)`` returns a view on tensor that has dims renamed as specified in the mapping :attr:`rename_map`. ``self.rename(*names)`` returns a view on tensor, renaming all dimensions positionally using :attr:`names`. Use ``self.rename(None)`` to drop names on a tensor. One cannot specify both positional args :attr:`names` and keyword args :attr:`rename_map`. Examples:: >>> imgs = torch.rand(2, 3, 5, 7, names=('N', 'C', 'H', 'W')) >>> renamed_imgs = imgs.rename(N='batch', C='channels') >>> renamed_imgs.names ('batch', 'channels', 'H', 'W') >>> renamed_imgs = imgs.rename(None) >>> renamed_imgs.names (None,) >>> renamed_imgs = imgs.rename('batch', 'channel', 'height', 'width') >>> renamed_imgs.names ('batch', 'channel', 'height', 'width') .. warning:: The named tensor API is experimental and subject to change. """ relevant_args = (self, ) from torch.overrides import has_torch_function, handle_torch_function if type(self) is not Tensor and has_torch_function(relevant_args): return handle_torch_function(Tensor.rename, relevant_args, self, *names, **rename_map) # See Note [rename_ / rename API] return update_names(self, names, rename_map, inplace=False)
def rename(self, *names, **rename_map): # See Note [rename_ / rename API] return update_names(self, names, rename_map, inplace=False)