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

Метод byte

Метод byte применяется к тензору и возвращает новый тензор, в котором все элементы приведены к типу torch.uint8. Этот метод не изменяет исходный тензор, а создает его копию с новым типом данных. В отличие от метода to, который требует явного указания типа, byte предназначен исключительно для преобразования к беззнаковому 8-битному целочисленному типу, что часто используется для хранения изображений или бинарных масок.

Синтаксис

tensor.byte()

Метод не принимает никаких параметров.

Пример

Давайте создадим тензор с числами и преобразуем его в тип torch.uint8:

import torch t = torch.tensor([10, 20, 30, 40, 50]) res = t.byte() print(res) print(res.dtype)

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

tensor([10, 20, 30, 40, 50], dtype=torch.uint8) torch.uint8

Пример

Значения с плавающей точкой округляются в меньшую сторону при преобразовании в uint8:

import torch t = torch.tensor([1.9, 2.1, 3.5, 4.9, 5.1]) res = t.byte() print(res)

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

tensor([1, 2, 3, 4, 5], dtype=torch.uint8)

Пример

Значения за пределами диапазона uint8 (0-255) обрезаются по модулю 256:

import torch t = torch.tensor([256, 300, -1, -10, 1000]) res = t.byte() print(res)

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

tensor([0, 44, 255, 246, 232], dtype=torch.uint8)

Пример

Метод byte часто используется для преобразования логических масок:

import torch t = torch.tensor([True, False, True, False, True]) res = t.byte() print(res)

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

tensor([1, 0, 1, 0, 1], dtype=torch.uint8)

Пример

Применение byte к многомерным тензорам:

import torch t = torch.tensor([ [1.2, 2.3, 3.4], [4.5, 5.6, 6.7], [7.8, 8.9, 9.0] ]) res = t.byte() print(res)

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

tensor([ [1, 2, 3], [4, 5, 6], [7, 8, 9] ], dtype=torch.uint8)

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

  • метод long,
    который преобразует тензор к 64-битному целочисленному типу
  • метод int,
    который преобразует тензор к 32-битному целочисленному типу
  • метод bool,
    который преобразует тензор к булевому типу
  • метод float,
    который преобразует тензор к типу с плавающей запятой
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить