안녕하세요
이승혁입니다!
지난 포스팅에서 텐서플로우에 대해 간단하게 ? 알아볼 수 있었습니다!
2021/01/15 - [딥러닝/Tensorflow] - [Tensorflow] Tensor ? Tensorflow ?
이번 시간에는 텐서플로우의 연산을 실습해 보도록 하겠습니다!
텐서플로의 연산 그래프는 어떤 연산을 할 지 정의한 후
외부 매커니즘을 통해 그 연산을 실행시키는 구조입니다.
위 코드는 실제로 연산이 수행되지 않았습니다.
a 와 b를 더하는 그래프만 그려져 있는 상태 입니다..
다음과 같이 계산을 실행합니다.
sess는 tensorflow의 Session 객체를 사용해 그래프를 실행합니다.
파이썬 3 버전은 문자열 unicode가 기본입니다.
str을 이용해서 encoding 처리를 해주어 binary 타입을 unicode 타입으로 반환합니다.
# 연산 그래프 ?
노드, 꼭지점으로 부르는 서로 연결된 개체의 집합입니다.
노드는 변을 통해 서로 연결됩니다.
데이터 흐름 그래프에서 변은 어떤 다른 노드로 흘러가는 데이터의 방향입니다.
tensorflow에서 그래프 각 노드는 하나의 연산을 나타냅니다.
입력 값을 받을 수 있고, 다른 노드로 전달할 값을 출력도 가능합니다.
Sess.run() 메서드에 f를 인수로 지정해 실행을 요청합니다.
이 인수를 fetch라고 합니다.
연산하고자 하는 그래프의 요소에 해당합니다.
#텐서 플로우의 큰 장점
그래프의 전체 크기, 복잡도에 상관 없이 필요한 일부분만 실행 가능합니다.
d만 요청하면 a,b출력값만 계산하면 되고, 실제로도 그렇게 수행합니다.
# 그래프 생성
tensorflow를 임포트 한 시점에 defaultGraph가 생성됩니다.
만드는 노드는 자동으로 이 그래프에 연결됩니다.
tf.Graph() 함수를 사용해 새로운 그래프를 생성할 수 있습니다.
node.graph 속성을 통해 어떤 그래프와 연결 됐는지 확인 가능합니다.
# 여러 그래프 사용
with 구문을 as_defaul() 명령과 함께 사용합니다.
간단하게 그래프, 그래프 생성, 연산에 대한 개념을 알아보았습니다.
다음 시간에는 변수 생성, 변수 초기화 함수에 대해 알아보도록 하겠습니다!!
'딥러닝 > Tensorflow' 카테고리의 다른 글
[Tensorflow] Tensor ? Tensorflow ? (2) | 2021.01.15 |
---|---|
Tensorflow - 환경 설정 (0) | 2021.01.04 |