- 导入模块
#projector是tensorboard中的高维向量可视化模块
import tensorflow as tf
from tensorflow.examples.tutorials.mnist import input_data
from tensorflow.contrib.tensorboard.plugins import projector
- 载入数据集(mnist)
#提前下载好mnist数据集放在MNIST_data文件夹中
mnist=input_data.read_data_sets('MNIST_data/',one_hot=True)
- 初始化参数
max_steps:整个数据集运行的次数
image_num:从整个数据集中取出3000张手写数字图像作为本次训练网络的训练集
DIR:文件的路径,MNIST_data的上一级目录
#运行次数
max_steps=1001
#图片数量
image_num=3000
#文件路径
DIR='E:/postgraduate_study/tensorflow_study/'
- 定义一个对话
sess=tf.Session()
- 正式载入图片
embedding=tf.Variable(tf.stack(mnist.test.images[:image_num],False,name='embedding'))
#embedding是将3000张图片组合再一起,形成一个数组
embedding的输出结果:
<tf.Variable ‘Variable:0’ shape=(3000, 784) dtype=float32_ref>
#解释tf.stack(),使用stack会将两个数组拼接在一起,并升维,当axis=0时,表示按照原来数组的顺序,直接组合升维即可;当axis=1时,表示分别取每个数组的第一行组成一个新数组,再抽取第二行组成一个新的数组,然后升维。
import tensorflow as tf
sess=tf.Session()
a=tf.constant([[1,2,3],[4,5,6]])
b=tf.constant([[7,8,9],[10,11,12]])
c=tf.stack([a,b],axis=0)
d=tf.stack([a,b],axis=1)
print(sess.run(a))
print