tf.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 | Скаляр 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