pnnx/pnnx
PyTorch Neural Network eXchange
해결하는 문제
PNNX (PyTorch Neural Network eXchange)는 PyTorch 모델 상호 운용성 문제를 해결합니다. PyTorch 모델을 최적화하고 효율적인 추론을 위해 다양한 형식으로 내보낼 수 있는 오픈 표준 및 모델 형식을 제공하여, 확장 패키지에 대한 의존성을 줄이고 훈련에서 배포로의 전환을 단순화합니다.
작동 방식
PNNX는 PyTorch와 엄격하게 일치하는 계산 그래프 및 상위 수준 연산자를 정의합니다. PyTorch 모델(TorchScript 또는 ONNX를 통해) 또는 TNN과 같은 다른 형식을 가져와 최적화된 PNNX 형식으로 변환할 수 있습니다. 거기에서 모델을 배포를 위해 휴대 가능한 PNNX 파일, ONNX-zero 또는 ncnn 모델로 내보낼 수 있습니다.
대상
서로 다른 하드웨어 또는 추론 엔진에 PyTorch 모델을 최적화하여 배포해야 하는 개발자 및 ML 엔지니어, 특히 ncnn 프레임워크를 대상으로 하는 분들에게 적합합니다.
주요 특징
- 멀티 포맷 지원: TorchScript, ONNX 및 TNN 파일을 최적화된 모델로 변환합니다.
- 그래프 최적화: 추론에 특화하여 모델을 다듬을 수 있는 여러 최적화 수준을 제공합니다.
- 휴대 가능한 바이너리: CUDA 또는 PyTorch 런타임 환경이 필요 없는 Windows, Linux 및 macOS용 독립형 바이너리 패키지를 제공합니다.
- 유연한 내보내기: PNNX 그래프 정의, 가중치 및 PyTorch/pyncnn 추론 스크립트를 포함한 여러 출력 파일을 생성합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트