Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
105 of 769 menu
◀ ▶

Функция concat

Функция concat объединяет несколько тензоров вдоль указанной размерности. Первым параметром функция принимает последовательность тензоров. Вторым параметром можно передать размерность, по которой происходит объединение. Все тензоры должны иметь одинаковую форму, кроме размерности, по которой происходит объединение.

Синтаксис

torch.cat(tensors, dim=0)

Пример

Давайте объединим два одномерных тензора по размерности 0:

import torch t1 = torch.tensor([1, 2, 3]) t2 = torch.tensor([4, 5, 6]) res = torch.cat((t1, t2), dim=0) print(res)

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

tensor([1, 2, 3, 4, 5, 6])

Пример

Давайте объединим два двумерных тензора по строкам (размерность 0):

import torch t1 = torch.tensor([ [1, 2, 3], [4, 5, 6], ]) t2 = torch.tensor([ [7, 8, 9], [10, 11, 12], ]) res = torch.cat((t1, t2), dim=0) print(res)

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

tensor([ [1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12], ])

Пример

Давайте объединим два двумерных тензора по столбцам (размерность 1):

import torch t1 = torch.tensor([ [1, 2, 3], [4, 5, 6], ]) t2 = torch.tensor([ [7, 8], [9, 10], ]) res = torch.cat((t1, t2), dim=1) print(res)

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

tensor([ [1, 2, 3, 7, 8], [4, 5, 6, 9, 10], ])

Пример

Давайте объединим три тензора в один:

import torch t1 = torch.tensor([1, 2]) t2 = torch.tensor([3, 4]) t3 = torch.tensor([5, 6]) res = torch.cat((t1, t2, t3), dim=0) print(res)

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

tensor([1, 2, 3, 4, 5, 6])

Пример

Давайте объединим тензоры разных размеров по размерности 0:

import torch t1 = torch.tensor([ [1, 2, 3], [4, 5, 6], ]) t2 = torch.tensor([ [7, 8, 9], ]) res = torch.cat((t1, t2), dim=0) print(res)

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

tensor([ [1, 2, 3], [4, 5, 6], [7, 8, 9], ])

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

  • функцию stack,
    которая объединяет тензоры по новой размерности
  • функцию vstack,
    которая объединяет тензоры по вертикали
  • функцию hstack,
    которая объединяет тензоры по горизонтали
  • функцию unbind,
    которая разбивает тензор на несколько тензоров
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить