피파 한 줄 정리: 같은 프롬프트에서 다른 이미지가 나오는 건 버그가 아니라 기능이야. 프롬프트는 분포의 범위를 좁힐 뿐, 결과 한 점을 찍어주지는 않아.
끝없이 많은 방이 있는 미술관을 상상해봐. 방마다 아주 조금씩 다른 그림이 있고, 아름다운 초상화부터 무작위 노이즈와 불가능한 초현실 장면까지 세상에 존재할 수 있는 모든 이미지가 들어 있어. 이 미술관이 가능한 모든 이미지의 공간이야.
“산 위의 노을”이라는 프롬프트와 맞는 방은 그중 아주 일부뿐이야. 생성 모델은 방을 뒤져 기존 그림을 고르지 않아. 대신 어느 영역이 이 프롬프트와 잘 맞을지 나타내는 확률 지도를 배웠고, 확률이 높은 곳으로 이동해 새로운 표본을 만들어.
가능한 모든 이미지의 공간: . . . . . . . . . . . . . . . ← 낮은 확률(무작위 노이즈 등) . . . ★ ★ . . . . ★ ★ . . . ← 중간 확률 . . ★ ★ ★ ★ . . ★ ★ ★ ★ . . ← 높은 확률 영역 . . . ★ ★ . . . . ★ ★ . . . . . . . . . . . . . . . . . . ★ = “산 위의 노을”과 맞는 이미지 각 ★은 조금씩 다른 유효한 해석
정답이 하나가 아닌 이유
“산 위의 노을”은 분홍 구름 아래 Rockies를 찍은 사실적 풍경일 수도, 주황 하늘과 완만한 언덕을 그린 수채화일 수도 있어. 극적인 그림자가 진 Alps의 drone shot이나 봉우리 하나의 윤곽만 남긴 삽화도 맞는 답이지. 모두 같은 확률 분포에서 뽑을 수 있는 유효한 표본이야. 생성할 때마다 그 공간을 통과하는 무작위 경로가 달라져.
프롬프트는 조종기가 아니라 렌즈다
“고양이”처럼 막연한 말은 수백만 개의 가능한 고양이를 남겨. “왼쪽 창에서 오후 햇빛이 들어오는 남색 벨벳 안락의자에서 자는 ginger tabby, 35mm photography, 얕은 심도”라고 쓰면 범위가 크게 줄지만 여전히 답은 여럿이야.
- 같은 프롬프트가 달라지는 이유는 같은 분포에서 다른 무작위 표본을 뽑기 때문이야.
- 조건을 구체화하면 확률 영역이 좁아져 결과가 더 비슷해져.
- 시드는 주사위 값을 고정해 같은 표본을 다시 얻도록 해.
- 분포에는 언제나 폭이 있으므로 결과 하나를 완전히 강제할 수는 없어.
핵심 정리
- 모델은 이미지의 확률 분포를 배우며 하나의 정답이 아니라 그럴듯한 표본을 뽑는다.
- 프롬프트는 분포를 좁히지만 단 하나의 이미지를 지정하지는 않는다.
- 결과의 변화는 결함이 아니라 생성의 본질적인 기능이다.
- 전문 제작은 여러 결과를 만든 뒤 가장 좋은 것을 고르는 방식으로 이 성질을 활용한다.