meridian.backend.concatenate

Concatenates tensors along one dimension.

See also tf.tile , tf.stack , tf.repeat .

Concatenates the list of tensors values along dimension axis . If values[i].shape = [D0, D1, ... Daxis(i), ...Dn] , the concatenated result has shape

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

where

 Raxis = sum(Daxis(i)) 

That is, the data from the input tensors is joined along the axis dimension.

The number of dimensions of the input tensors must match, and all dimensions except the axis must be equal.

For example:

 >>>  
 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 
 ) 
> 

As in Python, the axis could also be negative numbers. Negative axis are interpreted as counting from the end of the rank, i.e., axis + rank(values) -th dimension.

For example:

 >>>  
 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 
 ) 
> 
  tf 
 . 
 concat 
 ([ 
 tf 
 . 
 expand_dims 
 ( 
 t 
 , 
 axis 
 ) 
 for 
 t 
 in 
 tensors 
 ], 
 axis 
 ) 
 

can be rewritten as

  tf 
 . 
 stack 
 ( 
 tensors 
 , 
 axis 
 = 
 axis 
 ) 
 

values
A list of Tensor objects or a single Tensor .
axis
0-D int32 Tensor . Dimension along which to concatenate. Must be in the range [-rank(values), rank(values)) . As in Python, indexing for axis is 0-based. Positive axis in the rage of [0, rank(values)) refers to axis -th dimension. And negative axis refers to axis + rank(values) -th dimension.
name
A name for the operation (optional).

A Tensor resulting from concatenation of the input tensors.

Design a Mobile Site
View Site in Mobile | Classic
Share by: