Computer Vision / Video Analytics

VILA를 사용하는 NVIDIA 하드웨어의 시각적 언어 모델

Reading Time: 7 minutes

시각 언어 모델은 최근 크게 발전했습니다. 하지만 기존 기술은 대체로 하나의 이미지만 지원합니다. 기존 기술은 여러 이미지 중에서 추론을 하거나 맥락 학습을 지원하거나 영상을 이해할 수 없습니다. 또한 추론 속도에 맞게 최적화하지도 않습니다. 

NVIDIA는 당사의 고객이 멀티 모달 제품에서 성공하는 데 도움이 되는 전체적인 사전 트레이닝, 명령 조정 및 배포 파이프라인을 갖춘 VILA를 개발했습니다. VILA는 강력한 다중 이미지 추론 기능과 맥락 내 학습 기능을 통해 이미지 QA 벤치마크와 영상 QA 벤치마크 모두에서 SOTA 성능을 구현합니다. 또한 VILA는 속도에 맞게 최적화되어 있습니다. 

다른 VLM에 비해 1/4의 토큰을 사용하며 정확도를 유지하면서 4비트 AWQ로 양자화됩니다. VILA는 최고의 성능을 지원할 수 있는 40B부터 NVIDIA Jetson Orin과 같은 엣지 디바이스에 배포할 수 있는 3.5B까지 다양한 크기를 제공합니다.

NVIDIA는 128개의 NVIDIA A100 GPU에서 VILA-13B를 단 이틀 만에 트레이닝하는 효율적인 트레이닝 파이프라인을 설계했습니다. 이 연구 프로토타입 뿐만 아니라 VILA가 더 많은 데이터와 GPU 시간으로 확장 가능하다는 것을 시연했습니다. 

효율적인 추론을 위해 VILA는 TRT-LLM과 호환됩니다. NVIDIA는 단일 NVIDIA RTX 4090 GPU에서 VILA-14B에 대해 토큰당 10ms로 실행되는 4비트 AWQ를 사용하여 VILA를 양자화했습니다.

VILA 트레이닝 레시피

Llava와 같은 기존 방법은 시각적 명령 튜닝을 사용하여 시각적 입력으로 LLM을 확장하지만 모델이 두 가지 양식에서 모두 공동 모델링을 수행하는 방법을 학습하는 시각적 언어 사전 트레이닝 프로세스에 대한 심층적인 연구가 부족합니다. 

그림 1. VILA의 트레이닝 레시피

모델 아키텍처

멀티 모달 LLM은 교차 어텐션 기반 설정과 자동 회귀 기반 설정으로 분류할 수 있습니다. 

후자의 토크나이저는 이미지를 시각적 토큰으로 변환하고 텍스트 토큰과 연결하며 LLM에 입력으로 피드합니다(즉, 시각적 입력을 외국어로 처리). 이는 RAG와 유사한 시각적 임베딩으로 입력을 증강하여 텍스트 전용 LLM을 자연스럽게 확장한 것이며, 인터리브된 이미지 텍스트 입력을 임의의 수만큼 처리할 수 있습니다. 

따라서 유연성과 양자화/배포의 용이성으로 인해 자동 회귀 아키텍처에 중점을 두었습니다. 

그림 1은 자동 회귀 VLM이 세 가지 구성 요소 즉, 시각적 인코더, LLM, 두 가지 양식의 임베딩을 연결하는 프로젝터로 구성됨을 보여줍니다. 이 모델은 시각적 입력과 텍스트 입력을 받아 텍스트 출력을 생성합니다.

LLM 동결 해제는 필수

시각적 입력으로 사전 트레이닝된 텍스트 전용 LLM을 증강하는 데는 크게 두 가지 방법이 널리 활용되고 있는데, 하나는 시각적 입력 토큰에서 LLM을 미세 조정하는 것이며 다른 하나는 LLM을 동결하고 시각적 입력 프로젝터만 프롬프트 조정으로 트레이닝하는 것입니다. 

