ICLR에 채택된 새로운 생성 모델을 발명했습니다
(discrete-distribution-networks.github.io)- Discrete Distribution Networks(DDN) 는 새로운 원리와 특성을 가진 혁신적 생성 모델임
- DDN은 분할-가지치기 최적화 알고리듬을 통해 독특한 실험 결과와 1D 이산 표현 능력을 가짐
- 계층적 구조를 기반으로 연속 분포도 근사하며, Zero-Shot 조건부 생성 등 흥미로운 특성 확인됨
- DDN은 이미지 생성, 스타일 변환 등 다양한 실제 작업에 적용 가능성을 보여 줌
- 확장성, 효율성, 자연스러운 적응력 등에서 기존 생성 모델 대비 차별점을 지님
DDN: Discrete Distribution Networks 개요
왜 중요한가?
DDN(Discrete Distribution Networks)은 기존 생성 모델과 전혀 다른 새로운 접근법으로, 간단한 원리, 독특한 계층적 구조, Zero-Shot 조건부 생성 등의 특성을 보유함. GAN, Diffusion과는 다른 방식이어서 연구 및 실제 적용 모두에 많은 가능성을 열어줌.
주요 내용 요약
- DDN은 계층적 이산 분포 구조로 데이터 분포를 근사하는 새로운 생성 모델임
- 분할-가지치기(Split-and-Prune) 최적화 기법을 제안하고, 기존 생성 모델에서는 어려운 Zero-Shot Conditional Generation과 1D 이산 잠재 표현 등 차별적인 속성 실험을 진행함
- DDN은 각 레이어에서 여러 샘플을 동시에 생성하고 그중 목표에 가장 가까운 샘플을 선택하여 다음 레이어의 조건으로 활용함
- 레이어 수가 늘어날수록 출력의 표현 공간이 지수적으로 확장되며, 결과적으로 타깃과 유사한 샘플을 생성함
- 다양한 실험(CIFAR-10, FFHQ, 스타일 변환, 초해상도 등)을 통해 기존 방식보다 간결함, 일반화 성능, 실제 적용 가능성 측면에서 강점이 드러남
DDN의 밀도 추정 실험
- 2D 확률 밀도 근사 과정 시연
- 좌측: DDN이 현재 생성 가능한 모든 샘플
- 우측: 타깃 확률 밀도 맵
- 여러 타깃 분포 상황(blur_circles, QR_code, spiral 등)을 순차적으로 적용하며 지속적 최적화
- Optimizer: Gradient Descent와 Split-and-Prune 동시 사용
- 분할-가지치기를 적용하면 KL divergence가 실 샘플보다도 더 낮아짐
핵심 논문 기여 내용
- 더 간단하고 효율적인 새로운 생성 모델—DDN 제안
- Split-and-Prune 최적화 알고리듬 및 실용적 기법 적용
- Gradient 없는 Zero-Shot 조건부 생성, 독특한 1D 이산 표현 등 특성 검증
- ICLR 리뷰에서 "기존 생성 모델과 매우 다르며 연구 방향성을 넓힌다"는 평가
- DDN의 원리: 각 레이어에서 다수의 이산 샘플 생성, 타깃과 가장 가까운 결과만 선별하여 계층적으로 정교화
구조 및 동작 방식
계층적 이산 분포 구조
- 각 레이어는 이전 레이어의 선택된 샘플을 입력받아 여러 샘플을 생성
- 그중 현재 트레이닝 샘플(정답)과 가장 가까운 결과만 다음 레이어에 전달
- 반복적으로 결과가 정교해지며 타깃 분포에 근접하게 됨
- 레이어 증가 시 생성 출력의 표현 공간이 지수적으로 성장
- 네트워크 자체가 여러 샘플을 동시에 생성함으로써 분포를 직접적으로 표현 가능
이미지 재구성 및 잠재 표현
- 각 레이어의 출력별로 서로 다른 이미지를 출력, 최종 목적과 유사한 결과만 다음 레이어에 전달
- 표본 추출기의 역할: 타깃에 가장 유사한 이미지를 선택
- 생성 태스크에선 임의 표본 추출로 다양성 극대화
- DDN의 잠재 변수는 트리 구조로 해석 가능, 각 샘플은 트리 끝(리프 노드)로 매핑
실험 결과 예시
- 다양한 2D 분포(spiral, QR_code 등) 근사
- Split-and-Prune으로 KL divergence 최소화, dead nodes나 density shift 문제 완화
- CIFAR-10, FFHQ 등 GAN, Diffusion 기반 모델 대비 독특한 생성 방식 및 효율성 확인
Zero-Shot 조건부 생성 지원
- DDN은 그래디언트 없이 Zero-Shot 조건부 생성 가능
- 예시: CLIP black-box를 이용한 텍스트-이미지 생성
- 스타일 변환, 초해상도 등 픽셀이 아닌 다양한 조건도 효과적으로 처리
트레이닝 및 두 가지 모델 패러다임
- 트레이닝 시 각 Discrete Distribution Layer(DDL)에서 샘플 셀렉션 후 Adam+Split-and-Prune로 최적화
- Single Shot Generator: 각 레이어가 독립적인 가중치 보유
- Recurrence Iteration: 모든 레이어가 가중치 공유
다양한 적용 사례
얼굴 이미지 무작위 생성
- 훈련된 DDN 기반의 얼굴 이미지 생성 결과, 결과물의 다양성과 품질 확인
조건부 이미지 컬러링/에지-컬러 변환
- 특정 이미지를 기반으로 스타일을 최대한 근접하게 사고, 조건도 만족
- 생성 이미지 해상도 256x256
계층적 생성 시각화(MNIST 등)
- 각 생성 단계별 중간/최종 결과물 시각화
- 큰 이미지는 초안, 작은 이미지는 정제된 최종 결과
미래 연구방향 및 응용 가능성
- 하이퍼파라미터 튜닝, 탐색적 실험, 이론 분석 등으로 DDN 성능 개선 가능성
- ImageNet급 복잡성 문제까지 확장, 실제 서비스 가능한 모델 구축
- 초해상도, 이미지 컬러링, 깊이 추정, 포즈 추정, 로보틱스 등 다양한 작업에 적용
- Diffusion 기반 모델 대비 한 번의 forward-pass로 다중 샘플 출력
- 불확실성 추정 등 활용에서 효율성 및 제약 적용 용이
- End-to-end 미분 가능성으로 기존 판별/보상 학습과 결합 시 효율적
- 비생성 작업(비지도 클러스터링, 데이터 압축 등)에도 활용
- DDN의 설계 아이디어를 기존 생성 모델(예: Diffusion)에 적용한 후속 연구(Diffusion과 1D 이산 잠재 공간 결합 등)
- 언어 모델링에서 토크나이저 없이 바이너리 문자열 직접 모델링 등 새로운 방향 제시
자주 묻는 질문
Q1: GPU 메모리 요구량 증대?
- 기존 GAN Generator 대비 약간 증가하나 큰 차이 없음
- 트레이닝 때 선택된 샘플만 gradient 저장, 나머진 바로 버려져 메모리 여유 확보
- 생성 단계에서는 임의 하나만 생성해 전체 샘플 모두를 생성하지 않으므로 추가 자원 사용 극소화
Q2: 모드 콜랩스(modal collapse) 문제?
- 없음. 항상 타깃과 가장 유사한 결과만 loss 적용하여 다양성 보장
- 실험적으로도 테스트셋 재구성 성능(복원력) 우수
- 다만, DDN 복잡도 자체로 감당하기 힘든 고차원 데이터의 경우 블러리 샘플 생성이 나타날 수 있음
Hacker News 의견
-
저자들이 ICLR 리뷰를 유용하게 느껴서 기쁨을 표현함, 이 사례는 ICLR의 모든 논문 리뷰를 공개하는 정책이 어떻게 성공적으로 작동하는지 보여주는 예로 여김
리뷰어들이 익명으로 논문을 어떻게 해석했는지 저자에게 '평가서' 역할을 해 주고, 전통적인 학계 밖의 사람들도 논문 채택/거절 뒤에 숨어 있는 토론을 볼 수 있다는 장점이 있음
이 논문에 대한 리뷰 링크는 이곳임
거절된 논문 전체 목록은 여기에서 확인 가능함- ICLR에서 리젝된 경험이 있을 때마다, 적어도 그 논문의 핵심 개념을 이해하지 못한 리뷰어가 누구인지 지적할 수 있었음
-
논문의 Fig.18에서 Taiji-DDN이 고대 중국 철학의 태극과 비슷함을 언급하고 있음
이 부분이 조금 까다롭게 느껴졌음
분기 구조(branching structure)는 흔히 볼 수 있는 개념이기 때문에, 특별히 고사성어와 엮는 해석은 다소 의아하다고 느낌- 개인적으로 이건 그저 독특한 네이밍을 재미있게 설명하고 싶었던 것으로 보임
딱히 미신적이거나 이상한 내용은 아니라고 생각함
- 개인적으로 이건 그저 독특한 네이밍을 재미있게 설명하고 싶었던 것으로 보임
-
단일 저자 논문이 ICLR에 실리는 걸 보니, 특히 혁신적인 방법을 제시한 경우라 더욱 인상적으로 느껴짐
-
구조가 매우 흥미롭게 다가옴
디버깅이 쉬운 장점이 있지만, 샘플러를 사용하고 Mixture-of-Experts(MoE) 스타일 라우터가 아니라서 각 레이어마다 K-1번의 연산이 효과적으로 버려지는 단점이 존재함
내가 느끼기엔 MoE와 'x0-target' latent diffusion 모델의 조합이 가장 가까운 비유이고, 주요 혁신점은 라우터가 아닌 가이드 샘플러와 split-and-prune 옵티마이저임
이 덕분에 학습이 쉬워진다고 생각함-
샘플링 확률이 입력에 관계 없이 1/K이기 때문에, 추론 시에는 각 레이어마다 K개의 중간 연산을 굳이 모두 할 필요 없이 사용할 것을 미리 결정하고 해당 연산만 수행하면 됨
이 내용은 논문 하단의 'Common Questions About DDN' 섹션 Q1에 나와 있음 -
논문을 잘못 이해하신 것 같음
'Experts'는 존재하지 않고, 출력이 단순히 분포로부터 랜덤 샘플을 근사하는 역할임
latent diffusion은 없고, GAN과 비슷한 컨볼루션을 사용함
추론 시에는 샘플 인덱스를 미리 선택해서 쓸데없는 연산이 없다는 점 강조함
-
-
정말 멋진 컨셉임
논문 초록 아래의 예시들을 보니, 모델이 상당히 정확한 결과를 내는 부분들이 놀라움
예를 들어, 2행 3열 헤어라인, 2행 7/8/9/11열의 셔츠 색상, 4/6행 전체 립스틱, 6행 4열 얼굴과 머리 위치/모양 등
특히 6행 4열 좌하단의 빨간색 부분은 모델이 무언가 빨간 게 있다는 점을 알아채고 정확한 위치에 붉은 블롭을 둔 것이 매우 신기함
데이터셋의 편향(예: 립스틱)이나 내 선택적 관찰일 수도 있지만, 빨간 어깨 끈에 대해서는 데이터 누수나 과적합 가능성, 아니면 그저 우연인지 궁금함 -
나도 비슷한 구조(방법은 다름)로, 교차 어텐션과 학습된 쿼리들의 계층 구조를 만들고, 어텐션 행렬에 L1을 적용해 희소성을 높여 구현한 적 있음
이산적 계층 표현(discrete hierarchical representations)은 정말 흥미로움
레이어마다 활성화되는 패턴이 각 입력마다 '파스 트리'처럼 작동해서 이미지를 짧은 정수 시퀀스로 효과적으로 압축하게 됨 -
내가 잘 모르는 부분이라서 질문함: 네트워크가 1x1 컨볼루션으로만 구성되면, 픽셀 간에 정보 교환이 전혀 없는 것 아닌지
그렇다면 각 픽셀이 완전히 독립적이라는 의미이고, 결과가 비일관적이지 않을까 궁금함-
여기에는 해당되지 않지만, 실제로는 픽셀을 서로 독립적으로 생성하는 아키텍처도 존재함
任의의 픽셀이나 이미지 요소를 나머지를 생성하지 않고 만들어낼 수 있음, 이들은 내재적임
예시로 NeRF, 'single-pixel GAN', MAE가 있는데 논문 링크로 이 논문, 이 논문, 이 논문이 있음
이게 가능한 이유는 모델이 모든 가능한 데이터를 '기억'하는 기능이 있다고 볼 수 있어서, 독립적으로 생성하는 것은 단순히 어떤 '기억'의 특정 부분을 꺼내오는 식임
잠재공간은 변화하지 않는 플라톤적인 대상이기 때문에, 각 포인트를 물리적으로 따로 생성하는 것이 이상하지 않음
arbitrary points를 y=mx+b 같은 함수로 생성할 수 있듯, 이미지 생성도 복잡한 함수의 입력에 불과함
이 개념이 이미지에만 국한되지 않고, 자연어도 어느정도 독립적으로 생성할 수 있으며 이 코드와 내 제안 여기에서 확장 가능함 -
DDN에서는 1x1 컨볼루션이 Discrete Distribution Layer(DDL)의 출력 레이어에만 사용됨
DDL 사이의 신경망 블록들은 주요 연산 및 파라미터의 근원이 되고, 여기에 표준 3x3 컨볼루션을 채택함
-
-
흥미로움
며칠 전, symbolic transform 행렬을 사용해서 딥 그래프 반응 시스템을 병렬화하는 diffusion 연구를 했는데, 많은 사람들이 이 일반적인 방향으로 가는 중임
향후 1-2년 내에 diffusion 기반 모델이 코드 생성을 주도할 것 같다는 생각이 듦 -
정말 멋짐, 예전에 표현 학습에 꽤 많은 시간을 쏟았는데, MNIST 숫자 그리드가 추억을 떠올리게 함
진짜로 흥미롭고 새로운 접근이라고 생각하고, 확장해서 비이미지 도메인에 적용했을 때 성능이 궁금함
추후 연구를 어디서 팔로업할 수 있는지 궁금함- 관심 가져줘서 고마움
앞으로의 연구 결과는 GitHub와 Twitter(X) 모두에 올릴 예정임
- 관심 가져줘서 고마움
-
정말 좋은 연구로 보여서 읽기 목록에 추가함
Hacker News에 공유해줘서 고마움을 느낌