РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
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 для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить