
LG Aimers 8기 본선을 다녀왔다.
6기를 통해 처음 LG Aimers를 접했는데, 그때는 아무것도 모르는 상태에서 처참하게 실패했었다.
그래서 “한 번쯤은 본선 가보고 싶다”는 생각이 계속 남아 있었고, 이번 8기에서 그 기회를 얻게 되었다.
운이 좋게도 본선에 진출하게 되었고, 그 경험을 기록해보려고 한다.
LG에서 주관하는 AI 경진대회다.
그동안은 ML 기반 문제들이 주를 이루었고,주로 분류, 회귀, 피처 엔지니어링 같은 전통적인 머신러닝 접근이 중심이었다. 6기를 통해 처음 참여했을 때는 이런 기본적인 흐름조차 제대로 이해하지 못한 상태였고 결과도 좋지 않았다. 이후 몇 번의 ML 경진대회를 더 경험하면서 조금씩 감을 잡기 시작했다.
여러번 삽질을 반복하면서 느낀 점은, 결국 중요한 건 "끝까지 밀여붙여서 좋은 가설을 찾아내야 한다"는것이다.
단순히 모델을 바꾸거나 하이퍼파라미터를 튜닝하는 것이 아니라,문제를 어떻게 해석하고 어떤 방향으로 접근할지를 정하는 것이 훨씬 중요하다는 생각이 들었다.
이 경험에 이어 이번 8기는“이번에는 제대로 해보자” 라는 마음가짐으로 지원하게 되었다. 비슷한 경향으로 ML 기반 주제가 나올것이라 생각하고, 나름의 전략을 세워 이전보다 훨씬 의도적으로 접근하려고 했다. 그런데 이번 주제는 기존과 달랐다.
LLM 경량화
단순히 모델 성능을 높이는 문제가 아니라, 모델을 어떻게 줄일 것인지,어떻게 빠르게 만들 것인지,실제 환경에서 어떻게 동작하게 할 것인지까지 고려해야 하는 문제였다.
특히 LLM 서빙은 기존 ML과 다르게 모델 + 시스템 + 인프라가 모두 연결된 영역이라,처음에는 어디서부터 접근해야 할지 막막했다. 솔직히 “내가 할 수 있는 영역 맞나?”라는 생각도 들었다.
하지만 남들도 다 모르는 분야일거 같아 오히려 누가 더 빨리 이해하고 구조를 잡느냐의 싸움일 수도 있겠다는 생각에 열심히 임했던거 같다.

Phase 1은 1월 한 달 동안 진행되는 교육 과정이다.
lg aimers 측에서 제공하는 품질 높은 교수진 온라인 강의를 들으면서 기본 개념을 학습하는 단계였고, 본격적인 문제 해결 전에 필요한 배경지식을 쌓는 시간이었다.
ML에 초첨을 맞춰 강의를 제공했던 과거 기수와 다르게, 기존 ML 기법들 부터 최신 llm 트렌드까지 짚어볼 수 있어 유익했다.
2월 한 달 동안은 온라인 경진대회가 진행되었다.
https://dacon.io/competitions/official/236673/overview/description

정확도와 속도 두 가지를 균형 있게 맞춰야 했다.
또한 중요한 제약이 있었다.
결국 모델 내부에서만 해결해야 하는 문제였다.
진짜 열심히 했는데,리더보드 점수가 계속 바닥이었다.
포기해야 하나 고민도 들었다.
그래서 선택한 방법은 마지막이다 생각하고 다시 처음부터 다시 짜보자는 것이였다.
베이스라인 코드를 기반으로 다시 구현해서 제출했더니 점수가 갑자기 확 뛰었다.
다른 건 거의 동일했고, 코드만 바꿨는데 결과가 달라졌다.
이후 복기를 통해 분석해보니, 모델 내부의 로직뿐만 아니라 '추론 스택과의 정밀한 호환성'을 맞추는 것이 중요했다.
기존코드는 vLLM 엔진이 양자화 모델을 로딩할 때 필요한 GPTQ 호환 config 주입이나 제출 포맷의 안정성을 두 번째만큼 촘촘하게 챙기지 못했다. 엔진이 모델을 예상대로 읽어들이지 못하니 아무리 좋은 양자화 기법도 제 성능을 낼 수 없었던 것 같다.
상위 100팀만 진출하는 오프라인 단계다.
https://dacon.io/competitions/official/236689/overview/description
정확도,속도,모델 크기 세 가지를 동시에 최적화해야 하는 문제였다.
phase2와는 다르게 vLLM 커스터마이징 가능했고 추론 엔진까지 수정 가능했다.
8시에 종합운동장에서 lg측이 제공하는 버스를 타고 인화원으로 이동한다.
날씨가 굉장히 어중충했다.

키트도 받았다. 키트에는 노트북 거치대, 락앤락 미니물병,후드티, 우산이 들어있었다. lg 좋다....


후드티 착샷

OT를 하고 숙소를 갔다.
그 말로만듣던 lg 인화원 숙소를 가보다니!

굉장히 좋았다. 스탠바이미도 있었다.(시간이 없어서 쓰지는 못했다)
숙소에서 짐 풀고나선 점심을 먹었다. 식사가 진짜 맛있었다.
해커톤하면서 제공되었던 식사 4끼

퀄리티가 진짜 말이 안된다.
작년에는 2-4시까지 자유시간을 줬다고 했는데,
이번에는 1시부터 바로 시작하였다
전날에 엠티갔다가 바로 와서 잠을 잘 못자서 점심먹고 바로 잠들었는데, 10분 지각했다 ;;
들어와보니 다들 열심히 시작하고 계시더라 (후배님 미안..ㅎㅎ)
팀원 두명밖에 없는데 팀원친구가 아무래도 날 원망한듯 하다.
전화라도 해주지…

GPU는 NVIDIA L4 4장으로 충분히 제공되었다. 우리 팀은 2명이어서 리소스도 넉넉하게 사용할 수 있었다.
급하게 자리에 앉아서 바로 시작했는데, 우리팀은 사실 많이 고전했다.
한 오후 9시까지 점수가 도저히 안오르는거다. 점수가 전혀 안 나왔다
팀이 총 27팀인가 그랬는데 25등인가 26등까지 내려가서 뭐가 문제인지 포기할까도 싶었다.
이쯤 되니까 슬슬 멘탈이 흔들리기 시작했다.
흐름이 바뀐 건 예상보다 단순한 이유였다.
그동안 wheel 빌드 과정을 제대로 이해하지 못한 채 대충 돌리고 있었고, 그게 그대로 성능 문제로 이어졌다.
팀원 친구가 wheel 세팅을 다시 제대로 잡으면서 상황이 완전히 뒤집혔다.
세팅을 바로잡고 다시 제출했더니
단숨에 7등까지 올라갔다.
이때의 쾌감이란... 말로 표현할 수 없다.
매니저 관리자분들이 우리팀 그동안 gpu가 하나도 안돌아갔다고 하셨다…
(그러다 갑자기 2번내고 7등으로 확 올라서 좀 놀라긴하셨다 하하)
그래서 좀 늦은시간(오후 10시)이긴 했지만, 이제부터 시작이라고 마음을 잡고 그전에 우리가 생각했던 전략들을 하나하나 다 도전해보았다.
그래서 원래 전략을 기반으로 계속 수정하고, 계속 돌렸다.
무제한 간식커피제공...lg 👍👍
점수가 올라갈 때의 그 쾌감을 한 번 더 느껴보고 싶어서 막판까지 거의 잠 안 자고 돌렸다.
정확도는 유지하면서 메모리와 속도를 동시에 잡는 구조
반복적인 코드 / 수학 문제에서 생성 속도를 크게 끌어올리는 전략
등등 여러가지를 시도해보았다.
하지만 별로 큰 수확이 없었고 결과적으로는 추가적인 점수 상승에는 실패했다.
최종 순위는 16위로 마무리되었다.

