[Docs] Update torch.(squeeze, split, set_printoptions, save) docs. (#39303)

Summary:
I added the following to the docs:
1. `torch.save`.
    1. Added doc for `_use_new_zipfile_serialization` argument.
    2. Added a note telling that extension does not matter while saving.
    3. Added an example showing the use of above argument along with `pickle_protocol=5`.

2. `torch.split`
    1. Added an example showing the use of the function.

3. `torch.squeeze`
   1. Added a warning for batch_size=1 case.

4. `torch.set_printoptions`
    1. Changed the docs of `sci_mode` argument from
        ```
        sci_mode: Enable (True) or disable (False) scientific notation. If
                 None (default) is specified, the value is defined by `_Formatter`
        ```
        to
        ```
        sci_mode: Enable (True) or disable (False) scientific notation. If
                 None (default=False) is specified, the value is defined by
                `torch._tensor_str._Formatter`.
        ```
Pull Request resolved: https://github.com/pytorch/pytorch/pull/39303

Differential Revision: D21904504

Pulled By: zou3519

fbshipit-source-id: 92a324257d09d6bcfa0b410d4578859782b94488
This commit is contained in:
KushajveerSingh 2020-06-05 12:55:39 -07:00 committed by Facebook GitHub Bot
parent 0031108b60
commit 88fe05e106
4 changed files with 31 additions and 1 deletions

View File

@ -38,7 +38,9 @@ def set_printoptions(
profile: Sane defaults for pretty printing. Can override with any of profile: Sane defaults for pretty printing. Can override with any of
the above options. (any one of `default`, `short`, `full`) the above options. (any one of `default`, `short`, `full`)
sci_mode: Enable (True) or disable (False) scientific notation. If sci_mode: Enable (True) or disable (False) scientific notation. If
None (default) is specified, the value is defined by `_Formatter` None (default) is specified, the value is defined by
`torch._tensor_str._Formatter`. This value is automatically chosen
by the framework.
""" """
if profile is not None: if profile is not None:
if profile == "default": if profile == "default":

View File

@ -5637,6 +5637,10 @@ will squeeze the tensor to the shape :math:`(A \times B)`.
.. note:: The returned tensor shares the storage with the input tensor, .. note:: The returned tensor shares the storage with the input tensor,
so changing the contents of one will change the contents of the other. so changing the contents of one will change the contents of the other.
.. warning:: If the tensor has a batch dimension of size 1, then `squeeze(input)`
will also remove the batch dimension, which can lead to unexpected
errors.
Args: Args:
{input} {input}
dim (int, optional): if given, the input will be squeezed only in dim (int, optional): if given, the input will be squeezed only in

View File

@ -82,6 +82,27 @@ def split(tensor, split_size_or_sections, dim=0):
split_size_or_sections (int) or (list(int)): size of a single chunk or split_size_or_sections (int) or (list(int)): size of a single chunk or
list of sizes for each chunk list of sizes for each chunk
dim (int): dimension along which to split the tensor. dim (int): dimension along which to split the tensor.
Example::
>>> a = torch.arange(10).reshape(5,2)
>>> a
tensor([[0, 1],
[2, 3],
[4, 5],
[6, 7],
[8, 9]])
>>> torch.split(a, 2)
(tensor([[0, 1],
[2, 3]]),
tensor([[4, 5],
[6, 7]]),
tensor([[8, 9]]))
>>> torch.split(a, [1,4])
(tensor([[0, 1]]),
tensor([[2, 3],
[4, 5],
[6, 7],
[8, 9]]))
""" """
if not torch.jit.is_scripting(): if not torch.jit.is_scripting():
if type(tensor) is not Tensor and has_torch_function((tensor,)): if type(tensor) is not Tensor and has_torch_function((tensor,)):

View File

@ -339,6 +339,9 @@ def save(obj, f, pickle_module=pickle, pickle_protocol=DEFAULT_PROTOCOL, _use_ne
pickle_module: module used for pickling metadata and objects pickle_module: module used for pickling metadata and objects
pickle_protocol: can be specified to override the default protocol pickle_protocol: can be specified to override the default protocol
.. note::
A common PyTorch convention is to save tensors using .pt file extension.
.. warning:: .. warning::
If you are using Python 2, :func:`torch.save` does NOT support :class:`StringIO.StringIO` If you are using Python 2, :func:`torch.save` does NOT support :class:`StringIO.StringIO`
as a valid file-like object. This is because the write method should return as a valid file-like object. This is because the write method should return