반응형
들어가며이 시리즈의 여정을 여기까지 따라와주셔서 감사합니다. 우리는 다음과 같은 단계를 거쳐왔습니다.LibTorch와 PyTorch 개념 이해 (1편)PyTorch의 C++ 배포판인 LibTorch를 소개하고, 왜 C++ 환경에서 PyTorch를 사용하는지, 또 Python과 C++을 함께 활용하는 최종 목표를 살펴보았습니다.LibTorch 환경 셋업 및 CMake 프로젝트 기초 (2편)LibTorch를 다운로드하고, CMake를 통해 간단한 "Hello LibTorch" 프로젝트를 구성하며 C++에서 텐서 연산을 위한 기초를 닦았습니다.C++에서 텐서 다루기 (3편)다양한 텐서 초기화와 연산, 모양 변경, GPU 사용 방법 등을 예제 코드를 통해 습득하며 C++에서도 Python PyTorch와 비슷한..
많은 개발자와 연구자들이 PyTorch를 이용해 Python 환경에서 딥러닝 모델을 개발하고 학습합니다. 하지만 실제 프로덕션 환경이나 고성능 애플리케이션에서는 C++ 기반의 애플리케이션에 모델을 통합하고 싶을 때가 있습니다. 이때 Python 환경 없이도 모델을 로딩하고 추론할 수 있도록 해주는 것이 바로 TorchScript 입니다.TorchScript를 사용하면 Python으로 학습한 PyTorch 모델을 별도의 .pt 파일 형태로 내보내고, 이 파일을 C++ LibTorch 환경에서 로딩해 추론할 수 있습니다. 이 글에서는 Python에서 TorchScript 모델을 만드는 방법, 그리고 C++에서 이를 로딩해 추론하는 과정을 단계별로 살펴봅니다. 또한 단순한 완전연결 모델에서 한 걸음 더 나아가..
지난 글(2편)에서는 LibTorch 환경을 설정하고 C++에서 간단한 텐서를 생성해 출력하는 "Hello LibTorch" 예제를 실습했습니다. 이제 본격적으로 텐서 연산을 조금 더 다뤄보며, C++에서 PyTorch 텐서와 유사한 감각으로 연산을 하는 방법을 익혀봅시다.이번 글에서는 다음을 다룹니다.텐서 생성 방법과 다양한 초기화 방식기초적인 텐서 연산(덧셈, 곱셈, 행렬 연산 등)텐서 모양(Shape) 확인 및 변경GPU(CUDA) 사용을 위한 기초 개념 (CUDA 지원 환경일 경우)작은 예제 코드를 통해 실습이 과정을 통해 C++에서도 Python PyTorch API와 크게 다르지 않은 직관적인 방식으로 텐서를 다룰 수 있음을 확인할 수 있습니다.텐서 생성하기LibTorch에서는 PyTorch와..
안녕하세요! 지난 1편에서는 PyTorch와 LibTorch에 대한 개념적인 소개와, 이 시리즈에서 우리가 달성하려는 궁극적인 목표를 알아보았습니다. 이제 실제로 C++ 환경에서 LibTorch를 활용하기 위한 기초 준비를 해볼 차례입니다.이번 글에서는 다음과 같은 과정을 다룹니다.LibTorch 다운로드 및 설치 위치 정하기: 운영체제(Windows, Linux, macOS)에 따라 설치하는 방법을 안내CMake 기반의 기본 프로젝트 환경 설정:CMakeLists.txt를 작성하는 방법LibTorch 라이브러리를 C++ 프로젝트에 연결하는 법간단한 “Hello LibTorch” 예제 코드를 통해 C++에서 LibTorch가 정상적으로 동작하는지 확인이 과정을 마치고 나면, 다음 글(3편)에서 텐서 생성..
안녕하세요! LibTorch 입문 시리즈에 오신 것을 환영합니다.이 시리즈에서는 머신러닝과 딥러닝에 널리 사용되는 PyTorch를 C++ 환경에서 다루는 방법을 차근차근 알려드리려 합니다. 많은 분들이 Python 환경에서 PyTorch를 사용하며 텐서(Tensor) 연산, 모델 훈련, 추론 등을 손쉽게 경험하셨을 텐데요, 여기서 한 발 더 나아가 C++ 환경에서도 PyTorch 기능을 활용한다면 무엇이 가능할까요? 또한, C++로 작성한 성능 높은 코드를 Python에서 투명하게 사용한다면 어떨까요?이 시리즈의 최종 목표는 C++로 작성된 수치 연산 및 딥러닝 로직을 PyTorch의 C++ 라이브러리(LibTorch) 로 활용하고, 여기에 pybind11을 이용하여 Python 환경에서도 동일한 로직을..