아쉬운마음에 7등한 거라도...
거의 못 자고 다음날 일정 진행했다.
근데 이게 좀 힘들었다.
숙소 키는 8시 반에 반납해야하고, 자지도 못한채로 상위 5팀 발표 참관도 못하게 해서 피곤한 상태에서 2시간 대기해야했다.
상위 5팀 아니면 숙소에서 좀 자게 해주면 좋았을 듯....
남는 시간에는 과제 좀 하다가 다른 팀으로 출전한 과후배 친구들이랑 떠들면서 시간 보냈다.

해커톤 끝나니 귀신같이 날씨가 좋아졌다.
아이머스네컷도 있다. 고려대 산경공 화이팅.
중간에 퍼스널컬러 진단도 받았다.
남자가 돈 주고 하기엔 좀 애매한데 공짜라서 받아봤다.ㅋㅋ(이것도 인기많아서 겨우 자리 하나 남아서 받았다.)
이건 꽤 만족스러웠다.
lg 계열사 여러곳에서 채용 컨설팅도 진행해주었는데 관심이 크게 있지않아서 따로 상담받지는 않았다.

상위팀 발표평가가 끝나고,마무리 과정으로 시상식이 진행되었다.
상위 5팀 발표는 직접 못 보게 했는데, 마지막에 3팀 요약 발표를 해줘서 다행이었다.
특히 인상 깊었던 점은 리더보드 순위 ≠ 최종 결과 였다
미꾸짱 팀이 3위안에 들지 않았었는데 최종 3등 안에 들어 2등까지 간 게 인상적이었다.(왜 올랐는지는 발표를 듣자마자 바로 납득이 되었다.)
| 구분 | 🥇 1위 팀 | 🥈 2위 팀 | 🥉 3위 팀 |
|---|---|---|---|
| 문제 정의 | 정확도 손실 최소화 + 속도 극대화 | 양자화 오차 최소화 + 성능 복구 | activation outlier 안정화 + KV 병목 해소 |
| 핵심 접근 | 구조 최적화 + KV FP8 + LM head 제거 | pruning → quant → DPO 복구 | outlier 스케일링 + selective quant + KV FP8 |
| 양자화 전략 | W8A8 + 구조 자체 변경 | W8A8 (성능 비교 기반 선택) | W8A8 + mixed precision + selective 적용 |
| KV Cache | FP8 적용 (메모리 절감) | FP8 적용 | FP8 적용 (점수 2배 상승) |
| 핵심 기술 | - LM head 제거 - int8 tensor core 활용 - 구조 분석 기반 최적화 | - Pruning 10% - Calibration 최적화 - DPO fine-tuning | - Quantization modifier - activation outlier 스케일링 - mixed precision |
| Calibration 전략 | 구조 기반 최적화 중심 | 한국어 데이터 포함 + seed 탐색 | 일반 텍스트 + QA 혼합 데이터 |
| 성능 개선 방식 | 구조 변경으로 동시에 해결 | 압축 → 이후 복구 | 안정화 → 성능 향상 |
| 핵심 포인트 | 모델 구조를 직접 분석해서 중복 제거 | DPO로 양자화 손실 복구 | KV cache FP8 + outlier 해결이 결정타 |
| 한 줄 요약 | 모델을 “다시 설계” | 성능을 “줄였다가 복구” | 양자화를 “정교하게 수행” |
이번 대회를 통해 가장 크게 배운 점은, 단일 전략으로 KV cache에 FP8을 적용한 것이 가장 큰 성과를 가져왔다는 점이다. 이 기법 하나로 베이스라인 대비 점수를 2배 이상 끌어올릴 수 있었고, LLM 추론에서 메모리 병목을 해결하는 것이 TPS 향상의 핵심임을 직접 확인할 수 있었다. W8A8 양자화 자체보다 KV cache 최적화가 리더보드 점수에 더 직접적으로 기여했다는 점이 인상적이었다.
결국 상위 팀 간의 성능 차이를 결정한 요인은 '모델 아키텍처 구조를 얼마나 깊이 분석했는가'였다.
1위 팀은 LM head와 embed token 가중치 공유라는 구조적 특성을 발견해 중복을 제거했는데, 하이퍼파라미터 탐색보다 이런 구조 레벨의 최적화가 훨씬 큰 차별화로 작용했다. 이를 보며 향후에는 양자화 설정을 고민하기 전에 모델 아키텍처 구조 분석을 반드시 선행해야 한다고 느꼈다.
가중치 공유 방식이나 attention 구조(GQA 등)를 파악하는 것이 추가 최적화 기회 발굴의 전제임을 알게 되었다. KV cache FP8을 기본으로 적용하되, Calibration 데이터는 시드, 길이, 언어, 태스크 분포를 다차원으로 구성해 더 정교하게 실험했어야했다는 생각이 들었다.
마지막으로 성능 복구 전략에 대해서도 큰 인사이트를 얻었다. 2위 팀은 성능을 의도적으로 줄였다가 복구하는 전략을 취했는데, Pruning과 양자화로 발생한 손실을 모델의 원래 학습 방식인 DPO 파인튜닝으로 메꾼 점이 놀라웠다. 우리 팀 역시 DPO를 활용한 복구 가설을 세우고 시도했으나, 아쉽게도 실질적인 개선으로 이어지지는 못했다. 같은 기법이라도 복구에 최적화된 데이터와 세밀한 설정값을 찾아내는 디테일이 결국 실력의 차이를 만드는 것 같다.
LG는 확실히 LG였다. 대기업의 인프라와 복지를 직접 경험해 보니 왜 대기업을 선호하는지 간접적으로나마 체감할 수 있는 시간이었다. 사실 그동안 워라밸은 내 커리어에서 큰 우선순위가 아니라고 생각했는데, 이번 경험을 통해 좋은 환경이 주는 동기부여를 보며 생각이 약간 달라지기도 했다.( 물론 크게 변함 없을거 같긴하다.)
무엇보다 이런 고퀄리티의 경진대회를 열어준 LG 측에 깊은 감사를 느낀다. 현업의 고민이 담긴 수준 높은 문제와 아낌없이 지원된 컴퓨팅 자원, 그리고 본선 기간 내내 세심하게 챙겨준 운영진의 배려와 훈련 지원금까지. 성장할 수 있는 환경을 만들어준 덕분에 오로지 기술적인 고민에만 몰입할 수 있었다.
본선 1박 2일 동안 너무 많은 것을 시도하려 했던 점이 아쉬움으로 남는다. 짧은 시간 안에 다 건드려볼 수 없는 부분까지 계획해 갔지만, 막상 현장에서는 시간이 부족해 전부 실행에 옮기지 못했다. 하라는거부터 똑바로 잘 세팅하고 시도해야겠다는 생각도 들었다.
또 하나는, 제한된 기간 내에 내가 준비하고 시도했던 기법들은 결국 '다른 사람들도 한 번씩은 다 시도해 보는' 범주 안에 있었다는 것이다. 이런 치열한 상황에서 우위를 점하려면 나만의 확실한 'Kick'을 찾는 것이 무엇보다 중요하다는 것을 깨달았다. 단순히 라이브러리나 방법론을 적용하는 수준을 넘어, 모델 아키텍처를 뜯어보고 한 단계 더 딥하게 들여다보는 과정이 뒷받침되어야 승부수를 던질 수 있다는 확신이 들었다.
이번 대회는 제대로 시간투자해서 진지하게 임해본 첫 대회였고, 오프라인 본선 무대까지 밟아보았기에 나름 성공적이었다고 생각한다. 다음에는 전통적인 ML 경진대회에서도 유의미한 수확을 거두는 것을 목표로 삼으려 한다. 무엇보다 대회 기간 동안 으쌰으쌰하며 밤새도록 함께 고민하고 의견을 나눠준 팀원 덕분에 지치지 않고 즐겁게 완주할 수 있었다. 혼자였다면 보지 못했을 시야를 넓혀준 동료들에게 감사를 전한다. (후배님들 땡큐)
tmi)
아쉬운 마음에 기념하고자 팀배너 훔쳐왔다..ㅋㅋㅋㅋ
10기로 한번 더 가야겠다.