머신러닝3 [PyTorch] PyTorch C++ Custom Operator 추가하기 이전 글에서 PyTorch의 C++ API를 이야기 하면서 PyTorch의 내부 구조가 어떻게 구성되어 있고, 거기와 관련된 기능들을 확인했었습니다. 이번에는 이전 글에서 이야기 하지 못한 TorchScript 와 C++ Extensions에 대해서 간단히 이야기 해보고, 나만의 Custom Operator를 추가하는 방법에 대해서 이야기 해보겠습니다. TorchScript TorchScript은PyTorch 1.0부터 새롭게 도입되었고, C++ 같은 고성능 환경에서 실행할 수 있는 PyTorch 모델의 중간 표현 입니다. Python의 하위 집합으로 TorchScript 컴파일러을 통해 구문 분석, 컴파일 및 최적화할 수 있습니다. 이를 통해 모델을 언어와 하드웨어에 독립적인 형태로 저장하고, 나중에 .. 2023. 12. 15. [PyTorch] PyTorch C++ API 이해하기 이전 글에서 PyTorch 내부의 Caffe2 라이브러리에서 어떻게 다양한 변수 타입들을 지원하고, 다양한 디바이스들을 지원하는지 확인했었습니다. 이번에 그보다 상위 레벨에서 PyTorch가 어떻게 동작하는 이해하기 위해서 C++ API에 대해서 알아보겠습니다. 위의 이미지를 보게 되면 많은 분들이 아시는거 처럼 PyTorch는 외부 인터페이스는 Python으로 되어 있고, 계산 기능에 해당하는 내부 구현(backend)은 대부분 C/C++로 되어 있습니다. (Python C++ extension) Python은 C++에 비해 접근성이 편하다는 장점을 통해서 많은 분들이 PyTorch를 Python의 형태로 접하고 있습니다. 하지만 낮은 지연성이 요구되거나 멀티스레드 환경에서는 Python을 사용하는데 .. 2023. 12. 11. [개발 환경] WSL2에서 Jupyter Notebook Setting (VS Code) PyTorch를 제대로 공부해보기 위해서 여러가지 환경을 셋팅하던 중에 만나 이슈들을 정리해 보겠습니다. 저의 개발 환경은 아래와 같습니다. OS: Windows 10 (WSL2 Ubuntu 22.04.1 LTS) 1. jupyter notebook 명령어 실행 후 아래와 같은 결과가 출력되면서 정상동작하지 않는 이슈 이 이슈는 윈도우환경에서 사용하는 브라우저 실행파일(.exe)의 경로를 'BROWSER'라는 환경변수를 등록함으로써 해결 할 수 있습니다. 관련링크: Issue with Starting Jupyter Notebook from WSL - Notebook - Jupyter Community Forum Issue with Starting Jupyter Notebook from WSL Hello!.. 2023. 2. 8. 이전 1 다음