• tensorFlow2.1下的tf.data.Dataset.from_tensor_slices()的用法


    tensorFlow2.1下的tf.data.Dataset.from_tensor_slices()的用法

    一、总结

    一句话总结:

    将输入的张量的第一个维度看做样本的个数,沿其第一个维度将tensor切片,得到的每个切片是一个样本数据。实现了输入张量的自动切片。
    # from_tensor_slices 为输入张量的每一行创建一个带有单独元素的数据集
    ts = tf.constant([[1, 2], [3, 4]])
    ds = tf.data.Dataset.from_tensor_slices(ts)   # [1, 2], [3, 4]

    二、tensorFlow2.1下的tf.data.Dataset.from_tensor_slices()的用法

    转自或参考:tensorFlow2.1下的tf.data.Dataset.from_tensor_slices()和batch()的用法
    https://www.pythonheidong.com/blog/article/287038/

    1、tf.data.Dataset.from_tensor_slices

    它的作用是切分传入Tensor的第一个维度,生成相应的dataset。

    将输入的张量的第一个维度看做样本的个数,沿其第一个维度将tensor切片,得到的每个切片是一个样本数据。实现了输入张量的自动切片。

    可以是numpy格式,也可以是tensorflow的tensor的格式,函数会自动将numpy格式转为tensorflow的tensor格式

    输入可以是一个tensor  一个tensor字典(字典的每个key对应的value是一个tensor,要求各tensor的第一个维度相等)  一个tensor tuple(tuple 的每个元素是一个tensor,要求各tensor的第一个维度相等)。

    示例 1:

    import tensorflow as tf
    t = tf.range(10.)[:, None]
    t = tf.data.Dataset.from_tensor_slices(t)
    #<TensorSliceDataset shapes: (1,), types: tf.float32>
    for i in t:
        print(i.numpy())
    
    # [0.]
    # [1.]
    # [2.]
    # [3.]
    # [4.]
    # [5.]
    # [6.]
    # [7.]
    # [8.]
    # [9.]
    

    示例2:

    # from_tensor_slices 为输入张量的每一行创建一个带有单独元素的数据集
    ts = tf.constant([[1, 2], [3, 4]])
    ds = tf.data.Dataset.from_tensor_slices(ts)   # [1, 2], [3, 4]
    

    2、batch函数

    用示例看下batch函数

    batch_t = t.batch(3)
    for i in batch_t:
        print(i.numpy())
    
    [[0.]
     [1.]
     [2.]]
    [[3.]
     [4.]
     [5.]]
    [[6.]
     [7.]
     [8.]]
    [[9.]]
    
     



     
    我的旨在学过的东西不再忘记(主要使用艾宾浩斯遗忘曲线算法及其它智能学习复习算法)的偏公益性质的完全免费的编程视频学习网站: fanrenyi.com;有各种前端、后端、算法、大数据、人工智能等课程。
    博主25岁,前端后端算法大数据人工智能都有兴趣。
    大家有啥都可以加博主联系方式(qq404006308,微信fan404006308)互相交流。工作、生活、心境,可以互相启迪。
    聊技术,交朋友,修心境,qq404006308,微信fan404006308
    26岁,真心找女朋友,非诚勿扰,微信fan404006308,qq404006308
    人工智能群:939687837

    作者相关推荐

  • 相关阅读:
    关于Openfeint + xcode 4.2 不能编译的解决方案
    CocoaAsyncSocket
    IDEA快捷键
    在升级了ADT22之后报java.lang.NoClassDefFoundError错误
    关于Toast连点显示不及时的问题
    在使用ListFragment的setEmptyText时报java.lang.IllegalStateException: Can't be used with a custom content view错误
    推荐系统专题
    Javascript 排序(转)
    js进阶
    JavaScript之定时器性能优化
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/13439608.html
Copyright © 2020-2023  润新知