from tensorflow\python\data\ops\dataset_ops.py

  @staticmethoddef from_tensor_slices(tensors):"""Creates a `Dataset` whose elements are slices of the given tensors.创建一个“数据集”,其元素是给定张量的切片。Note that if `tensors` contains a NumPy array, and eager execution is notenabled, the values will be embedded in the graph as one or more`tf.constant` operations. For large datasets (> 1 GB), this can wastememory and run into byte limits of graph serialization.  If tensors containsone or more large NumPy arrays, consider the alternative described in[this guide](https://tensorflow.org/guide/datasets#consuming_numpy_arrays).请注意,如果“张量”包含一个NumPy数组,并且未启用急切执行,则值将作为一个或多个“ tf.constant”操作嵌入到图形中。 对于大型数据集(> 1 GB),这会浪费内存并遇到图序列化的字节限制。 如果张量包含一个或多个大NumPy数组,请考虑[本指南](https://tensorflow.org/guide/datasets#using_numpy_arrays)中所述的替代方法。Args:tensors: A nested structure of tensors, each having the same size in the0th dimension. 张量的嵌套结构,每个张量在第0维上具有相同的大小。Returns:Dataset: A `Dataset`. 数据集"""return TensorSliceDataset(tensors)

tf.data.Dataset.from_tensor_slices的用法

tf.data.Dataset.from_tensor_slices

该函数是dataset核心函数之一,它的作用是把给定的元组、列表和张量等数据进行特征切片。切片的范围是从最外层维度开始的。如果有多个特征进行组合,那么一次切片是把每个组合的最外维度的数据切开,分成一组一组的。

假设我们现在有两组数据,分别是特征和标签,为了简化说明问题,我们假设每两个特征对应一个标签。之后把特征和标签组合成一个tuple,那么我们的想法是让每个标签都恰好对应2个特征,而且像直接切片,比如:[f11, f12] [t1]。f11表示第一个数据的第一个特征,f12表示第1个数据的第二个特征,t1表示第一个数据标签。那么tf.data.Dataset.from_tensor_slices就是做了这件事情:

import tensorflow as tf
import numpy as npfeatures, labels = (np.random.sample((6, 3)),  # 模拟6组数据,每组数据3个特征np.random.sample((6, 1)))  # 模拟6组数据,每组数据对应一个标签,注意两者的维数必须匹配print('features:\n{}\nlabels:\n{}'.format(features,labels))  #  输出下组合的数据
data = tf.data.Dataset.from_tensor_slices((features, labels))
print(data)  # 输出张量的信息

结果:

features:
[[0.51145285 0.01551108 0.8964333 ][0.0320744  0.78853224 0.5573909 ][0.41400104 0.79518971 0.08757085][0.77886924 0.38981308 0.27692796][0.0143111  0.98848222 0.80941925][0.53292765 0.22526956 0.75004045]]
labels:
[[0.13517541][0.11131747][0.47719857][0.8386204 ][0.61713735][0.80272754]]
<TensorSliceDataset shapes: ((3,), (1,)), types: (tf.float64, tf.float64)>

从结果可以看出,该函数将数据分为了shape为((3,),(1,))的数据形式,即每三个特征对应一个标签。

参考文章:tf.data.Dataset.from_tensor_slices的用法

tensorflow tf.data.Dataset.from_tensor_slices() (创建一个“数据集”,其元素是给定张量的切片)相关推荐

  1. 记录 之 tensorflow函数:tf.data.Dataset.from_tensor_slices

    tf.data.Dataset.from_tensor_slices(),是常见的数据处理函数,它的作用是将给定的元组(turple).列表(list).张量(tensor)等特征进行特征切片.切片的 ...

  2. tensorflow基础:tf.data.Dataset.from_tensor_slices() 与 tf.data.Dataset.from_generator()的异同

    tf.data.Dataset.from_tensor_slices(tensor): -->将tensor沿其第一个维度切片,返回一个含有N个样本的数据集(假设tensor的第一个维度为N). ...

  3. tensorflow基础:tf.data.Dataset.from_tensor_slices()

    tf.data.Dataset.from_tensor_slices() 语义解释:from_tensor_slices,从张量的切片读取数据. 工作原理:将输入的张量的第一个维度看做样本的个数,沿其 ...

  4. tf.data.Dataset.from_tensor_slices() 详解

    函数原型: tf.data.Dataset.from_tensor_slices(tensors, name=None ) 官网地址:https://www.tensorflow.org/api_do ...

  5. tf.data.Dataset.from_tensor_slices 的用法

    将python列表和numpy数组转换成tensorflow的dataset 只有dataset才能被model.fit函数训练 import tensorflow as tf import nump ...

  6. TensorFlow tf.data.Dataset

    方法 描述 apply(transformation_func) batch(batch_size,drop_remainder=False) drop_remainder为真,则最后一个batch如 ...

  7. tensorflow学习笔记:tf.data.Dataset,from_tensor_slices(),shuffle(),batch()的用法

    tf.data.Dataset.from_tensor_slices: 它的作用是切分传入Tensor的第一个维度,生成相应的dataset. 例1: dataset = tf.data.Datase ...

  8. TensorFlow数据读取机制:文件队列 tf.train.slice_input_producer和 tf.data.Dataset机制

    TensorFlow数据读取机制:文件队列 tf.train.slice_input_producer和tf.data.Dataset机制 之前写了一篇博客,关于<Tensorflow生成自己的 ...

  9. 【Tensorflow 2.0 正式版教程】tf.data.Dataset的基本使用方法

    Tensorflow 2.0中提供了专门用于数据输入的接口tf.data.Dataset,可以简洁高效的实现数据的读入.打乱(shuffle).增强(augment)等功能.下面以一个简单的实例讲解该 ...

最新文章

  1. linux 进程监听服务 monit 简介
  2. MySQL超详细安装.zip【.zip和.msi安装包的区别及详细安装】和可视化软件SQLyog安装教程
  3. 从未加入域的计算机上使用Windows验证方式访问SQL Server
  4. php网页标点前置,为什么在网页里,标点符号跑到行首了呢?_html/css_WEB-ITnose
  5. java的六大_java程序员必备的六大工具!
  6. getlanguage_Java语言环境getLanguage()方法与示例
  7. Java 9 接口私有方法
  8. ajax顺序请求你,ajax请求之返回数据的顺序问题分析
  9. java利用数组随机抽取幸运观众_java利用数组随机抽取幸运观众
  10. 随想录(锁的来由和使用)
  11. oracle 查询表里信息_查看ORACLE 数据库及表信息
  12. HDU2096 小明A+B【水题】
  13. 【转】编辑器与IDE
  14. 2021-09-1031. 下一个排列 数组
  15. 使用AdventNet快速开发网管软件Agent端
  16. GIF动图制作全攻略!不用PS简单快速制作GIF动图!
  17. python创建ppt_ppt自动化创建工具——python-pptx
  18. C语言数据储存(保姆级教学)
  19. 操作系统实验六 设备管理
  20. 湖南湘中计算机学校历任校长,2005学年度湖南省中等职业学校.doc

热门文章

  1. ASP:FileSystemObject处理文件
  2. 通过日志恢复MSSQL数据案例
  3. ajax发送异步请求四个步骤,深入理解ajax异步请求的五个步骤(详细代码)
  4. python pil png合成gif储存时变黑_使用 Python 玩转图片
  5. 复制迁移数据库表数据程序
  6. 可以扣6分也可以扣0分?闯红灯也是有技巧的
  7. SAP MM模块调研问卷
  8. 物料主数据(SAP屠夫)
  9. ABAP选择屏幕的例子
  10. 永洪Desktop安装后启动提示缺少libv8_libbase.dll文件解决办法