393
10
장
머신러닝 상호운용성
생각해보라. 실제로 모델 추론 작업이 이루어질 환경인 엣지 디바이스의 성능을 고려하지 않는
다면 이는 문제가 될 수 있다.
이러한 이유로 머신러닝 모델에 요구되는 제약사항을 미리 명시하여, 주요 클라우드 공급자의
환경이나 엣지 디바이스의 환경에서 쉽게 환경에 맞는 형식으로 변환될 수 있는 능력인 상호운
용성이 중요하다.
ONNX
를 이용해 더 탁월한 상호운용성을 갖춘 프로젝트를 구축하고, 상호
운용성을 확보하는 일을 자동화하는 방법에 대해 다루어 보도록 하자.
10.2
ONNXONNX
: :
OpenOpen
NeuralNeural
NetworkNetwork
ExchangeExchange
ONNX
는 모델 수준에서 배포환경과 관련된 복잡도를 낮추는 동시에 간결함, 높은 성능을 모
두 갖추려는 접근 방식으로, 시스템 간의 상호운용성 확보를 위한 중요한 개념이다.
ONNX
를 이용하면 서로 다른 프레임워크 간에 모델을 서로 변환하고 공유할 수 있다. 이 프로젝트는
2017
년에 페이스북과 마이크로소프트가
AI
모델 상호운용성을 위한 공개적인 생태계라는 개
념을 제시하며 시작되었다. 그 이후
ONNX
는 다양한 플랫폼을 지원하며 다양한 집단에서 사
용하는 거대하고 중요한 오픈 소스 프로젝트로 성장하여 자리 잡아 가고 있다.
하드웨어 공급업체들은 상호운용성과 더불어 프레임워크 표준성을 통해 다양한 프레임워크에
서 모델이 작동할 수 있도록 노력했다. 그러나
ONNX
가 대표적으로 활용되면서 각 프레임워
크에 맞춘 최적화의