美文网首页
03 - Data Processing 数据操作

03 - Data Processing 数据操作

作者: 洛八斗 | 来源:发表于2020-02-13 17:23 被阅读0次

    首先我们确认TensorFlow的版本

    import tensorflow as tf
    # 确认TensorFlow的版本
    print(tf.__version__)
    

    在TensorFlow中,tensor是一个类,也是存储和变换数据的主要工具。 如果你之前用过NumPy,你会发现tensor和NumPy的多维数组非常类似。 然而,tensor提供GPU计算和自动求梯度等更多功能,这些使tensor更加适合深度学习。

    1.TensorFlow的基本功能

    首先用arange创建一个行向量

    # constant()函数表示
    x = tf.constant(range(12))
    print(x.shape)
    

    关于constan函数在TensorFlow中表示张量。

    关于张量:

    多维数组可以被称之为张量,和numpy中的数组一样,张量也有类型和形状。在tensorflow 的python API中,可以用numpy中的ndarrays来表示。 通常用来保存浮点数据,也可以用来存储字符串(任意字节的数组)。


    第一个值value是必须的,可以是一个数值,也可以是一个列表。

    后面四个参数可写可不写,第二个参数表示数据类型,一般可以是tf.float32, tf.float64等:

    第三个参数表示张量的“形状”,即维数以及每一维的大小。如果指定了第三个参数,当第一个参数value是数字时,张量的所有元素都会用该数字填充:

    第四个参数name可以是任何内容,主要是字符串就行。

    第五个参数verify_shape默认为False,如果修改为True的话表示检查value的形状与shape是否相符,如果不符会报错。

    具体可以看这个https://blog.csdn.net/csdn_jiayu/article/details/82155224

    def constant_v1(value,
                    dtype: Any = None,
                    shape: Any = None,
                    name: str = "Const",
                    verify_shape: bool = False)
    
    TensorFlow基本功能.png

    广播机制

    两个形状相同的tensor做按元素运算。当对两个形状不同的tensor按元素运算时,可能会触发广播(broadcasting)机制:先适当复制元素使这两个tensor形状相同后再按元素运算。

    广播机制.png

    索引

    在tensor中,索引(index)代表了元素的位置。tensor的索引**从0开始逐一递增。

    我们指定了tensor的行索引截取范围[1:3]。依据左闭右开指定范围的惯例,它截取了矩阵X中行索引为1和2的两行。

    tf.assign()的作用类似于python操作符中的=理解为tensorflow中为操作符进行赋值操作。


    索引.png

    tensor 和 NumPy 相互变换

    我们可以通过array函数和asnumpy函数令数据在NDArray和NumPy格式之间相互变换。下面将NumPy实例变换成tensor实例。


    相互转换.png

    相关文章

      网友评论

          本文标题:03 - Data Processing 数据操作

          本文链接:https://www.haomeiwen.com/subject/dihlfhtx.html