Tensorflow minst資料集訓練

2021-08-17 08:43:17 字數 1521 閱讀 5318

# -*- coding: utf-8 -*-

import tensorflow as tf

from tensorflow.examples

.tutorials

.mnist import input_data

mnist = input_data.read_data_sets("mnist_data/", one_hot=true)

#放置佔位符,用於在計算時接收輸入值

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

#建立兩個變數,分別用來存放權重值w和偏置值b

w = tf.variable(tf.zeros([784, 10]))

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

#使用tensorflow提供的回歸模型softmax,y代表輸出

y = tf.nn

.softmax(tf.matmul(x, w) + b)

#為了進行訓練,需要把正確值一併傳入網路

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

#計算交叉墒

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

#使用梯度下降演算法以0.01的學習率最小化交叉墒

train_step = tf.train

.gradientdescentoptimizer(0.01).minimize(cross_entropy)

#初始化之前建立的變數的操作

init = tf.initialize_all_variables()

#啟動初始化

sess = tf.session()

sess.run(init)

#開始訓練模型,迴圈1000次,每次都會隨機抓取訓練資料中的100條資料,然後作為引數替換之前的佔位符來執行train_step

for i in range(1000):

batch_xs, batch_ys = mnist.train

.next_batch(100)

sess.run(train_step, feed_dict=)

#評估模型,tf.argmax能給出某個tensor物件在某一維上資料最大值的索引。因為標籤是由0,1組成了one-hot vector,返回的索引就是數值為1的位置

correct_prediction = tf.equal(tf.argmax(y, 1), tf.argmax(y_, 1))

#計算正確**項的比例,因為tf.equal返回的是布林值,使用tf.cast可以把布林值轉換成浮點數,tf.reduce_mean是求平均值

accuracy = tf.reduce_mean(tf.cast(correct_prediction, "float"))

#在session中啟動accuracy,輸入是mnist中的測試集

print sess.run(accuracy, feed_dict=)

清華集訓2016 資料互動

題目描述 乙個簡單的網路系統可以被描述成一棵無根樹。每個節點為乙個伺服器。連線伺服器與伺服器的資料 線則看做一 條樹邊。兩個伺服器進行資料互動時,資料會經過連線這兩個伺服器的路徑上的所有服務 器 包括這兩個伺服器 自身 每個資料互動請求都有乙個非負的重要度,越重要的請求顯然需要得 到越高的優先處理權...

用Mnist資料集訓練神經網路

這篇部落格是我在學習用tensorflow搭建神經網路時,所作的一些筆記。搭建的神經網路有兩層隱藏層,和輸入輸出層。採用全連線的方式進行傳輸,優化演算法採用自適用矩估計演算法。1.首先,匯入tensorflow官方提供的庫 import tensorflow as tf from tensorflo...

6 28集訓 集訓模擬賽2

第一題 n只有4,直接暴力 第二題 tarjan縮點之後跑乙個最長路 第三題 dp 第四題 思維量較大 n 的範圍很小,所以我們考慮狀壓dp 我們設 f i j k m 為第一行的狀態為 i 第二行的狀態為 j 第三行的狀態為 k 第四題的狀態為 m 所需要的最小步數 所以我們暴力列舉6重迴圈,時間...