첫 대회에서 최우수상까지 받은 후기!

데이터 크리에이터 캠프에 대해 먼저 이야기를 해보자면
데이터 크리에이터 캠프는 데이터 분석 저변 확대와 창의력 있는 인재 양성을 위해 학습과 멘토링을 겸한
미래의 데이터 주역 육성 및 선발 프로그램입니다.
이라고! 써있지만 제가 느낀 바로는
데이터 분석 + 인공지능 모델 개발 정도의 대회/공모전이었습니다.
처음엔 학습과 멘토링이 포함되어있는 대회였기 때문에 첫 대회로 부담이 없을 것이라 생각해서 지원했습니다.
하지만 뒤에 이야기 하겠지만 생각보다 쉽지 않은 대회였습니다.
저희 팀은 총 4명이었고, 모두 컴퓨터와 관련된 과로 구성되어있었습니다.
제가 기억하기론 이런 대회 경험은 모두 없었습니다.
매년 다른 것인진 모르겠지만, 대회는 CV 분야였습니다.
1. 예선
예선에서는 일단 학습과 멘토링이 있었는데요.
학습은 대회 측에서 제공한 인터넷 강의같은 수업을 다 듣는 것이었고,
지켜야하는 최저 학습률이 있었습니다.
멘토링은 각 조마다 배정된 대학원생 멘토 분들이 계셨고, 3번의 멘토링이 있었습니다.
멘토링에서 예선 문제를 푸는 방향성이랑 지금 올바르게 문제를 풀고 있는지 등을 확인받았습니다.
하지만 방향성을 잡는 데에는 도움이 됐지만, 결국은 본인이 직접 실험을 다 돌려보는 것이 중요했습니다.
예선 미션은 총 3개였는데요.
Mission 1 - 굴뚝 탐지 (Object Detection)
Mission 2 - 굴뚝 높이 추정 (Height Regression)
Mission 3 - 산업단지 영역 분할 (Semantic Segmentation)
이렇게 3가지 였습니다.
대회 측에서 제시한 성능 지표가 있었고, 미션을 전부 수행한 후 내용을 전부 정리해서 ppt까지 제출하는 것이 예선이었습니다.
저희 팀은 최대한 성능을 높히고, 마지막까지 ppt를 수정하고 제출했습니다.
1-1) Mission 1 - 굴뚝탐지

위성 영상 데이터에서 작은 굴뚝을 찾는 탐지 모델 개발이 주제였습니다.
작은 규모의 객체가 다수 존재하는 점을 고려해서 YOLOv8-Medium 기반 모델을 설계했습니다.
그리고 Augmentation, 색상 증강, Focal loss 사용 및 AdamW 최적화 등 다양한 전략을 사용했습니다.
최종적으로는 mAP@0.5 0.9928을 달성했습니다.
여기까지는 꽤 수월하게 진행했었습니다..
1-2) Mission 2 - 굴뚝 높이 추정

Sentinel 이미지와 polygon 정보를 활용해 굴뚝의 실제 높이를 예측하는 것이 주제였습니다.
굴뚝 polygon의 기하학적 특성을 바탕으로 shape feature를 추출하고,
ResNet101, DenseNet121과 결합한 Dual-Branch 회귀 모델을 구성했습니다.
두 모델을 Stacking 방식으로 앙상블하여 예측 안정성을 높였고, 최종 RMSE 9.22m 성능을 달성했습니다.
이 미션에서 성능이 어떤 방식을 써도 드라마틱하게 나아지지 않아서 고생을 했던 기억이 있네요..
1-3) Mission 3 - 산업단지 영역 분할

