Метод PyTorch Flatten содержит входные тензоры как с действительными, так и с составными значениями. Метод torch.flatten() используется для сведения тензора в одномерный тензор путем изменения его формы.

Содержание

Что такое Flatten?

Метод torch.flatten() используется для сведения тензора в одномерный тензор путем изменения его формы.

Метод PyTorch Flatten содержит входные тензоры как с действительными, так и с составными значениями. Он принимает тензор факела в качестве входных данных и возвращает тензор факела, сплющенный в одно измерение.

Синтаксис:

torch.flatten(input, start_dim=0, end_dim=-1)

Параметры:

  • input: используется в качестве входного тензора.
  • start_dim: используется как первый размер, подлежащий сглаживанию.
  • end_dim: используется как последний размер, который нужно сгладить.

Пример выравнивания

Метод PyTorch Flatten содержит входные тензоры как с действительными, так и с составными значениями. Он принимает тензор факела в качестве входных данных и возвращает тензор факела, сплющенный в одно измерение. Он содержит два параметра start_dim и end_dim.

Код:

В следующем коде сначала мы импортируем библиотеку факела, например import torch.

f = torch.tensor([[[2, 4], [6, 8]],[[10, 12],[14, 16]]]) используется для описания переменной с помощью функции torch.tensor() .

torch.flatten(f): здесь мы используем функцию torch.flatten().

torch.flatten(f, start_dim=1) используется как функция Flatten(), и внутри этой функции мы используем некоторые параметры.

# Import library
import torch
# Describe the variable by using torch.tensor() function
f = torch.tensor([[[2, 4],
                   [6, 8]],
                   [[10, 12],
                   [14, 16]]])
# Using the torch.flatten() method
torch.flatten(f)
torch.tensor([2, 4, 6, 8, 10, 12, 14, 16])
torch.flatten(f, start_dim=1)

Выход:

После запуска приведенного выше кода мы получаем следующий вывод, в котором мы видим, что значения PyTorch Flatten печатаются на экране.

Пример сглаживания PyTorch

Сглаживание слоя

PyTorch Flatten используется для преобразования любого из тензорных слоев с разными размерами в одно измерение.

Функция torch.flatten() используется для сведения тензора в одномерный тензор путем изменения его формы.

Код:

В следующем коде сначала мы импортируем библиотеку факела, например import torch.

  • f = torch.tensor([[[2, 4, 6], [8, 10, 12]], [[14, 16, 18], [20, 22, 24]]]) Здесь мы описываем f переменная с помощью функции torch.tensor().
  • Flatten_tens = torch. Flatten(f) Здесь мы описываем сглаживание вышеуказанного тензора с помощью end_dims.
  • print(«Flatten tensor:\n», Flatten_tens) используется для печати сплющенного тензора.
# Import Library
import torch
f = torch.tensor([[[2, 4, 6],
   [8, 10, 12]],
   [[14, 16, 18],
   [20, 22, 24]]])
print("Tensor:\n", f)
print("Size of Tensor:", f.size())

# Describe the flatten the above tensor by using end_dims
flatten_tens = torch.flatten(f)
flatten_tens1 = torch.flatten(f, end_dim=0)
flatten_tens2 = torch.flatten(f, end_dim=1)
flatten_tens3 = torch.flatten(f, end_dim=2)
# print the flatten tensors
print("Flatten tensor:\n", flatten_tens)
print("Flatten tensor(end_dim=0):\n", flatten_tens1)
print("Flatten tensor(end_dim=1):\n", flatten_tens2)
print("Flatten tensor(end_dim=2):\n", flatten_tens3)

Выход:

В приведенном ниже коде вы можете видеть, что форма плоского слоя PyTorch изменяется с помощью функции torch.flatten().

Функция torch.flatten()

Flatten List

PyTorch Flatten List входных данных тензоров преобразовал его в одномерный тензор. Входные данные, start_dim и end_dims передаются внутри функции torch.flatten(). Размеры, начинающиеся с start_dim и заканчивающиеся end_dim, выравниваются.

Код:

В следующем коде сначала мы импортируем библиотеку факела, например import torch.

  • f = torch.tensor([[[31, 30],[29, 28]], [[27, 26],[25, 24]]]) используется для описания переменной с помощью функции torch.tensor() .
  • torch.flatten(f) Здесь мы используем функцию torch.flatten().
  • i = torch.randn(4, 17, 18, 18) используется для описания переменной с помощью функции torch.randn().
  • print(res) используется для печати результата с помощью функции print().
# Import Library
impo# Import library
import torch
import torch.nn as nn
f = torch.tensor([[[31, 30],
                    [29, 28]],
                   [[27, 26],
                    [25, 24]]])