후자의 방법은 LLM을 동결하면 사전 트레이닝된 텍스트 전용 LLM의 성능 저하를 방지한다는 점에서 매력적입니다. 그럼에도 불구하고 기본 LLM을 업데이트하는 것은 맥락 내 학습과 같은 매력적인 LLM 속성을 상속하는 데 꼭 필요합니다. 

저희는 다음과 같은 점에 주목했습니다. 

  • SFT 진행 중에 프로젝터만 트레이닝하면 고용량 디자인을 사용하더라도 성능이 저하됩니다. SFT 중에는 LLM을 미세 조정하는 것이 더 유익합니다. 
  • 흥미로운 점이 있다면, 사전 트레이닝 중에는 LLM을 동결해도 제로샷 성능에는 영향을 미치지 않지만 맥락 내 학습 기능이 저하된다는 것입니다. 
  • 소용량 프로젝터(트랜스포머 블록 대신 선형 레이어)를 사용하는 경우 정확도가 약간 더 향상됩니다(c와 d 비교). 저희는 프로젝터가 더 단순할수록 LLM이 시각적 입력을 처리할 때 더 많은 것을 학습하도록 하여 더 나은 일반화 결과를 도출한다는 가설을 세웁니다. 

이러한 관찰을 감안해 NVIDIA는 이후 연구에서 사전 트레이닝 및 명령 조정 중에 LLM을 미세 조정할 수 있도록 간단한 선형 투영 레이어를 사용했습니다.

인터리브 이미지-텍스트 데이터는 필수

저희 NVIDIA는 시각적 언어 입력에서만 잘 작동하는 모델을 트레이닝하는 대신, 시각적 입력을 지원하도록 LLM을 증강하는 데 목표를 두고 있습니다. LLM의 텍스트 전용 기능을 보존하는 것은 필수입니다. 

데이터 큐레이션 및 혼합은 사전 트레이닝 및 명령 조정의 핵심 요소에 속합니다. 데이터 형식은 크게 다음의 두 가지가 있습니다. 

  • 이미지-텍스트 쌍(즉, 이미지 및 캡션): <im1><txt1> ,<im2><txt2>
  • 인터리브 처리된 이미지-텍스트 데이터: <txt1><im1><txt2><txt3><im2><txt4>

이미지-텍스트 쌍

사전 트레이닝을 위해 COYO 데이터세트에서와 같은 이미지-텍스트 쌍을 사용하면 파괴적 망각을 초래할 수 있습니다. 텍스트 전용 정확도(MMLU)는 17.2%만큼 저하됩니다. 

특히 4샷 정확도는 제로샷보다 훨씬 저하됩니다. 이는 해당 모델이 시각적 언어 입력에 대한 맥락 내 학습을 적절하게 수행할 수 없음을 보여줍니다(아무래도 사전 트레이닝 중에는 이미지를 두 개 이상 표시하지 않기 때문일 수 있음). 

저희 NVIDIA는 이러한 파괴적 망각 현상이 대체로 짧고 간결한 텍스트 기반 캡션의 배포 때문에 발생한다고 판단합니다.

인터리브 이미지 텍스트

한편, MMC4와 같은 인터리브된 이미지-텍스트 데이터세트를 사용하면 텍스트로만 구성된 말뭉치(corpus)에 비해 훨씬 더 상세한 배포가 가능합니다. 인터리브된 데이터를 사전 트레이닝에 사용할 경우, MMLU의 성능 저하가 최대 5% 이내에 불과합니다. 

적절한 명령어 조정을 통해 이러한 성능 저하를 완전히 복구할 수 있습니다. 또한 시각적 맥락 내 학습을 지원하여 VILA의 하이라이트에 속하는 제로샷에 비해 더 높은 4샷 정확도를 실현합니다.

데이터 혼합

데이터 혼합은 두 분야의 장점을 결합할 수 있도록 사전 트레이닝을 개선합니다. 인터리브 처리된 언어 자료와 이미지-텍스트 쌍을 혼합하면 중대한 성능 저하를 방지하면서 말뭉치에서 더 많은 다양성을 도입할 수 있습니다. 

