Thông thường trong Python, thư mục mặc định phải là thư mục làm việc hiện tại mà tôi giả định hoặc có thể trong thư mục người dùng mặc định. Tuy nhiên, sau khi chạy đoạn mã sautừ đây , tôi không tìm thấy dữ liệu đã tải xuống ở hai nơi trước đó. Sau đó, vấn đề là đường dẫn tương đối /tmp/tensorflow/mnist/input_data
Nó nằm ở đâu? Cảm ơn!
từ __future__ nhập tuyệt đối_import
from __future__ import division
từ __future__ nhập print_function
nhập khẩu argparse
import sys
từ tensorflow.examples.tutorials.mnist nhập input_data
nhập tensorflow astf
CỜ = Không có
định nghĩa chính (_):
#Nhập dữ liệu
mnist = input_data.read_data_sets(FLAGS.data_dir, one_hot=True)
#Tạo mô hình
x = tf.placeholder(tf.float32, [Không có, 784])
W = tf.Variable(tf.zeros([784, 10]))
b = tf.Variable(tf.zeros([10]))
y = tf.matmul(x, W) + b
# Xác định mất mát và tối ưu hóa
y_ = tf.placeholder(tf.float32, [Không có, 10])
# Công thức thô của entropy chéo,
#
# tf.reduce_mean(-tf.reduce_sum(y_ * tf.log(tf.nn.softmax(y)),
# giảm_indices=[1]))
#
# có thể không ổn định về số lượng.
#
# Vì vậy, ở đây chúng tôi sử dụng tf.nn.softmax_cross_entropy_with_logits trên bản thô
# kết quả đầu ra là 'y' và sau đó tính trung bình cho toàn bộ lô.
cross_entropy = tf.reduce_mean(
tf.nn.softmax_cross_entropy_with_logits(nhãn=y_, logits=y))
train_step = tf.train.GradientDescentOptimizer(0.5).minimize(cross_entropy)
sess = tf.InteractiveSession()
tf.global_variables_initializer().run()
#Xe lửa
cho _ trong phạm vi (1000):
batch_xs, batch_ys = mnist.train.next_batch(100)
sess.run(train_step, Feed_dict={x: batch_xs, y_: batch_ys})
#Thử nghiệm mô hình đã huấn luyện
Correct_prediction = tf.equal(tf.argmax(y, 1), tf.argmax(y_, 1))
độ chính xác = tf.reduce_mean(tf.cast(true_prediction, tf.float32))
print(sess.run(độ chính xác, Feed_dict={x: mnist.test.images,
y_: mnist.test.labels}))
nếu __name__ == '__main__':
trình phân tích cú pháp = argparse.ArgumentParser()
Parser.add_argument('--data_dir', type=str, default='/tmp/tensorflow/mnist/input_data',
help='Thư mục lưu trữ dữ liệu đầu vào')
FLAGS, chưa được phân tích = parser.parse_known_args()
tf.app.run(main=main, argv=[sys.argv[0]] + chưa được phân tích cú pháp)
Tôi cũng đã chạy các ví dụ và đường dẫn của tôi được lưu trữ trong c:. Tôi đang sử dụng cửa sổ.
Đường dẫn đầy đủ là:
C:\tmp\tensorflow\mnist\input_data
Nếu bạn muốn nó liên quan đến thư mục làm việc của bạn, hãy thêm mộtđiểm("."):
Parser.add_argument('--data_dir', type=str, default='./tmp/tensorflow/mnist/input_data',
help='Thư mục lưu trữ dữ liệu đầu vào')
Tôi là một lập trình viên xuất sắc, rất giỏi!