TensorFlow 2.0:テンソルの合併と分割例
3997 ワード
**
一tf.co ncat()関数C結合
**
二tf.stack()関数Cデータの積み重ねにより、新しい次元が作成されます。
**
三tf.unstack()関数C解スタック
**
四tf.split()関数
**
一tf.co ncat()関数C結合
**
In [2]: a = tf.ones([4,35,8])
In [3]: b = tf.ones([2,35,8])
In [4]: c = tf.concat([a,b],axis=0)
In [5]: c.shape
Out[5]: TensorShape([6, 35, 8])
In [6]: a = tf.ones([4,32,8])
In [7]: b = tf.ones([4,3,8])
In [8]: c = tf.concat([a,b],axis=1)
In [9]: c.shape
Out[9]: TensorShape([4, 35, 8])
**二tf.stack()関数Cデータの積み重ねにより、新しい次元が作成されます。
**
In [2]: a = tf.ones([4,35,8])
In [3]: a.shape
Out[3]: TensorShape([4, 35, 8])
In [4]: b = tf.ones([4,35,8])
In [5]: b.shape
Out[5]: TensorShape([4, 35, 8])
In [6]: tf.concat([a,b],axis=-1).shape
Out[6]: TensorShape([4, 35, 16])
In [7]: tf.stack([a,b],axis=0).shape
Out[7]: TensorShape([2, 4, 35, 8])
In [8]: tf.stack([a,b],axis=3).shape
Out[8]: TensorShape([4, 35, 8, 2])
**三tf.unstack()関数C解スタック
**
In [16]: a = tf.ones([4,35,8])
In [17]: b = tf.ones([4,35,8])
In [18]: c = tf.stack([a,b],axis=0)
In [19]: a.shape,b.shape,c.shape
Out[19]: (TensorShape([4, 35, 8]), TensorShape([4, 35, 8]), TensorShape([2, 4, 35, 8]))
In [20]: aa,bb = tf.unstack(c,axis=0)
In [21]: aa.shape,bb.shape
Out[21]: (TensorShape([4, 35, 8]), TensorShape([4, 35, 8]))
In [22]: res = tf.unstack(c,axis=1)
In [23]: len(res)
Out[23]: 4
**四tf.split()関数
**
In [16]: a = tf.ones([4,35,8])
In [17]: b = tf.ones([4,35,8])
In [18]: c = tf.stack([a,b],axis=0)
In [19]: a.shape,b.shape,c.shape
Out[19]: (TensorShape([4, 35, 8]), TensorShape([4, 35, 8]), TensorShape([2, 4, 35, 8]))
In [20]: aa,bb = tf.unstack(c,axis=0)
In [21]: aa.shape,bb.shape
Out[21]: (TensorShape([4, 35, 8]), TensorShape([4, 35, 8]))
In [22]: res = tf.unstack(c,axis=1)
In [23]: len(res)
Out[23]: 4
以上のTensorFlow 2.0:テンソルの合併と分割例は小編集が皆さんに共有した内容の全部です。参考にしていただければと思います。よろしくお願いします。