Spec-Zone.ru › TensorFlow

tf.concat

Объединяет тензоры вдоль одного измерения.

Просмотреть псевдонимы

Совместимые псевдонимы для миграции

Подробнее см. в руководстве по миграции.

tf.compat.v1.concat

tf.concat(
    values, axis, name='concat'
)

Используется в блокнотах

Используется в руководстве Используется в руководствах
  • Повышение производительности с помощью API tf.data
  • Разреженные тензоры
  • Основы TensorFlow
  • Краткое руководство по API TensorFlow Core
  • Настройка процесса выполнения `fit()` в TensorFlow
  • Распознавание звуков: распознавание ключевых слов
  • Обучаемое сжатие данных
  • Интегрированные градиенты
  • Загрузка DataFrame из pandas
  • Перенос обучения для классификации видео с помощью MoViNet

См. также tf.tile, tf.stack, tf.repeat.

Объединяет список тензоров values вдоль измерения axis. Если values[i].shape = [D0, D1, ... Daxis(i), ...Dn], результирующий тензор после объединения имеет форму

[D0, D1, ... Raxis, ...Dn]

где

Raxis = sum(Daxis(i))

То есть данные входных тензоров объединяются вдоль измерения axis.

Количество измерений входных тензоров должно совпадать, а все измерения, кроме axis, должны быть равны.

Например:

t1 = [[1, 2, 3], [4, 5, 6]]
t2 = [[7, 8, 9], [10, 11, 12]]
tf.concat([t1, t2], 0)
<tf.Tensor: shape=(4, 3), dtype=int32, numpy=
array([[ 1,  2,  3],
       [ 4,  5,  6],
       [ 7,  8,  9],
       [10, 11, 12]], dtype=int32)>
tf.concat([t1, t2], 1)
<tf.Tensor: shape=(2, 6), dtype=int32, numpy=
array([[ 1,  2,  3,  7,  8,  9],
       [ 4,  5,  6, 10, 11, 12]], dtype=int32)>

Как и в Python, axis также может быть отрицательным числом. Отрицательные значения axis отсчитываются от конца ранга, то есть обозначают измерение axis + rank(values).

Например:

t1 = [[[1, 2], [2, 3]], [[4, 4], [5, 3]]]
t2 = [[[7, 4], [8, 4]], [[2, 10], [15, 11]]]
tf.concat([t1, t2], -1)
<tf.Tensor: shape=(2, 2, 4), dtype=int32, numpy=
  array([[[ 1,  2,  7,  4],
          [ 2,  3,  8,  4]],
         [[ 4,  4,  2, 10],
          [ 5,  3, 15, 11]]], dtype=int32)>
Примечание: Если вы объединяете тензоры вдоль новой оси, рассмотрите возможность использовать stack. Например:
tf.concat([tf.expand_dims(t, axis) for t in tensors], axis)

можно переписать так:

tf.stack(tensors, axis=axis)
Аргументы
values Список объектов Tensor или один объект Tensor.
axis Скаляр int32 с рангом 0 Tensor. Измерение, вдоль которого выполняется объединение. Должно находиться в диапазоне [-rank(values), rank(values)). Как и в Python, индексация осей начинается с 0. Положительное значение оси в диапазоне [0, rank(values)) обозначает измерение axis. Отрицательное значение оси обозначает измерение axis + rank(values).
name Имя операции (необязательно).
Возвращает
Объект Tensor, полученный в результате объединения входных тензоров.

© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/concat

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API