MMC4+COYO에 대한 트레이닝은 시각적 언어 벤치마크의 정확도를 더욱 높여줍니다.

공동 SFT를 통해 LLM 성능 저하 복구 

인터리브 데이터가 텍스트 전용 기능을 유지하는 데 도움이 됨에도 불구하고 여전히 5% 정도의 정확도 저하가 발생합니다. 

텍스트 전용 기능을 유지하기 위해 적용할만한 접근 방법은 텍스트 전용 말뭉치(LLM 사전 트레이닝에 사용된 것)를 추가하는 것입니다. 그러나 이러한 텍스트 말뭉치는 대체로 오픈 소스 모델에서도 독점적입니다. 또한 비전 언어 말뭉치의 규모에 맞게 데이터를 서브샘플링하는 방법도 불분명합니다.

다행히도 NVIDIA는 텍스트 전용 기능이 일시적으로만 숨겨져 있으며 잊혀지지 않는다는 사실을 발견했습니다. SFT 진행 중에 텍스트 전용 데이터를 추가하면 텍스트 사전 트레이닝 말뭉치(보통 1조 규모)보다 훨씬 작은 규모를 사용함에도 불구하고 성능 저하를 해소하는 데 도움이 될 수 있습니다. 

저희는 텍스트 전용 SFT 데이터의 혼합 시 텍스트 전용 기능의 저하 문제가 해소되고 시각적 언어 기능이 향상되는 것을 확인했습니다. 텍스트 전용 명령 데이터는 해당 모델의 명령 준수 기능을 개선하며, 이는 시각적 언어 작업에도 중요한 것으로 추정됩니다. 

흥미로운 점이 있다면, COYO 데이터 혼합 시 이점이 공동 SFT에서 더 중요하다는 것입니다. 공동 SFT를 사용하면 짧은 캡션으로 사전 트레이닝할 때 해당 모델에서 더 이상 텍스트 전용 성능 저하 문제가 발생하지 않으므로 더 나은 시각적 다양성의 이점을 최대한 활용할 수 있습니다.

중요한 건 토큰의 수가 아니라 이미지 해상도

해상도를 224에서 336으로 높이면 TextVQA 정확도를 41.6%에서 49.8%로 향상할 수 있습니다. 

그러나 해상도가 높을수록 이미지당 토큰 수(336×336은 이미지당 576개의 토큰에 해당)와 연산 비용이 증가하게 되는데, 이러한 문제는 한정된 컨텍스트 길이를 감안할 때 영상을 이해하는 데 있어 더 큰 부담이 됩니다. 컨텍스트 길이를 확장하는 LongLoRA 기술이 있으며, 이를 결합할 계획입니다. 또한 컨텍스트 내 학습을 위한 데모의 수도 제한됩니다. 

다행히도 원시 해상도는 이미지당 시각적 토큰의 수보다 더 중요합니다. 다양한 프로젝터 디자인을 사용하면 시각적 토큰을 압축할 수 있습니다. NVIDIA는 2×2 토큰마다 하나의 토큰으로 연결하고 선형 레이어를 사용하여 정보를 융합하는 다운샘플 프로젝터를 시도했습니다. 그 결과, 336 해상도에서 토큰 수는 144로 줄었는데, 이는 224+선형 설정보다 훨씬 적습니다. 

그럼에도 불구하고, 336+선형 설정에 비해 여전히 3% 정도 더 나쁨에도 불구하고 TextVQA 정확도는 더 높은데(46% 대 41.6%) 이는 이미지 토큰에 있어 큰 중복성을 나타냅니다. OKVQA 및 COCO 등 다른 데이터세트는 대체로 더 높은 수준의 의미 체계를 필요로 하기 때문에 격차는 더 줄어듭니다. 

