Post

Lecture 11: High-Resolution, High-Performing LVLMs

Lecture 11: High-Resolution, High-Performing LVLMs

bookmark

강의 자료 정리

Toward High Resolution, High Performance - Intro

  • LLaVA-NeXT: Improved reasoning, OCR, and world knowledge (2024년 1월)
  • llava-next의 특징
    • llava-1.5의 구조를 그대로 사용함
    • visual instruction tuning 데이터셋이 1m 미만
    • 34b 모델 기준으로 a100 gpu 32개를 사용하면 1일 내로 학습이 끝남

    → training efficiency가 특징

    1
    
      ![image.png](https://prod-files-secure.s3.us-west-2.amazonaws.com/8937ab66-9873-42b9-a0ea-ddc3bff7d2bd/7b50d87e-03e3-4643-8b1a-6a7b77a63911/image.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=ASIAZI2LB4663IUE5SBP%2F20260108%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Date=20260108T005620Z&X-Amz-Expires=3600&X-Amz-Security-Token=IQoJb3JpZ2luX2VjELn%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEaCXVzLXdlc3QtMiJIMEYCIQDrZiwApcVotXJv%2BeYShFW9dIJ374Tkat67OfsCOhXd6AIhAIiLxXvsGYcXzrgNj8c2c51vx6lpb3N8TN66DWxm6Ez4KogECIH%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEQABoMNjM3NDIzMTgzODA1Igx4bOFKATBMoFyVI%2Bwq3AMr4uasrbn9AiDTt0O%2Bx7%2FWmgcbKg57HwHuTSm9VJ4PzmEc80dx%2B7x8BSM9e%2BT6F3QmxFr24JqCowfGUWUTZRwiQ8PoIQ9tzSm%2BZ2sHmxIxDtgj11F1df3vFz3G%2FD6EDDbmQ8h80TlKU5zmVL1NtHNWjZrAf3FZIcrUw6RejMcdOUWtya0pOd0O4iW6OrZI%2Fl5GOq2fG2nD4AkKIgicoBIYnITo%2BSjfu0d84C%2BvpjUEBGkIhak%2FqZo9eQqYpXo9Tc%2FnCvgt1dz6gIkWvcwttHTFPC2YUDjGdUvNRXrKR%2BxfoZqIOM3SBKRirMehaQYPZ7aA6s8rNDHCohH%2F5e5s6%2Fo8cA2cMsUenXHJCo7E%2FSJv2lh477bwa32uMn5w5S21CNKm6KWrC3X8cm9AniOC3EnZ4ZrhOQ1KstibJ%2Bt3Q7MfAyiSoAOVpfQuBInnvwVE4gptTpLtM0ReQ7da4uGJsaAL0AzONtOqRjy2rgvyg5Vl3eOI03ZI6GlkWDVB%2FDhcWxUeSrlU4wyEdKRVKvDxFcs8t4w%2B1vZPiI3sL6mbue%2B4l%2Fej5rHdNucxOeaVNNNWp%2B5wEZenI8aL8Hw5ufWzXWXlOxutmUGQmUDRS2WeZFE%2FCR01IO%2FQ0NQq4aeEhTC98fvKBjqkAajw4mC3L%2Fvw6RcQzsqhuKGQ3WDX1RXjtuxIANgyUhrgBqCwqpmBhFZvx0BhKOc0ImlV0f%2FlvHTJM8AeN58re6FawXbXQ%2FgTlDXmW7pkb%2BGOdlIp54Z2d%2FFTGxsz%2FfWDU1FreIwywWMFo0b4bhnzq%2BWYkPDQL6sEKyGRLrw5yKyeyLLN0Om%2Bk%2Bk8tfvMmlnzOlneny2YNuKXy6em67KOu2zvZghc&X-Amz-Signature=0ccf938ba3ca288519a6e74d06ec64111579eca16a91ab7473f9d83e49e12a4c&X-Amz-SignedHeaders=host&x-amz-checksum-mode=ENABLED&x-id=GetObject)
    
  • 핵심 기술
    1. AnyRes
      • 이미지 해상도를 어떻게 높일까?에 대한 LLaVA-NeXT의 접근법
        • 기존 모델의 접근: 이미지를 224, 336과 같은 고정된 크기로 줄여서 봄 → 작은 글씨, 디테일이 뭉개짐 1. Split: 고해상도 이미지가 들어오면 여러 개의 패치로 자름 (n등분) 2. Resize: 전체적인 맥락 파악을 위한 전체 이미지도 작게 축소해서 하나 만듦 3. Encode & Flatten: n등분 한 패치들과 축소된 전체 이미지를 각각 인코더에 넣어서 특징을 뽑고, llm에 순서대로 넣음

        image.png

        • 이미지를 쪼갤 때 비율이 안 맞는 이미지를 pad/drop하지 않고 이미지 비율에 맞춰서 그리드 모양을 바꾸는 방식을 선택함
    2. 데이터셋 mixture
      • high quality user instruct data
        • 실제 사용자들이 gpt-4v와 대화한 내용이나 llava 데모에서 수집한 “진짜 사용자 의도”가 담긴 데이터 → 실제 사람처럼 대답하는 데에 결정적 역할
        • 공개하지는 x
      • multimodal document/chart data
        • 기존에 사용하던 이미지-캡션 데이터는 과감하게 버리고, 문서나 차트 데이터를 대폭 추가함 → ocr, 표 해석 능력이 비약적으로 상승함 - discussion point: reproducibility
      • 데이터셋을 공개하지 않음 → 재현성이 떨어짐

      Open-LLaVA-NeXT 프로젝트 등장

      1
      2
      3
      
       - [https://github.com/xiaoachen98/Open-LLaVA-NeXT](https://github.com/xiaoachen98/Open-LLaVA-NeXT)
       - Vision-Flan이나 ALLaVA-Instruct 같은 대체 데이터를 사용해서 모델을 재현하려고 노력함
       - <u>**Vision-Flan**</u>: 191가지의 다양한 task를 포함해서 모델이 진정한 추론을 할 수 있도록 도움
      
  • LLaVA-NeXT: Stronger LLMs Supercharge Multimodal Capabilities in the Wild (5월 업데이트)
    • https://llava-vl.github.io/blog/2024-05-10-llava-next-stronger-llms/
    • 기존 llava-next는 yi-34b, vicuna-1.5 같은 llm을 사용함
    • 5월 업데이트에서는 최신 고성능 llm인 llama-3 8b와 qwen1.5 (72b, 110b)를 사용해서 성능을 올림

      image.png

    • MMBench에서 gpt4v보다 더 좋은 성능을 보여줌
    • LLaVA-Bench wilder에서는 gpt, gemini에 근접한 성능을 보여줌
  • **벤치마크 점수가 높다고 해서 진짜 추론 능력이 높은걸까?**
    • 단순히 이미지 속에 있는 텍스트를 읽어내는 능력 / 단순한 패턴 매칭에 의존하는 경우가 많음

Curated Datasets and Data Scaling

  • 학습 데이터셋
  • Vision FLAN
    • 기존 데이터셋의 문제점: 이미지 캡션 같은 단순한 데이터에 편중되어 있었음
      • 글자를 읽거나 복잡한 추론을 하는 능력이 부족함
      • GPT-4가 만든 합성 데이터에 너무 의존하다 보니 편향이 생기기도 함
    • 191개의 다양한 task를 모으고, 전문가가 직접 작성한 instruction을 포함한 데이터셋을 만듦
      • “task의 다양성”을 확보하는 것이 모델의 일반화 능력에 필수적임
      • ex. visual reasoning, radiology, OCR, art …
      • 전문적인 지식과 논리적인 사고를 요구하는 문제들로 구성됨
    • 학습 방법

      image.png

      1. visual instruction tuning with Vision FLAN 데이터셋
        • 다양한 문제를 푸는 법을 가르침
      2. human-preference alignment
        • gpt-4 synthesized data로 사람이 좋아하는 말투로 대답하도록 학습시킴 - 이 두 단계 학습이 한번에 섞어서 학습하는 것보다 성능이 훨씬 좋았음
  • The Cauldron
    • https://huggingface.co/datasets/HuggingFaceM4/the_cauldron
    • 데이터의 용광로
    • 문제점: 오픈소스 데이터들이 여기저기에 흩어져 있고 포맷도 제각각이라 사용하기 어려움
    • 해결책: 50개의 데이터를 모아서 하나의 포맷으로 통합함
      • ex. OCR, chart/figure, table 데이터
      • general, text-rich, math, knowledge 등 정보의 종류가 다양함
    • Idefics2 모델을 학습

Overview of Key Factors Affecting VLM Performance

  • 무엇이 vlm 성능에 영향을 미치는가?
  • Idefics2
    • 2024, NIPS
    • “What matters when building vision-language models?”
      • VLM 성능 향상에 결정적인 요인을 찾기 위해 모델 구조, 데이터, 학습 방법 등 하나씩 고쳐보며 실험을 진행함
      • 8B로 훨씬 큰 모델에 대등한 성능을 내는 Idefics2를 만듦 1. 구조
      • findings 1: vision encoder보다 llm이 중요함
        • 동일한 파라미터 수라면, 좋은 vision encoder를 사용하는 것 보다 llm backbone의 성능을 올리는 것이 최종 vlm 성능에 훨씬 더 큰 영향을 미침
      • findings 2 & 3: 복잡한 것 보다 단순한게 낫다
        • 이미지-텍스트를 섞는 방식에서 cross-att보다 단순히 토큰을 이어붙이는 fully autoregressive 방식이 학습효율/성능 모두 더 좋았음
          1. 데이터
      • **ocr 데이터 포함****이 중요함**
        • 포함 여부에 따라서 docVQA 점수가 22.6 → 49.9로 2배 이상 증가함
      • **re-captioning****이 괜찮음**
        • 인터넷의 원본 캡션은 품질이 낮고, ai로 정제한 합성 캡션을 사용했더니 평균 점수가 오름
    • (Hidden) Points to Consider
      • idefics2 모델은 학습 과정에서 1.5b 이미지와 225b 텍스트 토큰을 학습함
      • 다른 모델에 비해서 학습량이 무지 많음
        • sharegpt는 1.2m 이미지, monkey는 1.4m 이미지만을 학습함
      • 성능 향상의 큰 비중은 데이터 양의 차이? 일수도 있다
  • LLaVA-NeXT의 ablation study
    • https://llava-vl.github.io/blog/2024-05-25-llava-next-ablations/

      image.png

      • 하나하나 바꿔봄
    • point 1. LLM scaling, VE tuning
      • llm 크기를 키울 수록 멀티모달 성능이 오른다
    • point 2. vision encoder
      • vision encoder 종류에 따른 성능 차이
      • 같은 모델이더라도 해상도가 더 크면 성능이 더 높음
      • SO400M은 모델 사이즈가 가장 작은데 성능은 가장 높음
        • 데이터 (WebLI), 학습 방식 (SigLIP)
    • point 3. 해상도와 토큰 압축
      • 이미지를 쪼개는 grid 개수를 2x2에서 6x6까지 늘려봄
      • 그리드를 늘릴 수록 docVQA같은 세밀한 작업의 성능이 크게 오름
      • trade-off: 토큰 수가 늘어나니 학습 시간도 늘어남
    • point 4. training pipeline & data quality

      image.png

      • training pipeline
        • stage 1: language-image alignment
        • stage 1.5: **high-quality knowledge leraning**
          • 기존 llava 모델과 차별점
          • llava-recap의 고품질 학습 데이터로 학습
          • 단순한 이미지-텍스트 매칭을 넘어서 이미지 속의 상세한 속성, 관계, 세상의 지식을 주입함
        • stage 2: visual instruction tuning
          • 사용자의 구체적인 instruction을 follow하는 방법을 학습함
      • llava-recap (558k 데이터) > raw captions (12m 데이터)

        → 데이터 양이 적더라도 캡션이 고품질이면 데이터가 엄청나게 많은 것 보다 성능이 더 좋다

    • ShareGPT-4V
      • 고품질 캡션 데이터셋
      • 1.2M의 이미지에 대해서 아주 상세한 캡션을 달았음 (GPT4-Vision 사용)
      • 이 데이터로 학습한 7B 모델은 벤치마크 점수를 크게 갱신함

Towards Modern LMMs

Advanced Compute-Intensive LMMs

  • qwen2.5-vl

    image.png

    • **native** resolution input
      • 원본 해상도 입력
    • MRoPE
      • 1d 텍스트, 2d 이미지, 3d 비디오의 위치 정보를 통합적으로 처리하기 위해 고안된 3차원 위치 인식 기술
      • 이미지가 어디에 위치하는지, 비디오의 시간 흐름은 어떤지 정확하게 파악함
    • Conv3D
      • 비디오의 시간 축을 이해하기 위해서 시간의 흐름까지 입체적으로 분석함
  • seed1.5-vl

    • 바이트댄스 모델

      image.png

    • multimodal native-resolution transform
      • 원본 해상도 입력
    • timestamp token & video frame token
      • 지금 보는 장면이 몇초인지, 비디오 프레임인지를 명확히 구분하는 특수 토큰을 사용함
      • 비디오 내의 사건 순서를 헷갈리지 않고 정확하게 이해함
    • dynamic sampling
      • 비디오, 이미지 중요도에 따라서 해상도나 프레임 수를 유동적으로 조절해서 효율성을 높임

On-going Topics in LMMs & Discussions

  • Long-Tail Entity Recognition
    • long-tail 분포에 위치한 entity를 인식하는 문제
    • 이 캐릭터가 누구야? 라고 물었을 때, 유명한 사람/캐릭터여도 모델이 “누군지 식별할 수 없다”라는 답변을 함
    • 원인: parametric/non-parametric
      • 학습 과정에서 자주 보지 못한 데이터 (long-tail)은 잘 기억하지 못하거나, safety 문제로 인해 실존 인물에 대한 답변을 거부하도록 학습되었기 때문
    • rare tokens를 어떻게 학습시킬 것인가?
      • 논의점: 모델 내부 지식 (parametric)으로 해결할지 or 외부 검색 (non-parametric)으로 해결할지
  • Helpfulness vs Harmlessness
    • 안전성과 유용함의 딜레마
    • 성능이 올라가니 입이 거칠어짐?
    • llm + visual instruction tuning했더니 safety가 망가짐
      • 멀티모달 학습을 진행할수록 attack success 확률이 올라감
      • 모델을 똑똑하게 만드는 것과 착하게 만드는 것 사이에는 trade-off가 존재함
    • 해결하기 위해서 weight merging과 같은 기법이 연구되고 있음
  • Omni-modal의 시대
    • EMOVA
      • 이미지 + 텍스트 + “오디오”
      • joint optimiation: 단순히 음성 인식 모델을 붙이는 것이 아니라 처음부터 모든 모달리티를 함께 end-to-end로 학습
This post is licensed under CC BY 4.0 by the author.