# Using torch.flatten()
torch.flatten(f)
torch.tensor([31, 30, 29, 28, 27, 26, 25, 24])
torch.flatten(f, start_dim=1) 

# Describing the variable by using torch.randn()
i = torch.randn(4, 17, 18, 18)
j = nn.Sequential(
nn.Conv2d(17, 4, 18, 56, 4),
nn.Flatten()
)
res = j(i)
print(res)
res.size()

Выход:

После запуска приведенного выше кода мы получаем следующий вывод, в котором видим, что список значений тензоров Pytorch Flatten печатается на экране.

Список значений тензоров Pytorch Flatten

Параметры

Здесь мы используем функцию torch. Flatten() и внутри этой функции мы используем некоторые параметры. Первый параметр является входным, второй параметр — start_sim и последний параметр — end_dim.

Размеры, начинающиеся с start_dim и заканчивающиеся end_dim, выравниваются.

Код:

В следующем коде сначала мы импортируем библиотеку факела, например import torch.

  • f = torch.empty(4,4,5,5).random_(30) Здесь мы описываем переменную f с помощью функции torch.empty().
  • print(«Размер тензора:», f.size()) используется для печати размера тензора с помощью функции print().
  • ftens = torch.flatten(f, start_dim=2, end_dim=3): здесь мы выравниваем приведенный выше тензор, используя strat_dim и end_dim.
  • print(«Flatten tensor(start_dim=2,end_dim=3):\n», ftens) используется для печати сплющенного тензора.
# Importing Library
import torch
# Describing the variable 
f = torch.empty(4,4,5,5).random_(30)
# Printing the size of the tensor
print("Tensor:\n", f)
print("Size of tensor:", f.size())

# Here we are flatten the above tensor using start_dim and end_dim
ftens = torch.flatten(f, start_dim=2, end_dim=3)

# printing the flatten tensors
print("Flatten tensor(start_dim=2,end_dim=3):\n", ftens)

Выход:

После запуска приведенного выше кода мы получаем следующий вывод, в котором видим, что значения параметров PyTorch Flatten печатаются на экране.

Значения параметров PyTorch Flatten

Как создать тензор с 2D-элементами и сгладить этот вектор

Здесь мы используем функцию Flatten(), которая используется для преобразования N-мерного тензора в одномерный тензор.

В следующем коде сначала мы импортируем библиотеку факела, например import torch:

  • f = torch.tensor([[2,4,6,8,10,12,14,16,18,20],[2,4,6,8,10,12,14,16,18,20] ]) используется для создания двумерного тензора из 10 элементов.
  • print(f) используется для отображения фактического тензора.
  • print(torch.flatten(f)): Здесь мы выравниваем тензор с помощью функции Flatten().
# import torch module
import torch
 
# Here we creating an 2 D tensor with 10 elements each
f = torch.tensor([[2,4,6,8,10,12,14,16,18,20],
                  [2,4,6,8,10,12,14,16,18,20]])
 
# Showing the actual tensor
print(f)
 
# Here we are flattening a tensor with flatten() function
print(torch.flatten(f))

Выход:

После запуска приведенного выше кода мы получаем следующий вывод, в котором мы видим, что создается 2d-тензор, значения которого печатаются на экране из 10 элементов.

Как создать тензор с 2D-элементами и сгладить этот вектор

Как создать тензор с 3D-элементами

Здесь мы используем функцию Flatten(), которая используется для преобразования N-мерного тензора в одномерный тензор, создания тензора с трехмерными элементами и выравнивания вектора.

В следующем коде сначала мы импортируем библиотеку факела, например import torch:

  • f = torch.tensor([[[2,4,6,8,10,12,14,16,18,20],[2,4,6,8,10,12,14,16,18,20 ]], [[2,4,6,8,10,12,14,16,18,20],[2,4,6,8,10,12,14,16,18,20]]]) используется для описания переменной с помощью функции torch.tensor().
  • print(f) используется для отображения фактического тензора.
  • print(torch.flatten(f)): здесь мы сглаживаем тензор с помощью функции Flatten().
# import torch module
import torch
 
# create an 3 D tensor with 10 elements each
f = torch.tensor([[[2,4,6,8,10,12,14,16,18,20],
                 [2,4,6,8,10,12,14,16,18,20]],
                [[2,4,6,8,10,12,14,16,18,20],
                 [2,4,6,8,10,12,14,16,18,20]]])
 
# Showing the actual tensor
print(f)
 
# Here we are flatten a tensor with flatten() function
print(torch.flatten(f))

Выход:

В приведенном ниже выводе мы видим, что трехмерный тензор создается с выводом на экран значений 10 элементов.

Как создать тензор с 3D-элементами и сгладить этот вектор

Добавить комментарий