300x250
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 킥스타트
- CSS
- 알고리즘
- 리눅스
- 프로그래머스
- 파이썬
- dp
- OS
- 순열
- 프로그래밍
- AI
- 동적 프로그래밍
- 그래프
- 동적프로그래밍
- DFS
- 네트워크
- 운영체제
- BFS
- 코딩
- 딥러닝
- 백준
- google coding competition
- 코딩테스트
- 구글 킥스타트
- 코딩 테스트
- nlp
- 브루트포스
- kick start
- PYTHON
- linux
Archives
- Today
- Total
오뚝이개발자
[Keras] 케라스의 내부 시스템 구조 본문
728x90
300x250
케라스의 구조가 내부적으로 어떻게 되어있는지를 파악하는 것은 본인이 어느 위치에서 작업을 하고 있는가를 파악하는데 중요하다. 오늘은 케라스의 시스템이 내부적으로 어떻게 구성되어 있는지에 대해 알아보자! 아래 그림은 케라스의 내부 구조를 도식화 한 것이다.

중앙의 큰 사각형은 하나의 가상환경(virtual environment)이다. 이러한 가상환경은 user가 만들기에 따라 여러개 있을 수도 있다.(virtual env1, virtual env2...) 실제로 우리가 직접 다루는 부분은 바로 python, keras 부분이다. 사실 케라스를 사용하면 그 아랫단인 tensorflow까지도 잘 만지지 않는다.(디테일한 텐서 level에서의 설정이 필요한 경우가 아니고서는 말이다.) 그 아랫단인 cuDNN, CUDA까지도 사실 직접적으로 만질 일은 거의 없다.(이 부분만을 포커싱하여 연구하는 분야도 있긴 하다.)
그 아랫단은 GPU와 CPU, 그리고 저장장치인 HDD, SSD로 이루어져 있다. 사실 우리가 딥러닝 모델을 설계하며 데이터를 저장해두거나 내려받는데 이 때 데이터들은 HDD나 SSD에 저장이 된다. 그러나 이러한 저장장치들을 CPU하고만 직접적으로 소통하기 때문에 GPU에서는 CPU와 소통해서 이러한 데이터에 접근해 이용할 수 있는 시스템이 필요하다.
728x90
300x250
'AI > 케라스 창시자에게 배우는 딥러닝' 카테고리의 다른 글
딥러닝 행렬 계산 도식화, 행렬 계산 과정 (0) | 2021.10.03 |
---|---|
케라스 창시자에게 배우는 딥러닝 책 실습 코드 (0) | 2021.09.26 |