
파이토치와 Tensorflow차이
팀플하다 보면 파이토치를 쓸지 텐서플로우를 쓸지 정하는데,
나는 파이토치를 주장하는 편이다.
사실 그 이유는 최근에 자주 사용하는 게 파이토치여서 그렇긴 한데😂
그러면 꼭 둘이 뭐가 다르냐는 질문을 받는다.
그럴 때 답변하기 위한 포스팅이라고 할 수 있다.😎
DCG(Dynamic Computational Graph)
Backward에서 자동미분할때 실행시점에서 그래프를 정의하는 방법이다.
Define and run
말 그래도 정의하고 실행하는 것이다.
그래프를 먼저 정의 → 실행시점에 데이터를 feed한다.
TF, Pytorch
Pytorch는 Define by run(DCG)를 사용하여 실행하면서 그래프를 생성하고
Tensorflow는 Define and run으로 실행 전에 그래프를 정의한다.
그래서 파이토치를 사용하면 디버깅이 쉬워진다.
PyTorch 장점
- Define by run으로 즉시 확인 가능하다. → pythonic code
- GPU 지원과 좋은 API
- 사용하기 편리
Tensorflow에 대한 장점을 하나 적자면...
Tensorflow는 상업적으로 사용하기 편리하고 PyTorch는 논문 구현 등 연구에 좋다.
Numpy + AutoGrad + Function
- Numpy 구조를 가지는 Tensor 객체로 array 표현한다.
- 자동미분을 지원하여 DL연산을 지원한다.
- 다양한 형태의 DL을 지원하는 함수와 모델을 지원한다.
'AI' 카테고리의 다른 글
PyTorch Monitoring tools | 학습과정 쉽게 그래프로 살펴보기 (0) | 2024.01.12 |
---|---|
PyTorch | Model save, checkpoints, freezing (0) | 2024.01.12 |
PyTorch | Dataset & DataLoader (0) | 2024.01.12 |
PyTorch | nn.Module, Parameter, Backward (0) | 2024.01.12 |
PyTorch Basic (0) | 2024.01.12 |