NVIDIA의 초기 출판물에서는 주요 결과에 토큰 압축을 적용하지 않았습니다. 하지만 이 릴리스에는 모든 크기의 모델에 대해 이러한 토큰 압축 기술이 포함되어 있습니다.

데이터 품질이 데이터 양보다 더 중요

NVIDIA의 실험에 따르면 사전 트레이닝 데이터를 2,500만 개에서 5,000만 개까지 확장해도 큰 이점은 없는 것으로 나타났습니다. 하지만 최대 1백만 개의 고품질 데이터를 추가하면 벤치마크 결과가 향상됩니다. 따라서 데이터 품질은 데이터 양보다 훨씬 더 중요합니다. 

성능은 높지만 컴퓨팅 리소스가 한정된 VILA를 트레이닝하기 위해 NVIDIA는 데이터 양보다 데이터 품질에 더 중점을 두었습니다. 예를 들면 CLIP 점수에 따라 텍스트-이미지 쌍에 대해 COYO-700M 데이터세트의 상위 5%만 선택했습니다. 또한 영상 자막 데이터세트에 대해 최고 품질의 데이터를 필터링하여 이를 데이터세트 혼합에 추가했습니다.

VILA 배포

VILA는 GPU에서 양자화하여 배포하기에 적합합니다. VILA는 시각적 토큰으로 LLM을 강화하지만 코드 베이스를 모듈식으로 유지하는 LLM 아키텍처는 변경하지 않습니다. 

NVIDIA는 4비트 AWQ를 사용하여 VILA를 양자화하여 NVIDIA RTX 4090 및 Jetson Orin에 배포했습니다. 자세한 내용은 시각적 언어 인텔리전스 및 엣지 AI 2.0을 참조하세요.

AWQ 양자화 알고리즘은 멀티모달 애플리케이션에 적합한데 그 이유는 AWQ의 경우 역전파나 재구성이 불필요한 반면 GPTQ에서는 필요하기 때문입니다. 따라서 이 알고리즘은 새로운 양식에 대한 일반화 기능이 더 우수하며 특정 보정 세트에 과적합되지 않습니다. 해당 모델에서는 모델 크기와 추론 지연 시간을 좌우하는 언어 부분만 양자화했습니다. 시각적 부분이 지연 시간에서 차지하는 비율은 4% 미만에 불과합니다. 

AWQ는 제로샷 및 다양한 퓨샷 설정에서 기존 방법(RTN, GPTQ)을 능가하며 다양한 양식과 맥락 내 학습 워크로드의 일반성을 나타냅니다.

성능

모델VQA-V2GQAVQA – TScienceQA – IMMESEED- IMMMU 값MMMU 테스트
LLaVA-NeXT-34B83.767.169.581.8163175.951.144.7
VILA1.5-40B84.364.673.587.4172775.751.946.9
표 1. LLaVA Next-34B와 VILA1.5-40B의 비교
모델정밀도VQA-V2GQAVQA – TScienceQA – IMMESEED- IMMMU 값MMMU 테스트
VILA1.5-13Bfp1682.864.36580.1157072.637.933.6
VILA1.5-13Bint482.764.564.779.7153172.637.834.0
Llama-3-VILA1.5-8Bfp1680.961.966.379.9157771.436.936
Llama-3-VILA1.5-8Bint480.361.765.479.0159471.136.036.1
표 2. 양자화 전/후 이미지 QA 벤치마크의 모델 평가 결과
모델정밀도NVIDIA A100 GPUNVIDIA RTX 4090NVIDIA Jetson Orin
VILA1.5-13Bfp16 51OOM6
VILA1.5-13Bint4 11610621
Llama-3-VILA1.5-8Bfp16755710
Llama-3-VILA1.5-8Bint4 16915029
표 3. 다양한 플랫폼에서의 추론 속도(토큰/초)

영상 자막 성능

VILA에는 맥락 내 학습 기능이 있습니다. VILA는 작업을 명시적으로 설명(회사, 분류, 계수, 세계 지식에 관해 설명)하지 않고 퓨샷 예시를 통해 작업을 자동으로 인식하고 정확한 예측을 할 수 있습니다.

