Spec-Zone.ru › TensorFlow 2.9

tf.concat

Просмотреть исходный код на GitHub

Объединяет тензоры по одному измерению.

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

Псевдонимы для миграции

См. Руководство по миграции для получения дополнительной информации.

tf.compat.v1.concat

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

См. также 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 0-мерный int32 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/versions/r2.9/api_docs/python/tf/concat

Spec-Zone.ru

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