NVIDIA-Merlin/Merlin
NVIDIA Merlin is an open source library providing end-to-end GPU-accelerated recommender systems, from feature engineering and preprocessing to training deep learning models and running inference in production.
What it solves
NVIDIA Merlin은 고성능 추천 시스템을 구축하고 확장하는 데 따르는 어려움을 해결합니다. 특히 특성 엔지니어링, 대규모 딥러닝 모델 학습, 그리고 이러한 모델을 프로덕션에 배포하는 과정에서 발생하는 병목 현상을 목표로 하며, 데이터셋 규모가 수백 테라바이트에 달할 때도 효과적입니다.
How it works
Merlin은 GPU 가속 라이브러리 스위트로, 추천 파이프라인의 모든 단계를 최적화합니다:
- NVTabular: GPU 가속을 이용해 방대한 표형 데이터셋의 ETL 및 특성 엔지니어링을 수행합니다.
- HugeCTR: 여러 GPU와 노드에 걸쳐 대규모 임베딩 테이블을 확장하도록 설계된 학습 프레임워크입니다.
- Merlin Models: TensorFlow, PyTorch, FastAI용으로 최적화된 데이터 로더와 표준 추천 모델 아키텍처 라이브러리를 제공합니다.
- Transformers4Rec: PyTorch와 호환되는 모듈형 빌딩 블록을 사용해 순차 및 세션 기반 추천에 특화되어 있습니다.
- Merlin Systems: 모델을 피처 스토어 및 최근접 이웃 검색과 통합하여 Triton Inference Server를 통해 제공되는 엔드‑투‑엔드 파이프라인을 구축합니다.
- Merlin Core: 생태계 전반에 걸쳐 사용되는 기본 데이터셋 추상화와 공통 스키마를 제공합니다.
Who it’s for
데이터 과학자, 머신러닝 엔지니어, 연구자를 위해 설계되었으며, 단일 GPU 또는 CPU 메모리 한계를 초과하는 산업 규모의 추천 시스템을 구축해야 하는 경우에 적합합니다.
Highlights
- Massive Scalability: 수백 테라바이트 규모의 데이터셋을 지원하도록 최적화되었습니다.
- GPU Acceleration: RAPIDS cuDF와 Dask를 활용해 빠른 데이터 조작 및 분산 처리를 구현합니다.
- Memory Management: 사용 가능한 GPU 및 CPU 메모리를 초과하는 대규모 임베딩 테이블을 분산시킬 수 있습니다.
- End-to-End Pipeline: 원시 데이터 전처리부터 Triton Inference Server를 이용한 프로덕션 서빙까지 전체 라이프사이클을 포괄합니다.