그림 2. 맥락 내 학습의 예시

VILA는 뛰어난 일반화 및 추론 기능을 갖추고 있습니다. VILA는 밈을 이해하고 여러 이미지 또는 영상 프레임을 추론하며 드라이빙 시나리오의 코너 사례들을 처리할 수 있습니다.

그림 3. 다중 이미지 추론의 예

NVIDIA GTC 2024의 VILA

NVIDIA GTC 2024에서 NVIDIA는 엣지에서 클라우드에 이르기까지 효율적인 멀티 모달 NVIDIA AI 솔루션을 지원하는 VILA를 발표했습니다.

엣지에서 VILA는 AWQ를 사용하여 4비트로 효율적으로 양자화되며 즉시 다운로드할 수 있어 NVIDIA Jetson Orin Nano 및 Jetson AGX Orin 플랫폼에서 실시간 추론을 지원합니다. 이를 통해 엣지의 로보틱스 및 자율주행 자동차 애플리케이션에서 나타나는 한정된 에너지 및 지연 시간 문제를 상당 부분 해소합니다. 포괄적인 내용의 튜토리얼에 대해서는 시각적 언어 인텔리전스 및 엣지 AI 2.0을 참조하세요.

VILA 및 NVIDIA VIA(Visual Insight Agent)

VILA는 클라우드에서 NVIDIA VIA(Visual Insight Agent) 프레임워크를 향상하여 AI 에이전트를 만들 수 있도록 지원합니다. 이러한 AI 에이전트는 ‘공장의 3번 통로에서 무슨 일이 일어난 거야?’와 같은 질문에 응답하여 운영팀을 지원합니다. 예를 들어, 생성형 AI 기반 에이전트는 ‘오후 3시 30분에 선반에서 상자가 넘어져 통로가 막혔습니다’라는 설명과 함께 인사이트를 즉시 제공할 수 있습니다. 

VIA 프레임워크를 사용하면 비전 언어 모델을 통해 상당량의 라이브 또는 아카이브된 영상과 이미지 데이터를 처리하는 AI 에이전트를 만들 수 있습니다. 엣지에서 구현하든 아니면 클라우드에서 구현하든 상관없이 이 고급 세대의 비주얼 AI 에이전트는 거의 모든 산업을 혁신할 것입니다. 이러한 에이전트는 자연어를 사용해 영상 콘텐츠를 요약하고 검색하여 실행 가능한 인사이트를 도출할 수 있도록 지원합니다. 

자세한 내용은 실시간 동기화 유지: 산업 자동화를 위해 디지털 트윈과 실시간 AI를 결합한 NVIDIA를 참조하세요.

그림 4. NVIDIA VIA 프레임워크

결론

VILA는 트레이닝에서 추론 케이터링에 이르기까지 비전 작업을 위해 LLM을 강화하는 효율적인 디자인 레시피를 제공합니다. VILA는 LLM 동결 해제, 인터리브 이미지 텍스트 데이터 큐레이션 및 신중한 텍스트 데이터 재혼합의 장점을 최대한 활용하여 텍스트 전용 기능을 유지하면서도 비전 작업을 위한 최신 방법을 능가하는 성능을 발휘했습니다. 

VILA는 다중 이미지 분석, 맥락 내 학습, 제로/퓨샷 작업을 위한 강력한 추론 기능을 시연했습니다. NVIDIA Metropolis, 시청각, 로보틱스, 생성형 AI 등 다양한 애플리케이션을 통해 NVIDIA에서 더 나은 멀티 모달 기반 모델을 구축하는 데 있어 VILA가 도움이 되기를 바랍니다.

자세한 내용은 VILA: 시각적 언어 모델을 위한 사전 트레이닝 문서 및 /Efficient-Large-Model/VILA GitHub 리포지토리를 참조하세요.

관련 리소스

Discuss (0)

Tags