1.张量–小引

  1. 单独的一个数是一个0维的张量,即标量

  2. 向量是一维的张量

  3. 矩阵是二维的张量

    一下是张量定义

    • 定义一个随机数

    random_float = tf. random.uniform(shape=())

    • 定义一个有两个元素的的零向量

    zero_vector = tf.zero(shape=(2))

    • 定义1个2*2常量矩阵

    A = tf.constant([[1.,2.],[2.,4.]])

  4. 张量重要的属性是,形状,类型和值

    • A的形状:A.shape
    • A的类型:A.dtype
    • A的值:A.numpy
  5. tensorflow的操作进行张量运算

    • tf.matul
    • tf.add

2.tensorflow模块与API —-开始

High Mid Low Kernel
keras,Estimators Layer,Datasets,metrics python Tensorflow Distribution Excution Engine

3.Tensorflow数据流图 —原理

  1. tensorflow 数据流图是一种声明式编程范式
  2. 声明式编程比如lamba 命令式编程就是一般的一步一步走
  3. 数据流图

4. 从 tensor开始

  1. 张量是一种几何实体,广义上表示任意形式的数据。张量可以理解为0阶的标量, 1阶的向量,2阶的矩阵在高维空间上的推广,张量的阶描述它表示数据的最大维度(wiki)

  2. 张量表示某种相同的数据类型的多维数组

    • 数据类型
    • 数组形状(各维度大小)
  3. 阶可理解为维度

  4. 张量用来表示多维数据,执行操作时的输入或输出数据

  5. 用户通过执行操作来创建和计算张量(不用自己创建类)

  6. 张量的形状可以在运行时通过形状推断计算得出

  7. 常用(特别)的张量

    • tf.constant 常量 y = a+b (a,b永远不变 ,参数不能用其创建)
    • tf.placeholder 占位符(定义一个三阶张量 通过数据流图往里面填充数据)
    • tf.Variable 变量 (维护状态 保存值用)
  8. 变量

    • 主要作用维护特定节点的状态(模型参数)

    • 方法是操作,返回值是变量

    • 张量的生命周期随依赖的计算完成而结束,内存释放

    • 变量常驻内存,在每一步训练(一次完整的训练,前向+后向)时不断更新其值,以实现模型参数的更新

    • 常用操作

      • #创建

        w = tf.Variable(<inital-value>,name=<>)

        #将变量作为操作的输入
        y=tf.matul(w,<another Variable|tensor>)
        z=tf.sigmoid(w+y)

        #重新赋值 w.assign(w+1.0) w.assign_add(1.0)

  9. 憨憨

  10. 憨憨

5. ensorflow