본문 바로가기
AI · 인공지능/이미지 생성 AI

이미지 생성 AI「NovelAI」가 512×512 이외의 해상도로 트레이닝하는「Aspect Ratio Bucketing」공개

by 두우우부 2022. 11. 10.
반응형


문장이나 이미지를 자동 생성하는 AI「NovelAI」에 이용되고 있으며, 출력 이미지의 질을 크게 향상하는「Aspect Ratio Bucketing」이 오픈 소스 소프트웨어 라이센스 · MIT 라이센스로 공개되었습니다. 이 기술은 그간 이미지 생성 AI의 문제로 알려졌던 부자연스럽게 잘린 이미지가 생성되는 문제를 해결하기 위한 것입니다.

GitHub - NovelAI/novelai-aspect-ratio-bucketing: Implementation of aspect ratio bucketing for training generative image models as described in

 

GitHub - NovelAI/novelai-aspect-ratio-bucketing: Implementation of aspect ratio bucketing for training generative image models a

Implementation of aspect ratio bucketing for training generative image models as described in: https://blog.novelai.net/novelai-improvements-on-stable-diffusion-e10d38db82ac - GitHub - NovelAI/nove...

github.com



NovelAI Improvements on Stable Diffusion | by NovelAI | Oct, 2022 |


"부자연스럽게 잘린 이미지가 생성된다"는 것은 기존의 이미지 생성 모델이 안고 있는 문제 중 하나입니다. 그 원인은, 정사각형의 이미지를 생성 · 출력하도록 트레이닝이 이뤄지고 있는데, 학습 자원들은 정사각형이 아닌 것이 많다는 점입니다.

이미지 생성 모델을 트레이닝할 때는 GPU 효율 최적화를 위해 한 번에 여러 트레이닝 샘플을 조작하는 것이 일반적입니다. 이 때문에 타협안으로서 정사각형이 아닌 이미지들의 경우 중앙을 정사각형으로 잘라 훈련에 이용하고 있습니다.

구체적인 예는 다음과 같습니다. 왕관을 쓴 기사의 이미지입니다만, 세로가 길기 때문에 트레이닝에서는 중앙부를 잘라서 사용합니다. 여기서도 발생하는 문제점의 하나로, 원화의 태그에「왕관」이 들어가 있어도, 트레이닝할 때에「왕관」은 소실되어 버립니다. 이것은 중앙부 잘라내기를 그만두고 랜덤으로 잘라내어도 약간의 개선밖에 얻을 수 없다고 합니다.


해결책으로 생각되는 것 중 하나는 고정 크기의 캔버스에 이미지가 들어가도록 붙여 넣고, 불필요한 부분은 마스크를 거는 것이지만, 트레이닝 시에 불필요한 계산이 발생하게 됩니다.

그 때문에 고안된 것이 "Aspect Ratio Bucketing"입니다. 이 방법은 데이터 세트의 이미지를 기반으로 "256 × 1024 (종횡비 0.25)", "320 × 1024 (종횡비 0.3125)", "384 × 1024 (종횡비 0.375)", "384 × 960 (종횡비 0.4)] 「512×512(종횡비 1)」와 같이 복수의 버킷을 준비해, 이미지를 가장 가까운 버킷에 할당해, 각 버킷을 치우침 없이 트레이닝하는 것입니다.

Waifu diffusion v1.4에서 Aspect Ratio Bucketing을 실천한 gcem156 씨에 의하면, 여백이나 단락에 대하여 개선 효과가 다소 보였다고 합니다.

반응형