필자가 딥러닝을 배우기시작하면서 선택한 프레임워크인데 생각보다 어렵지는 않다.
그러나 필자가 블로그에 포스팅 하는 부분들 중에서는 거의 해본적없는 분야이고
빨리 빨리 바뀌기에 이 포스터는 항상 맞을수 없다고 볼 수 있다.
그러기 때문에 읽는 입장에서 그 부분을 고려해서 읽길 바란다.
이 포스터는 Python3.6으로 Tensorflow1.2로 테스팅 했으며 작업환경은 PyCharm이며 특별한 경우가 아니면 쉘에서 실행하지 않음.
import tensorflow as tf
a = tf.constant(5,name='input_a')
b = tf.constant(7,name='input_b')
c = tf.multiply(a,b,name='mul_c')
d = tf.add(a,b,name='add_d')
e = tf.add(c,d,name='add_e')
sess = tf.Session()
print(sess.run(e))
텐서 보드
저번에 사용가능한 함수들을 자세히보면 알 수 있는 부분이 있는데 사실 모든 노드에 이름을 안 붙혀도 된다.
이름은 그냥 실행하는단계에서는 큰의미는 없을 수 있지만 텐서보드를 사용한다면 이름을 붙히는게 매우 큰 의미를 가진다.
그래서 이름을 붙혀준 것이다.
이제 텐서 보드를 사용할 준비 단계 부터 해보자.
이제 마지막에 한줄을 추가해주자.
이 한줄은 현재 그래프의 정보를 텐서 보드에 출력하는 예제이다.
참고로 교재에서는 위가 아니라 아래와 같이 되어있다.
wirter = tf.train.SummaryWriter('./mygraph',sess.graph)
바로 위의 코드는 deprecated되어 있으므로 사용하면 안된다.
정확히 말하면 사용 되지도않지만.
실행방법은 터미널에서 해야한다.
일단 출력한 파일의 경로로 가서 아래와 같이 타이핑 한다.
$tensorboard --logdir="파일 이름"
그러면 6006포트가 활성화가 되는데 localhost:6006을 확인하자.
그러면 위와같이 뜨는데 일단 잘못된건 아니니까 걱정하지마라.
지금 선택된 탭은 scalars이기 때문이다. 왜냐하면 아직 스칼라값을 출력한게 없기 때문이다.
우리는 graph를 선택해준다.
그러면 우리가 만든 그래프를 바로 도식화해서 볼 수 있다.
맞는지 확인해보자.
각각의 노드를 클릭해서 보면 각 노드의 정보를 볼 수 있다.
'Programming > Python-Tensorflow' 카테고리의 다른 글
[Tensorflow-06] 변수 (0) | 2017.08.04 |
---|---|
[Tensorflow-05] Fetches, Feed Dictionary, Place Holder (0) | 2017.08.02 |
[Tensorflow-04] 그래프 (0) | 2017.08.02 |
[Tensorflow-03] 텐서 (0) | 2017.08.02 |
[Tensorflow-01] 상수 선언과 간단한 연산, 결과보기 (0) | 2017.08.01 |