Facebook에서 개발한 머신러닝 프레임워크
Pytorch는 python을 위한 오픈소스 머신 러닝 라이브러리이다.
-자동 차별화, 텐서 계산 및 GPU 가속을 전문으로 함, 따라서 딥러닝과 같은 최첨단 머신러닝 애플리케이션에 매우 적합함
Torch를 기반으로 함
-Torch란? 딥러닝을 위한 초기 프레임워크
Tensorflow의 사용자가 많지만 비직관적인 구조와 난이도 때문에 Pytorch의 사용자가 늘어나고 있는 추세임
Pytorch는 두 개의 높은 수준의 파이선 패키지 형태로 제공한다.
1.GPU로 가속화한 행렬 계산 예)NumPy
2.테이프 기반 자동 미분 시스템을 기반으로 구축된 심층 신경망
-테이프 기반 자동 미분 시스템이라는 용어는 그래디언트 또는 함수의 미분을 계산하는 데 사용되는 메커니즘을 가리킵니다. 이 시스템은 일반적으로 "오토그라드"(자동 미분) 시스템이라고 합니다.
-테이프: PyTorch에서 텐서에서 연산을 수행하면 자동 그래프 시스템이 이러한 연산을 "테이프" 또는 작업 기록에 기록합니다. 이 테이프는 본질적으로 텐서에 적용된 연산을 실행된 순서대로 기록한 것입니다.
###Pytorch의 장점
1.설치가 간편하다.
2.이해와 디버깅이 쉬운 직관적이고 간결한 코드로 구성되었다.
3.Define by Run 방식을 기반으로 한 실시간 결과값을 시각화 한다.
4.파이썬 라이브러리(Numpy, Scipy, Cython)와 높은 호환성을 가진다.
5.Winograd Convolution Algorithm 기본 적용을 통한 빠른 모델 훈련이 가능하다.
6.모델 그래프를 만들 때 고정상태가 아니기 때문에 언제든지 데이터에 따라 조절이 가능하다(유연성).
7.Numpy스러운 Tensor연산이 GPU로도 가능하다.
8.자동 미분 시스템을 이용해 쉽게 DDN(DataDirect Networks)을 짤 수 있다.
9.학습 및 추론 속도가 빠르고 다루기 쉽다.
*워크플로우
-출처링크텍스트
많은 것을 배웠습니다, 감사합니다.