Sentinel-2 이미지에서 산업단지 영역을 픽셀 단위로 분할하는 것이 주제였습니다.
산업단지 픽셀 비율이 매우 낮아 발생하는 극심한 클래스 불균형을 해결하기 위해 Focal Loss + Dice Loss(4:6) 조합을 설계했고,
CosineAnnealingLR, Dropout, RandomCrop, RandomFlip 등의 기법을 적용해보았습니다.
결과적으로 mIoU 0.9892을 달성했습니다.
이 미션은 실험을 여러 번 했었는데 저는 그 과정이 재밌더라구요.
이렇게 예선은 마쳤습니다.
본선 발표날에 다른 팀 발표를 보고 알게 된 사실인데 이정도면 꽤 높았던 성능들이었습니다.
첫 대회여서인진 모르겠지만 꽤 많은 실험을 진행했습니다.
대회 측에서 코랩 프로를 지원해주긴했지만 그걸로는 너무 부족해서 사비로 프로를 추가 결제하며 사용했습니다.
실험에 꽤 시간이 걸려서 코랩을 돌리고 자고..
일어나서 성능 확인하고..
했던 기억이 있네요.
2. 본선
예선을 위처럼 마치고 살고 있던 어느 날..
본선에 붙었다는 연락을 받았습니다.
본선은 추가미션 4를 풀고 똑같이 ppt를 작성해서 제출하는 것이었습니다.
(물론 코드도 제출합니다.)
본선에서는 발표도 포함되어있었습니다.
본선 한 3일 전까지 모델과 ppt를 제출해야 했습니다.
그리고 본선 당일에는 ppt를 바탕으로 발표를 진행하고, 간단한 질의응답 시간이 있었습니다.
발표가 다 끝난 후 그 자리에서 바로 시상식까지 진행한 후 대회를 마치는 일정이었습니다.
참고로 본선에 진출하면 무조건 장려상은 받을 수 있었습니다.
본선 == 적어도 장려상!
이렇게 된거 저는 장려상 이상의 상을 받아보고 싶어졌고...
머리를 굴리기 시작했습니다...
2-1) Mission 4 - 예선 미션3의 산업단지 분할 모델 성능을 향상
미션 4는 미션 4-1과 4-2로 구성되어 있었는데요.
미션 4-1과 미션 4-2가 방법만 다르지 똑같은 문제를 해결하는 내용이었습니다.
그 두 방법을 둘다 한꺼번에 사용해도 되고,
둘 중 하나만을 정해서 사용해도 됐었습니다.
4-1은 다중모달 융합을 통해 성능을 향상 시키는 방법이었고,
4-2는 전이학습을 통해서 성능을 향상 시키는 방법이었습니다.
그리고 이 두개를 전 모두 합쳐서 이런 모델을 만들어냈습니다.
전이학습을 통해서 모델을 이미 만들어두면, 적은 fine-tuning으로 빠르게 성능을 높일 수 있어서
전이학습을 어느정도의 정확도까지만 해둔 후 freeze 해뒀습니다.
그리고 다중 모달 융합은..
제가 이 시기에 학교에서 딥러닝개론이라는 수업을 듣고 있었는데,
그 수업에서 교수님이 Attention을 딱 설명해주시던 시기라서 이걸 적용해보겠다고 생각했습니다.
왜냐면 attention을 사용하면 여러 부분들을 한 번에 볼 수 있다고 하셨기 때문에..
다중 모달에 찰떡이라고 생각했습니다..
그래서 실험을 거치고 거쳐 아래와 같은 파이프라인이 만들어졌습니다.

다중 모달을 위해 추가된 데이터가 원래 있던 Sentinel 데이터보다 해상도가 너무 낮아서
제대로 학습이 진행되지않아서 Upsampling을 해주었습니다.
처음에는 단순 보간을 선택했지만, 해상도가 너무 커지면서 데이터가 너무 깨져서
Learned Upsampling을 택했습니다.
그리고 각각의 Encoder로 독립적으로 인코딩해주는데요.
Sentinel Encoder은 Landsat 데이터로 사전학습한 인코더를 가져와서 사용했습니다.
나머지 인코더는 from-scratch 학습했습니다.
그리고 서로 다른 모달리티 간의 상호작용을 학습하기 위해 Cross-Modal Attention을 활용했습니다.
그 후 decoder에서 분할 마스크를 생성하면 완성! 입니다.
간단히 이렇게 적어보았지만 꽤 많은 실험을 거쳤습니다.
근데 전 이 과정을 통해서 궁금했던 Attention도 써보고 처음부터 모델 설계를 해볼 수 있어서
너무 재밌고 유익한 과정이었습니다.
아마 결과도 잘 나와줘서 더 재밌었던 것 같습니다.

결과는 이렇게 이쁘게 잘 분할 되었습니다.
성능도 0.9892에서 0.9963으로 향상시킬 수 있었습니다.
처음엔 아무것도 모르고 도전했던 대회라 ResNet이 뭔지도 몰랐는데
이 대회를 통해서 크게 성장한 것 같습니다.
저에겐 도전이었지만 너무 재밌는 경험이었습니다!
이 결과로 저희 팀은 최우수상을 받게 되었습니다.
첫 대회이지만 너무 좋은 결과를 받을 수 있어서 감사할 따름이었습니다.
'대회 | 대외활동' 카테고리의 다른 글
| 2026년 2학기 삼성드림클래스 멘토 모집 시작 | 활동 내용 총정리와 활동 후기 (0) | 2026.06.03 |
|---|---|
| 삼성 드림클래스 합격 후기 | 자소서, 면접, 추가합격까지 (0) | 2026.03.31 |