링크 : https://www.anaconda.com/download/
2. tensorflow(cpu 혹은 gpu 설치하기)
먼저 anaconda prompt를 열어서
cpu 버전(nvidia gpu가 없는 경우)
pip install --upgrade tensorflow
gpu 버전(nvidia cuda 9.0, cudnn 7.0버전의 설치가 필요해요. 다른 버전일 경우 에러)
pip install --upgrade tensorflow-gpu
tensorflow 설치가 완료되면...
anaconda prompt에 먼저 python을 치시구요
import tensorflow as tf
hello = tf.constant('Hello, TensorFlow!')
sess = tf.Session()
print(sess.run(hello))
코드가 정상 작동되면 일단 tensorflow 설치는 정상적으로 된 셈이에요.
3. tensorboard 코드 실행시키기
anaconda prompt에 tensorboard --logdir=path/to/log-directory 를 치시면 됩니다.
--logdir=텐서보드 로그 경로구요.
텐서보드가 성정적으로 돌아가면 이런 식으로 나오게 되는데요.
1.7.0버전 기준으로 Tensorboard 1.7.0 at 뒤의 경로를 입력하면 tensorboard를 보실 수 있어요.
주의점은 tensorboard가 실행되는 drive와 tensorboard log 위치 드라이브가 동일해야 합니다.
성공적으로 로그가 실행되면
이런 식으로 실행 정확도와 그래프 등을 보실 수 있어요.
tensorboard 를 사용하기 위해서는 tensorflow 상에 로그를 남기는 코드를 추가해야 하는데요.
주석이 달린 아래의 mnist 예제 코드를 보시면, 추가해야 하는 코드들을 아실 수 있으실 듯요.
import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_data mnist = input_data.read_data_sets("MNIST_data/", one_hot=True) #MNIST 예시 프로그램 # with tf.name.scope() as scope는 tensorboard에 log를 남기기 위해 네트워크 단계별로 로그를 남기는 코드입니다. # Layer 1 - softmax - cross_entropy - Train 순서로 돌아갑니다. with tf.name_scope('Layer1') as scope: x = tf.placeholder(tf.float32, [None, 784]) W = tf.Variable(tf.zeros([784, 10])) b = tf.Variable(tf.zeros([10])) with tf.name_scope('Softmax') as scope: y = tf.nn.softmax(tf.matmul(x, W) + b) y_ = tf.placeholder(tf.float32, [None, 10]) with tf.name_scope('cross_entropy') as scope: cross_entropy = tf.reduce_mean(-tf.reduce_sum(y_ * tf.log(y), reduction_indices=[1])) with tf.name_scope('Train') as scope: train_step = tf.train.GradientDescentOptimizer(0.5).minimize(cross_entropy) init = tf.global_variables_initializer() # 코드 돌리는 부분, sess.run() sess = tf.Session() sess.run(init) # (1) 로그로 남길 값을 등록 tf.summary.scalar("loss", cross_entropy) # (2) 하나의 표현으로 병합 summ = tf.summary.merge_all() # (3) 작성자 생성하면서 그래프 추가 writer = tf.summary.FileWriter('./logs_MN/loss_result2', sess.graph) # 1000 회 iteration for i in range(1000): batch_xs, batch_ys = mnist.train.next_batch(100) s, _ = sess.run([summ,train_step], feed_dict={x: batch_xs, y_: batch_ys}) #Tensorboard log writer with sess.run writer.add_summary(s, global_step=i) correct_prediction = tf.equal(tf.argmax(y, 1), tf.argmax(y_, 1)) accuracy = tf.reduce_mean(tf.cast(correct_prediction, tf.float32)) # 결과 print print(sess.run(accuracy, feed_dict={x: mnist.test.images, y_: mnist.test.labels}))
tensorboard 함수 참고자료
http://byungjin-study.blogspot.kr/2016/08/tensorboard.html
tensorboard api 원문 설명 자료
https://www.tensorflow.org/api_docs/python/index.html
댓글 없음:
댓글 쓰기
글에 대한 의문점이나 요청점, 남기고 싶은 댓글이 있으시면 남겨 주세요. 단 악성 및 스팸성 댓글일 경우 삭제 및 차단될 수 있습니다.
모든 댓글은 검토 후 게시됩니다.