Brief on Brief paper : LaCLIP
간혹 행한 주된 내용은 단 한줄인 페이퍼가 있기 마련이다. 그런데 방법론이 잘 통해서 성능은 상당한.
LaCLIP은 Language augmented CLIP의 준말이다.
먼저 CLIP에 대해 간단하게 알아보자.
CLIP은 텍스트와 이미지를 간단한 내적을 통해서 연결되게 만들었다.
예를들어 하늘을 바라보는 강아지 사진을 VIT기반 모델에 넣어서 10개 차원의 벡터를 뽑아냈다고 하자.
이번엔 "하늘을 바라보는 강아지 사진"을 Language model에 넣어서 또 10개 차원의 벡터를 뽑았다고 하자.
이 둘의 내적을 구하면 잘 훈련된 CLIP은 양수의 큰 수를 내뱉는다. 예를들어 같은 이미지와 "하늘을 바라보는 고양이 사진"이라는 텍스트를 넣으면 둘의 내적 값은 작아질 것이다(어쩌면 음수로)
만약 텍스트를 "애기를 돌보는 할머니" 라고 넣었다면 아예 다른 관계이니 음수로 나올것이다
이런식으로 positive pair는 내적값을 크게, negative pair는 내적값을 줄이는 방식으로 트레이닝을 하면 간단함에도 sota 능력을 보여주었다.
무엇보다 CLIP은 Dalle2, Stable diffusion같은 text to image 모델들을 만들어낸 주요 모델이다.
어떤 텍스트든 그에 걸맞게 상상한것 이상의 결과물을 내놓는 text to image 모델들은 CLIP의 위대함을 드러내는 존재이기도 하다.
LaCLIP은 기존의 CLIP에 쓰인 텍스트들을 chatgpt를 통해 "이 이미지 캡션을 다시 써줘" 라고 명령을 내려서 몇개의 샘플을 얻고 이를 data augmentation으로 사용한 것이다.
예를들어 white and red cheerful combination in the bedroom for a girl이라는 문장은
A bright and lively white-and-red color scheme in a girl’s bedroom, creating a cheerful ambiance 으로 chatgpt가 바꿔주는 것이다.
이렇게 문장마다 4개씩 뽑아낸뒤 트레이닝시에 텍스트는 랜덤하게 한개를 선택하여 트레이닝 되게 만들었다.
그 결과 특히 ImageNet zero-shot accuracy에서 기존 CLIP보다 8.2% 가량 더 좋은 성능을 냈다고 한다.
간단하면서도 똑똑하고 무엇보다 실제 결과치가 워낙 좋아서 chatgpt나 bard 같은 생성형 모델들을 사용한 text data augmentation 방법론은 기본적으로 차용되는 방법론이 되지 않을까 생각해본다.