Model Collapse
모델 붕괴는 생성 모델이 이전 모델의 출력을 세대에 걸쳐 학습할 때 희귀 데이터와 다양성이 손실되는 현상입니다.
모델 붕괴는 이전 모델이 생성한 데이터로 학습된 생성 모델이 세대를 거듭하면서 원래 데이터 분포에 관한 정보를 잃는 퇴행 과정입니다. 분포의 꼬리 부분에 있는 드문 사례가 가장 먼저 사라지고, 충분한 횟수가 지나면 출력은 가장 흔한 패턴의 좁고 반복적인 형태로 수렴합니다. Shumailov 외 연구진은 2024년 Nature 논문에서 대규모 언어 모델 (LLM), 변분 오토인코더, 가우시안 혼합 모델에서 이러한 현상을 입증했습니다. AI 생성 텍스트와 이미지가 미래 모델의 학습에 사용되는 웹 데이터에서 차지하는 비중이 커질수록 위험도 높아집니다.
모델 붕괴가 발생하는 이유#
각 세대는 유한한 표본에 모델을 맞춘 뒤, 그 모델에서 샘플링해 다음 세대의 데이터를 생성합니다. Shumailov 외 연구진은 세대를 거치며 누적되는 세 가지 오류를 확인했습니다. 유한한 표본이 드문 사건을 놓쳐 발생하는 통계적 근사 오류, 모델이 실제 분포를 정확히 표현할 수 없어 발생하는 함수 표현력 오류, 확률적 경사 하강법과 같은 학습 절차의 불완전성으로 발생하는 함수 근사 오류입니다. 드문 사건이 한 세대의 데이터에서 사라지면 다음 모델은 그 사건에 확률 0을 할당하며, 해당 사건은 다시 나타나지 않습니다. 연구진은 분포의 꼬리가 사라지는 초기 붕괴와 분포가 소수의 흔한 출력으로 좁혀지고 분산이 거의 없어지는 후기 붕괴를 구분합니다.
아래 시뮬레이션에서는 단어 빈도표를 모델로 간주합니다. 각 세대는 이전 모델에서 샘플링한 단어 10,000개의 빈도를 세며, 이전 데이터를 대체하거나 기존 데이터에 추가합니다.
import torch
torch.manual_seed(0)
vocab = 1000
human = 1 / torch.arange(1, vocab + 1) # Zipf-like word frequencies: a few common words, a long tail
human = human / human.sum()
real = torch.multinomial(human, 10_000, replacement=True) # human-written training text
print(f"Human data: {real.unique().numel()} distinct words")
for mode in ("replace", "accumulate"):
data = real
for generation in range(20):
# "Train" a model by counting word frequencies, then sample the next generation's text from it
model = torch.bincount(data, minlength=vocab) / len(data)
samples = torch.multinomial(model, 10_000, replacement=True)
data = samples if mode == "replace" else torch.cat([data, samples])
print(f"{mode}: {data.unique().numel()} distinct words after 20 generations")사람이 작성한 표본에는 단어 1,000개 중 916개가 포함되어 있습니다. 각 세대가 직전 세대의 출력만으로 학습하는 방식으로 20세대가 지나면 302개 단어만 남고, 대부분 긴 꼬리에 있던 나머지 614개는 완전히 사라집니다. 각 세대의 표본을 사람이 작성한 데이터에 추가하면 실제 데이터가 모든 학습 세트에 계속 포함되므로 916개 단어가 모두 유지됩니다.
근거와 한계#
실제 모델에서도 대체 방식과 누적 방식의 차이가 나타납니다. Gerstgrasser 외 (2024)는 언어 모델을 여러 세대에 걸쳐 사전 학습했습니다. 세대마다 실제 데이터를 합성 데이터로 대체하면 붕괴가 진행됐지만, 원본 실제 데이터와 합성 데이터를 함께 누적하면 붕괴를 피할 수 있었습니다. 확산 모델과 변분 오토인코더에서도 같은 결과가 나왔습니다. 이미지 생성기에 대해 Alemohammad 외 연구진은 자기 소비 루프의 각 세대에 충분한 새로운 실제 데이터가 없으면 품질이나 다양성이 점차 감소한다고 밝혔습니다. 또한 최상의 출력을 선별하는 것처럼 품질을 높이는 방향으로 표본에 편향을 주면 다양성을 희생하는 대신 품질을 유지할 수 있었습니다. 더 강력한 교사 모델의 지식 증류처럼 의도적으로 생성하고 필터링한 합성 데이터는 여전히 널리 사용됩니다. 붕괴는 모델 자체의 필터링되지 않은 출력을 무분별하게 반복 재사용할 때 발생합니다.
모델 붕괴와 관련 개념 비교#
- 모드 붕괴: 생성적 적대 신경망 (GAN)의 생성기가 단일 학습 실행 중에 반복적으로 같은 얼굴을 출력하는 등 몇 가지 유형의 출력만 생성하도록 학습되는 현상입니다. 모델 붕괴는 서로의 데이터로 학습된 연속적인 모델에 걸쳐 발생합니다.
- 치명적 망각: 새 작업으로 학습한 뒤 모델이 이전 작업을 잊는 현상입니다. 모델 붕괴에서는 작업은 그대로지만 학습 데이터가 저하됩니다.
- 과적합: 모델이 학습 세트를 암기해 일반화 성능이 떨어지는 현상입니다. 붕괴한 모델은 학습 데이터에 잘 맞을 수 있지만, 해당 데이터는 더 이상 실제 분포를 나타내지 않습니다.
- AI 슬롭: 온라인에 게시되는 저품질 AI 생성 콘텐츠입니다. 이러한 콘텐츠를 학습 세트로 수집하면 모델 붕괴를 일으키는 원인 중 하나가 될 수 있습니다.
모델 붕괴 방지#
웹 규모의 학습은 모델과 모델 학습에 사용되는 데이터 간의 피드백 루프를 형성합니다.
근거를 바탕으로 한 주요 방어책은 다음과 같습니다. 모든 학습 세트에 원본 인간 데이터를 유지하고, 이를 대체하지 말고 합성 데이터를 추가하며, 생성된 표본을 식별할 수 있도록 데이터 출처 이력을 추적합니다. 이때 AI 워터마킹 및 C2PA 콘텐츠 자격 증명과 같은 신호를 사용할 수 있습니다. 합성 표본은 학습 전에 필터링하거나 검증해야 합니다. Ultralytics Platform은 비전 데이터셋에 누적 방식을 적용합니다. 유사 이미지 생성 기능은 기존 이미지 하나에서 생성된 변형 이미지 1~16개를 만들며, 사용자가 선택한 이미지는 라벨이 없는 새 이미지로 실제 이미지 옆에 추가되어 어노테이션할 준비를 마칩니다.










