Spec-Zone.ru › PyTorch 2

torch.div

torch.div(input, other, *, rounding_mode=None, out=None) → Tensor

Делит каждый элемент входного input на соответствующий элемент other.

outi=inputiotheri\text{out}_i = \frac{\text{input}_i}{\text{other}_i}

Примечание

По умолчанию выполняется «истинное» деление, как в Python 3. См. аргумент rounding_mode для целочисленного деления.

Поддерживает распространение на общую форму, преобразование типов и целочисленные, плавающие и комплексные входные данные. Целочисленные типы всегда преобразуются в стандартный скалярный тип.

Параметры
  • input (Tensor) – делимое
  • other (Tensor или Число) – делитель
Ключевые аргументы
  • rounding_mode (str, необязательно) –

    Тип округления результата:

    • None - поведение по умолчанию. Не выполняет округление и, если оба input и other являются целочисленными типами, преобразует входные данные в стандартный скалярный тип. Эквивалентно истинному делению в Python (оператор /) и целочисленному делению в NumPy (np.true_divide).
    • "trunc" - округляет результаты деления до нуля. Эквивалентно целочисленному делению в C.
    • "floor" - округляет результаты деления вниз. Эквивалентно целочисленному делению в Python (оператор //) и NumPy’s np.floor_divide.
  • out (Tensor, необязательно) – выходной тензор.

Примеры:

>>> x = torch.tensor([ 0.3810,  1.2774, -0.2972, -0.3719,  0.4637])
>>> torch.div(x, 0.5)
tensor([ 0.7620,  2.5548, -0.5944, -0.7438,  0.9274])

>>> a = torch.tensor([[-0.3711, -1.9353, -0.4605, -0.2917],
...                   [ 0.1815, -1.0111,  0.9805, -1.5923],
...                   [ 0.1062,  1.4581,  0.7759, -1.2344],
...                   [-0.1830, -0.0313,  1.1908, -1.4757]])
>>> b = torch.tensor([ 0.8032,  0.2930, -0.8113, -0.2308])
>>> torch.div(a, b)
tensor([[-0.4620, -6.6051,  0.5676,  1.2639],
        [ 0.2260, -3.4509, -1.2086,  6.8990],
        [ 0.1322,  4.9764, -0.9564,  5.3484],
        [-0.2278, -0.1068, -1.4678,  6.3938]])

>>> torch.div(a, b, rounding_mode='trunc')
tensor([[-0., -6.,  0.,  1.],
        [ 0., -3., -1.,  6.],
        [ 0.,  4., -0.,  5.],
        [-0., -0., -1.,  6.]])

>>> torch.div(a, b, rounding_mode='floor')
tensor([[-1., -7.,  0.,  1.],
        [ 0., -4., -2.,  6.],
        [ 0.,  4., -1.,  5.],
        [-1., -1., -2.,  6.]])

© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/2.1/generated/torch.div.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API