분석시각화 대회 코드 공유 게시물은
내용 확인 후
좋아요(투표) 가능합니다.
CLIPCAP 기반 Caption Generation 코드(PB기준 0.7)
공동작성자
논문 : https://gkswns3708.notion.site/ClipCap-CLIP-Prefix-for-Image-Captioning-0ed557475ed4497a8944f3bc8ac41f17?pvs=4
1~3 epoch에서 Overfitting이 발생되는 것으로 관찰되고,
경험적으로 2epoch에서 validation이 최대였을 때 제출하면 Caption에서 0.7정도의 public score를 얻게 됩니다.
코드의 큰 틀은 다음과 같습니다.
1. CLIP 기반의 모델 특성상 Freezed Image Feature Extractor(ResNet)가 매 iteration당 동작하게 되므로, 해당 과정을 생략하기 위헤 Feature Extraction을 학습 전 미리 진행합니다.
2. Caption Data 또한 Freezed Text Feature Extractor(BERT)가매 iteration당 동작하게 되므로, 해당 과정을 생략하기 위헤 Feature Extraction을 학습 전 미리 진행합니다.
3. 1, 2번 과정에서 얻은 Extracted Data를 기반으로 본 논문에서 필요한 pipeline이 수행됩니다.
3 - 1. CLIPCAP 논문의 경우 Image Feature Extractor에서 나온 Feature를 "학습 가능한 Mapping Network"를 이용해 1차원 크기의 벡터로 변환합니다.(MLP의 경우 크기 10, Transformer류의 경우 40, 조절 가능한 HyperParameter)
3 - 2. Caption Token에 앞쪽에(Prefix) 해당 벡터를 concatenation해서 학습합니다.
본 논문의 contribution은 기존 CLIP의 모든 Layer를 Freeze하고, "학습 가능한 Mapping Network"만을 학습시켜도 Captioning 결과의 Distribution이 Shift(Fine-tuning)이 되는 것입니다.
코드는 아래 링크에서 확인 가능합니다.
데이콘(주) | 대표 김국진 | 699-81-01021
통신판매업 신고번호: 제 2021-서울영등포-1704호
서울특별시 영등포구 은행로 3 익스콘벤처타워 901호
이메일 dacon@dacon.io | 전화번호: 070-4102-0545
Copyright ⓒ DACON Inc. All rights reserved