본문 바로가기
Python/ML&DL

[파이썬, Python] 파이토치(Pytorch)란❓ & 파이토치의 특징 알아보기!🧐

by coding-choonsik 2023. 6. 23.
728x90
반응형
SMALL

1. 파이토치(PyTorch)

  • 딥 러닝과 기계 학습을 위한 오픈 소스 프레임워크
  • Python 기반의 과학 계산 패키지인 토치(Torch)를 기반으로 개발
  • 텐서 연산과 자동 미분을 위한 기능을 제공하여 신경망 모델의 구성, 학습, 추론을 쉽게 구현

 

 

2. 파이토치의 특징

2-1. 장점

  • 설치가 간편
  • 이해와 디버깅이 쉬운 직관적이고 간결한 코드로 구성
  • Define by Run 방식을 기반으로 한 실시간 결과값을 시각화
  • 파이썬 라이브러리(Numpy, Scipy, Cython)와 높은 호환성
  • Winograd Convolution Algorithm 기본 적용을 통한 빠른 모델 훈련이 가능
  • 모델 그래프를 만들 때 고정상태가 아니기 때문에 언제든지 데이터에 따라 조절이 가능
  • Numpy스러운 Tensor연산이 GPU로도 가능
  • 학습 및 추론 속도가 빠르고 다루기 쉬움

 

2-2. 파이토치의 패키지

출처: https://ko.wikipedia.org/wiki/PyTorch

 

 

 

3. Pytorch vs. TensorFlow in 2023

원문

참고블로그

3-1. 모델 가용성

1) Hugging Face

  • Hugging Face는 다양한 NLP 모델(딥러닝 모델) 및 라이브러리를 제공하며, 이를 통해 개발자와 연구자들은 자연어 처리 작업을 간단하게 수행하고, 다양한 NLP 모델을 활용할 수 있음
  • HuggingFace를 사용하면 단 몇 줄의 코드만으로 훈련되고 조정된 SOTA 모델을 파이프라인에 통합할 수 있음
  •  
    ▲ HuggingFace에서 사용할 수 있는 모델 중 PyTorch 또는 TensorFlow 전용이거나 두 프레임워크 모두에서 사용할 수 있는 모델의 총 개수가 표시된 차트
  • TensorFlow 전용 모델은 약 8%에 불과하며, 전체 모델의 약 14%만이 TensorFlow에서 사용할 수 있음(작년의 16%에서 감소).
  • 2022년에는 45,000개 이상의 PyTorch 전용 모델이 추가된 반면, TensorFlow 전용 모델은 약 4,000개에 불과

▲ 허깅페이스에서 가장 인 기 있는 30개 모델로

 

 

 

2) 연구 논문

  • 상위 8개 연구 저널의 데이터를 집계한 결과,  PyTorch의 채택은 매우 빨르게 성장했고, 불과 몇 년 만에 약 7%에 불과하던 사용률이 PyTorch 또는 TensorFlow를 사용하는 논문의 거의 80%에서 사용하게 됨

▲  상위 8개 연구 저널의 Pytorch와 Tensorflow 사용율

 

 

3) 코드가 있는 논문

  • 머신 러닝 논문, 코드, 데이터 세트 등으로 무료 오픈 리소스를 제공하는 것을 사명으로 하는 웹사이트인 Papers with Code의 데이터에서 3,319개의 리포지토리 중 70%에 가까운 3,319개의 리포지토리가 PyTorch로 구현된 반면, TensorFlow로 구현된 논문은 4%에 불과했습니다(작년의 11%에서 감소).
파이토치가 현재 연구 환경을 지배하고 있다
커뮤니티에서 널리 채택되고 대부분의 출판물/사용 가능한 모델에서 PyTorch를 사용한다

3-2. 배포

    • 어떤 프레임워크가 가장 뛰어난 모델에 액세스할 수 있는지를 고려하는 것 외에도 각 프레임워크의 엔드투엔드 딥러닝 프로세스를 고려하는 것이 중요
    • TensorFlow에는 엔드투엔드 딥 러닝 프로세스를 쉽고 효율적으로 만들어주는 수많은 관련 도구가 있음. 특히 배포의 경우, TensorFlow Serving과 TensorFlow Lite를 사용하면 클라우드, 서버, 모바일 및 IoT 장치에 손쉽게 배포 가능
    • PyTorch 사용자가 모델 위에 REST API를 구축하기 위해 Flask나 Django와 같은 것을 사용해야 했지만, 이제는 TorchServe와 PyTorch Live의 형태로 기본 배포 옵션이 제공
      • PyTorch는 2019년에 Android, iOS, Linux에 최적화된 머신 러닝 모델을 배포하기 위한 엔드투엔드 워크플로우를 만들기 위해 설계된 PyTorch Mobile을 처음 출시

 


3-3. 파이토치와 텐서플로우 중 어떤 것을 사용할 것인가?

  • 어떤 프레임워크가 가장 적합한지 결정하는 데 도움을 드리기 위해 권장 사항을 아래 플로우 차트로 정리했으며, 각 차트는 관심 분야에 맞게 조정됨

▲ 산업 분야에 종사할 경우

 

▲ 연구원의 경우

 

 

▲ 교수일 경우

 

 

728x90
반응형
LIST