您的位置:首页 > 其它

tensorflow浅谈

2016-05-13 11:04 260 查看
首先,tensorfolw 见名知义。tensor:张量--多维度矩阵,flow-计算流动。合起来理解就是张量在计算模型上的流动。

其次,在官方文档看了一部分之后,此处对几个常出现的语句进行解析

softmax回归:

实现部分:

x=tf.placeholder("float",[None.784])

#此处的x只是一个占位符,代表把输入的图像转称784维的向量,因为输入图像是28X28的

W = tf.Variable(tf.zeros([784,10]))

b = tf.Variable(tf.zeros([10]))

#权值和偏置:权值的维度是784X10得到证据值向量。b偏置是是一个10维的,是为了方便和w相加

y = tf.nn.softmax(tf.matmul(x,W) + b)

#实现模型的线性回归,输出的是概率,也就是对应的是哪个数字的概率(预测分布)

y_ = tf.placeholder("float", [None,10])

#设置占位符在存放图片的正确label值

cross_entropy = -tf.reduce_sum(y_*tf.log(y))

#交叉熵,其中y_表示实际分布(one-hot vector 表示的图片label),y表示预测分布。此主要通过计算张量所有元素综合,是为了更好的地描述模型

#........接下来就是梯度下降

#解释下那个循环端代码

for i in range(1000):

batch_xs, batch_ys = mnist.train.next_batch(100)

sess.run(train_step, feed_dict={x: batch_xs, y_: batch_ys})

#随进抓取100个批处理点,每次执行train_step时候,将之前选择的数据,填充至所设置的占位符中,作为模型的输入。

#........模型评估这个地方比较容易看懂,就不解释了。就是通过一个返回的一组布尔值转化成浮点数,然后取平均值。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: