머신러닝

1-3 TensorFlow 모듈응용 Computational Graph 덧셈 placeholder 예제

coding art 2017. 12. 5. 13:18
728x90


                                    




Tensorflow 모듈을 이용하여 2개의 상수인 숫자를 더하는 코드를 작성하였다. 여기에서 좀 더 나아가 2개의 placeholder를 도입하여 노드들을 설정하고 연산을 정의한 후 Session 작업 단계에서 placeholder에 값을 입력해주는 TensorFlow 코드를 작성해 보기로 한다.

 

placehoder 란 말 그대로 메모리에 속성을 부여한 자리만 잡아 놓은 후 실행 단계에서 값을 입력해 주는 역할을 한다.

 

초기 노드 설정 단계에서 2개의 placeholder를 설정하고 이 2개의 placeholder를 더하는 연산을 정의하도록 한다. Session 실행 단계에서 feed_dict={⚫⚫⚫}를 사용하여 값을 입력하도록 한다.


반면에 코드 내에서 학습용 데이터, 테스트용 데이터 및 정밀도 확인용 데이터를 되풀이 하여 실행하는 머신러닝 코드에서는 초기에 placeholder 로 정의한 후 sess.run() 단계에서 매번 데이터만 갱신해 주면 되는 편리함이 있다.


즉 session.run 이전 단계에서는 노드와 엣지로 구성되는 일고리듬 구현을 위한 computational graph 를 형성 후 session.run 을 실행하게 된다. 즉 Graph 와 실행 단계로 구분된다는 의미이다.

placeholder 의 경우는 Graph에서 반드시 사전 설정해 두어야 알고리듬 그래프가 완성되면 구체적인 실행은 session.run에서 이루어지게 된다.