РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
237 of 769 menu

Функция isfinite

Функция isfinite используется для определения, являются ли элементы тензора конечными числами. Она возвращает тензор булевых значений, где True означает, что соответствующий элемент является конечным числом (не inf, не -inf и не nan). Функция особенно полезна при отладке моделей, когда нужно проверить наличие взрывов градиентов или потерю численной стабильности.

Синтаксис

torch.isfinite(input)

Параметры функции:

  • input - входной тензор для проверки

Функция возвращает тензор такого же размера, как и input, но с булевыми элементами.

Пример

Базовое использование функции isfinite для проверки конечных значений в тензоре:

import torch t = torch.tensor([1.0, float('inf'), 2.5, float('nan'), -3.0]) res = torch.isfinite(t) print(res)

Результат выполнения кода:

tensor([ True, False, True, False, True])

Как видно из примера, для бесконечности и nan возвращается False, а для обычных чисел - True.

Пример

Использование isfinite в реальном сценарии для фильтрации невалидных значений:

import torch t = torch.tensor([1.0, 2.0, 3.0, float('nan'), 5.0]) mask = torch.isfinite(t) valid_values = t[mask] print(valid_values)

Результат выполнения кода:

tensor([1., 2., 3., 5.])

С помощью маски можно легко отфильтровать все невалидные значения.

Пример

Проверка наличия хотя бы одного неконечного значения в тензоре:

import torch t = torch.tensor([1.0, float('inf'), 3.0, 4.0, 5.0]) has_invalid = not torch.all(torch.isfinite(t)) print(has_invalid)

Результат выполнения кода:

True

Этот подход позволяет быстро проверить, есть ли в тензоре неконечные значения.

Пример

Применение isfinite к многомерному тензору:

import torch t = torch.tensor([ [1.0, float('inf'), 3.0], [4.0, 5.0, float('nan')] ]) res = torch.isfinite(t) print(res)

Результат выполнения кода:

tensor([ [ True, False, True], [ True, True, False] ])

Смотрите также

  • функцию isnan,
    которая проверяет элементы тензора на nan
  • функцию isinf,
    которая проверяет элементы тензора на бесконечность
  • функцию allclose,
    которая проверяет близость двух тензоров с заданной точностью
  • функцию isclose,
    которая поэлементно проверяет близость значений двух тензоров
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить