1. 텐서플로우(TensorFlow) 아키텍처(Architecture)
-
텐서플로우는 대규모 분산 학습 및 추론을 위한 파이썬 라이브러리
-
텐서플로우는 기본적으로 크로스 플랫폼 라이브러리(플랫폼에 상관이 거의 없음)
-
C API가 로우 레벨단에 존재하므로 프로그래머가 다양한 프로그래밍 언어를 이용해 소스코드를 작성할 수 있도록 해준다는 특징이 있음
-
C API에서 작성하는 것이기에 C++에서도 가능함
1) 클라이언트(Client)
-컴퓨터 연산과정을 데이터플로우 그래프 형태로 표현
-세션을 이용해 한번의 그래프 실행 시작을 알릴 수 있음
-우리가 작업하는 부분은 클라이언트 부분
2)분산된 마스터(Distributed Master)
-세션의 시작을 위한 인수로 정의된 그래프에서 부분그래프를 정리
-하위 그래프를 다른 프로세스와 장치에서 실행되는 여러 조각으로 분할
-그래프 조각이 처리될 수 있도록 작업자 서비스에게 분배
-작업자 서비스가 실행할 그래프 조각을 초기화
3)작업자 서비스(Worker Services)
-특정 하드웨어에게 적절한 커널 기능을 이용하는 그래프 작업의 실행을 관리
-그래프가 효율적으로 동작하도록 하기 위해서 커널기능을 잘 이용하는 것이 관건
-다른 작업자 서비스와 실행결과를 주고받음
4)커널기능(Kernel Implementations)
-개별적인 그래프 작업을 처리
-실질적으로 컴퓨터가 연산을 처리하는 부분
2. 세션(Session)
-
텐서플로우는 방향 그래프를 기반으로 설계된 기계학습 라이브러리
-
텐서플로우에서 데이터의 처리 단위는 텐서이기 때문에 이러한 현상 나옴
-
함수가 바로 연산을 하는 것이 아닌 그래프를 정의한 것임
-
연산을 수행하기 위해서 필요한 것이 세션(Session)임
sess = tf.Session()
sess.run()을 통해 그래프를 동작하도록 할 수 있음
print(c)를 했을 때 결과 값을 보면 텐서는 연산이 된것이 아닌 형태만 잡혀있다는 것을 알 수 있음
'데이터분석' 카테고리의 다른 글
텐서플로우(Tensorflow)선형회귀 정리 (0) | 2019.12.07 |
---|---|
텐서플로우 K-평균(K-means), 팬더스(Pandas), 넘파이(Numpy), 맷플랏라이브러리(Matplotlib) (0) | 2019.12.03 |
텐서플로우(Tensor Flow) 변수와 상수, placeholder, 기본함수 (0) | 2019.12.01 |
텐서플로우(TensorFlow) 비용함수, 경사하강, 초기값 함수 (0) | 2019.11.30 |
로또875회당첨번호와 지난번 분석 번호 비교하기 (0) | 2019.09.08 |