接下来会更新一系列博客,介绍TensorFlow的入门使用,尽可能详细。

 

本文概述:

说明TensorFlow的数据流图结构

 

1、数据流图介绍

      (第一章第一部分)TensorFlow框架介绍

 

        (第一章第一部分)TensorFlow框架介绍

 TensorFlow是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。节点(Operation)在图中表示数学操作,图中的线(edges)则表示在节点间相互联系的多维数据数组,即张量(tensor)。

2、案例:TensorFlow实现一个加法运算

2.1 代码

# 实现一个加法运算
con_a = tf.constant(3.0)
con_b = tf.constant(4.0)

sum_ = tf.add(con_a, con_b)

with tf.Session() as sess:
    print(sess.run(sum_))

注意:此时往往会出现一堆红色警告,忽略或者输入下面的代码屏蔽即可。

警告指出您的CPU支持AVX运算加速了线性代数计算,即点积,矩阵乘法,卷积等。可以从源代码安装TensorFlow来编译,当然也可以选择关闭

import os
os.environ['TF_CPP_MIN_LOG_LEVEL']='2'

2.2 TensorFlow结构分析

TensorFlow 程序通常被组织成一个构建图阶段和一个执行图阶段

在构建阶段,op(op指的就是上面说的节点,表示数学操作,如加法,乘法,点积等)的执行步骤被描述成一个图。

在执行阶段,使用会话执行执行图中的 op。

  • 图和会话 :
    • 图:这是 TensorFlow 将计算表示为指令之间的依赖关系的一种表示法
    • 会话(Session):TensorFlow 跨一个或多个本地或远程设备运行数据流图的机制
  • 张量:TensorFlow 中的基本数据对象
  • 节点:提供图当中执行的操作

简单地说,tf框架中,代码的执行都要在会话中进行,而这里所说的图往往指的都是默认图,不需要我们去指定。因此我们只要开启会话,(在默认图中)执行代码即可,代码所执行的操作,我们称之op,即节点。