tensorflow_learning_2
tensorflow学习笔记_2
计算图与张量
TensorFlow中的计算可以表示为一个有向图(计算图),其中每一个运算操作作为一个节点,节点与节点的连接称为边,一张计算图描述了数据的计算流程,我们可以对计算图上的各个分支进行改变来达到我们的运算目的。在计算图的边中流动的数据被称为张量(tensor),张量的数据类型可以事先定义,也可以通过计算图的结构推导得出。
一个运算操作代表了一类抽象运算(如矩阵乘法或向量加法),运算操作必须有自己的属性,但是所有属性都必须被预先设置,或者在计算图沿着边运行时可以被推断出来。
会话 Session
session是用户使用tensorflow的互交式接口,用户可以通过session的Extend方法添加新的节点和边来创建计算图,然后通过session的Run方法执行计算图。
大多数运算中,tensor不会一直保留下去。而Variable是一类特殊的运算操作,可以将一些需要保留的tensor储存在内存或者显存当中。每执行一次计算图后,Variable中的tensor都会被保存,同时在计算过程中,tensor的值也可以被更新。
csdn上还是有很多的教程 概念理解
MNIST手写数字识别
from tensorflow.examples.tutorials.mnist import input_data
import tensorflow as tf
mnist = input_data.read_data_sets("MNIST_data/", one_hot=True)
print(mnist.train.images.shape,mnist.train.labels.shape)
print(mnist.test.images.shape,mnist.test.labels.shape)
print(mnist.validation.images.shape,mnist.validation.labels.shape)
结果输出为
(55000, 784) (55000, 10) (10000, 784) (10000, 10) (5000, 784) (5000, 10)
一个例程 存