근거는 있나요? 이번 주 세 편의 기술 리포트를 읽으며 가장 먼저 떠오른 질문입니다. 악성코드 탐지 모델이 파일 끝에 패딩 몇 바이트만 추가했더니 판단이 뒤집혔다는 실험, 10개 회귀 알고리즘을 돌려놓고 '랜덤 포레스트가 좋다'고 결론 내린 금융 ML 프로젝트, 그리고 오픈 데이터만으로 독점 VLM에 근접했다는 Molmo 논문—셋 다 인상적인 숫자를 제시하지만, 실험 설계의 타당성을 들여다보면 온도가 확 달라집니다.
패딩 한 줄이 모델의 '확신'을 0으로 만들 때
velog에 공개된 x-MalConv2 XAI 분석 프로젝트는 DeepSHAP과 Integrated Gradients를 결합해 악성코드 탐지 모델의 의사결정을 시각화한 뒤, 파일 끝(EOF)에 그래디언트 기반으로 계산한 패딩 바이트를 추가하는 적대적 공격을 수행했습니다. 파일 전체 길이의 0.1% 이하 패딩만으로, 최대 20회 반복만으로 악성 판정이 정상(Benign)으로 뒤집혔다는 결과가 핵심입니다.
데이터 분석가 시선으로 보면 두 가지가 걸립니다. 첫째, 샘플 사이즈가 충분한가요? 공격 성공률이 전체 테스트셋에서 몇 퍼센트인지, 파일 유형별·크기별 breakdown이 보이지 않습니다. 둘째, 공격 전후 SHAP Value 분포 변화를 '시각화'로만 보여주는데, 이건 anecdotal evidence에 가깝습니다. Feature 변화량이 Context 변화량보다 크다는 관찰은 흥미롭지만, 통계적 유의성 검정 없이는 correlation이지 causation이 아닙니다. 다만, Winner Index를 고정해 그래디언트를 정밀 타격하는 구현 디테일과, Max-pooling 구간에 Linear Approximation을 적용해 NaN 문제를 해결한 점은 재현 가능성(reproducibility) 측면에서 높이 평가할 만합니다. GitHub 코드까지 공개한 것도 좋습니다.
R² 0.77이면 '좋은' 건가요?—베이스라인이 없으면 모릅니다
두 번째 사례는 미국 소비자 금융 조사(SCF 2009) 패널 데이터로 투자자 리스크 허용도를 예측하는 금융 ML 프로젝트입니다. Linear Regression부터 Gradient Boosting까지 10개 알고리즘을 10-Fold CV로 비교한 뒤, GridSearchCV로 Random Forest(n_estimators=250)를 최종 선택했고, 검증셋 R²는 0.772, 훈련셋 R²는 0.962입니다.
여기서 즉시 꺼낼 질문이 있습니다. 베이스라인 대비 얼마나 개선되었나요? 단순 평균 예측(dummy regressor)의 R²는 0입니다. 그런데 Linear Regression의 CV R²가 이미 어느 수준인지 명시되어 있지 않아, Random Forest의 0.77이 비선형성 포착에 따른 실질적 개선인지, 아니면 피처 8개짜리 저차원 문제에서 과적합이 가려진 결과인지 판단하기 어렵습니다. 훈련 R² 0.962 vs 검증 R² 0.772의 갭(0.19)은 전형적인 과적합 시그널이고, MAE나 RMSE 같은 절대 오차 지표 없이 R²만으로는 실제 운영 환경에서의 예측 품질을 보장할 수 없습니다. 'S&P500 평균으로 2009년 위험자산을 정규화했다'는 전처리도 도메인 가정이 강한데, 이 가정의 민감도 분석(sensitivity analysis)이 빠져 있습니다.
데이터 품질 하나로 SOTA에 근접?—일반화 성능을 묻습니다
세 번째는 CVPR 2025에 발표된 Molmo/PixMo 논문입니다. Allen Institute for AI가 제안한 이 VLM은 독점 모델의 합성 데이터 없이, 사람이 직접 구술한 캡션(PixMo-Cap)과 포인팅 데이터 등 고품질 인간 어노테이션 데이터셋만으로 GPT-4V, Claude급 벤치마크 성능에 근접했다고 보고합니다. Ablation에서 PixMo-Cap 데이터 규모 증가에 따라 성능이 일관되게 향상되었고, noisy한 대규모 데이터는 동일 규모에서도 효과가 제한적이었다는 결과는 '양보다 질'이라는 직관을 데이터로 뒷받침합니다.
하지만 Ablation study를 좀 더 깊이 봐야 합니다. Vision 인코더(CLIP/SigLip/MetaCLIP) 간 성능 차이가 거의 없다는 결과는 인상적이지만, 이것이 인코더가 이미 충분히 좋아서 차이가 없는 건지, 벤치마크가 인코더 차이를 드러내지 못하는 건지 구분해야 합니다. 논문 스스로도 인정하듯 일부 모델(Qwen2-VL)은 벤치마크 성능에 비해 human evaluation에서 낮은 선호를 받았습니다. 이건 벤치마크 최적화 ≠ 사용자 만족이라는 오래된 경고입니다. Molmo가 11개 벤치마크 평균으로 SOTA를 주장하더라도, 각 벤치마크의 테스트셋 분포와 실사용 분포 간 드리프트(data drift)가 얼마나 되는지는 여전히 열린 질문입니다.
시사점: 숫자를 읽기 전에 실험 설계를 읽으세요
세 사례를 관통하는 교훈은 하나입니다. 모델 성능 숫자는 실험 설계의 품질만큼만 신뢰할 수 있습니다. 적대적 공격의 성공률은 테스트셋 규모와 다양성이 뒷받침해야 하고, 회귀 모델의 R²는 반드시 dummy baseline 대비 개선폭으로 읽어야 하며, VLM의 벤치마크 순위는 human preference와의 상관계수로 교차 검증해야 합니다.
앞으로 논문이나 기술 리포트에서 'SOTA 달성'이라는 문장을 만나면, 저는 세 가지를 먼저 확인할 것을 권합니다. (1) Ablation study에서 각 구성 요소의 기여도가 분리되어 있는가, (2) 베이스라인이 trivial baseline(랜덤, 평균, 최빈값)을 포함하고 있는가, (3) 테스트 환경이 프로덕션 환경의 데이터 분포를 얼마나 대표하는가. 이 세 질문에 답하지 못하는 숫자는, 아무리 소수점 셋째 자리까지 적혀 있어도, 그저 숫자일 뿐입니다.