tf.split(dimension, num_split, input):dimension的意思就是输入张量的哪一个维度,如果是0就表示对第0维度进行切割。num_split就是切割的数量,如果是2就表示输入张量被切成2份,每一份是一个列表。

  1. import tensorflow as tf;
  2. import numpy as np;
  3. A = [[1,2,3],[4,5,6]]
  4. x = tf.split(1, 3, A)
  5. with tf.Session() as sess:
  6. c = sess.run(x)
  7. for ele in c:
  8. print ele

输出:

[[1]
 [4]]
[[2]
 [5]]
[[3]
 [6]]

TensorFlow函数:tf.split

由 Carrie 创建, 最后一次修改 2018-03-15

tf.split函数

split(
value,
num_or_size_splits,
axis=0,
num=None,
name='split'
)

定义在:tensorflow/python/ops/array_ops.py

参见指南:张量变换>切割和连接

将张量分割成子张量。

如果 num_or_size_splits 是整数类型,num_split,则 value 沿维度 axis 分割成为 num_split 更小的张量。要求 num_split 均匀分配 value.shape[axis]。

如果 num_or_size_splits 不是整数类型,则它被认为是一个张量 size_splits,然后将 value 分割成 len(size_splits) 块。第 i 部分的形状与 value 的大小相同,除了沿维度 axis 之外的大小 size_splits[i]。

例如:

# 'value' is a tensor with shape [5, 30]
# Split 'value' into 3 tensors with sizes [4, 15, 11] along dimension 1
split0, split1, split2 = tf.split(value, [4, 15, 11], 1)
tf.shape(split0) # [5, 4]
tf.shape(split1) # [5, 15]
tf.shape(split2) # [5, 11]
# Split 'value' into 3 tensors along dimension 1
split0, split1, split2 = tf.split(value, num_or_size_splits=3, axis=1)
tf.shape(split0) # [5, 10]

函数参数:

  • value:要分割的 Tensor。
  • num_or_size_splits:指示沿 split_dim 分割数量的 0-D 整数 Tensor 或包含沿 split_dim 每个输出张量大小的 1-D 整数 Tensor ;如果为一个标量,那么它必须均匀分割 value.shape[axis];否则沿分割维度的大小总和必须与该 value 相匹配。
  • axis:A 0-D int32 Tensor;表示分割的尺寸;必须在[-rank(value), rank(value))范围内;默认为0。
  • num:可选的,用于指定无法从 size_splits 的形状推断出的输出数。
  • name:操作的名称(可选)。

函数返回值:

如果 num_or_size_splits 是标量,返回 num_or_size_splits Tensor对象;如果 num_or_size_splits 是一维张量,则返回由 value 分割产生的 num_or_size_splits.get_shape[0] Tensor对象。

函数可能引发的异常:

  • ValueError:如果 num 没有指定并且无法推断。

最新文章

  1. 混合使用UITabBarController和UINavigationController
  2. C#多任务并行阶段控制—— Threading.Barrier
  3. StrongSwan 5.1.1 发布,Linux 的 IPsec 项目
  4. HTML5第二节
  5. 读javascript高级程序设计06-面向对象之继承
  6. 一张图看Goodle Clean设计架构
  7. 通过Roslyn构建自己的C#脚本
  8. SGU185 - Two Shortest
  9. 如何创建WIN服务
  10. Delphi5 update1的序列号
  11. MC34063中文资料及应用实例(转)
  12. 不知道Linux的mysql的root密码
  13. NHibernate3剖析:Configuration篇之SessionFactory lambda配置
  14. mock测试之powermock
  15. [物理学与PDEs]第3章习题1 只有一个非零分量的磁场
  16. python3-可变长度参数函数(*args 和 **kwargs)
  17. poj2083 Fractal
  18. Java学习过程中要记录的地方--汇总
  19. 前端JavaScript获取时间戳
  20. golang 的 buffered channel 及 unbuffered channel

热门文章

  1. Java的8种基本数据类型的内存占用字节数和取值范围
  2. HTML+CSS+JavaScript实现2048小游戏
  3. 服务器替换san存储
  4. Linux防火墙管理
  5. 利用github搭建私人maven仓库
  6. 数据可视化之3D中国
  7. 手机端特有的meta标签有哪些?
  8. Redis 的底层数据结构(字典)
  9. select 源码分析
  10. 详解http报文