HAI(하이)! - Hecto AI Challenge : 2025 First Half Hecto Recruitment AI Competition

Recruit | Algorithm | Hecto | Vision | Classification

  • moneyIcon Prize : 26,000,000 KRW
  • 1,415 Users Completed

 

모델의 과적합을 방지하는 방법에 관련 질문

2025.06.04 17:04 1,332 Views

제가 여러 모델을 사용해봤을 때, F1 Score나 Log Loss는 나쁘게 나오는거 같지 않은데 막상 성능을 올려보면 많이 낮게 나오더라고요.

과적합을 줄이기 위한 방법에는 어떤 방법이 있을까요? 그리고 Train Log loss와 Val Log loss가 많은 차이를 보이는 이유는 뭘까요?


분류 문제는 많이 해봤지만, 몇백개의 차 종류를 분류하는 대회는 처음이고, 딥러닝도 최근 처음 배워 많이 어렵네요. 다들 많은 조언 부탁드립니다.

Login Required
0 / 1000
플로로ㅠㅠ
2025.06.04 17:24

이미지 증강이 도움이 되는것 같아요

과적합방지위원회
2025.06.04 21:40

감사합니다. 참고해서 시도해보겠습니다!

NAJUNGHWAN
2025.06.04 18:48

학습 데이터가 라벨링이 되어 있지 않은 멀티뷰 데이터이고, 각 클래스 데이터의 일관성이 떨어진다는 점이 가장 크다고 생각됩니다. 
크게 전면, 측면, 후면, 보닛 열림, 차량 내부로 데이터를 나눌 수 있는데 
라벨링이 되어 있지 않고 일부 클래스에는 보닛 열림이 있고 일부 클래스에는 없는 등 데이터가 고르지 않습니다.
따라서 단순 kfold로 나눌 경우 train/val 차이가 많이 날 수 밖에 없을 것 같습니다.


과적합방지위원회
2025.06.04 21:43

음.. 저도 그래서 전면, 측면, 후면 등 다양한 각도의 이미지를 학습시켜야 한다고 생각하는데, 각 클래스마다 모든 각도의 이미지가 고르게 존재하지 않는 것 같습니다. 
그래서 특정 클래스에 특정 각도의 이미지가 아예 없는 경우, 이런 데이터를 어떻게 처리하고 학습에 반영하는 것이 좋을거 같으신가요?

NAJUNGHWAN
2025.06.04 21:53

아직 대회 데이터셋만 들여다본 상태라 말씀드리기 조심스럽지만, 
각 데이터를 라벨링하는 방법보다는 일단 전부 모델에 집어넣고 positive와 negative를 분리하는 전략이 유효할 것으로 생각됩니다.
face recognition에서 쓰이는 Arc-face 같은 기법을 예시로 들 수 있겠습니다. 
또는 학습 후 모델이 어려워하는 FP를 hard-negative mining 기법 등을 이용해 다시 학습 데이터에 넣는 방법도 있겠습니다.

다만 이런 방법은 부차적인 방법이라 생각되고, 여러 데이콘러들의 말씀처럼 강한 증강을 어떻게 처리하느냐가 핵심일 것으로 보입니다.

과적합방지위원회
2025.06.04 22:14

답변 감사드립니다. 참고하여 좋은 성과 낼 수 있도록 해봐야겠네요! 화이팅입니다.

눈덩이
2025.06.08 18:55

글 잘읽었습니다 
과적합을 줄이는 방법은 하이퍼파라미터 조정, 얼리스토핑, 여러관점의 데이터를 추가하는 방식이 있을 것 같네요
몇백개의 차 종류를 분류하시는데 Train Log loss가 낮고 Val Log loss가 높게 나와 과적합 판단을 하신 것 같은데
F1-score가 잘나온다고해도  특정 클래스에서 분류를 잘 못할수도있으니깐 confusion matrix로 확인해보시는 것 추천드릴게요 감사합니다

과적합방지위원회
2025.06.08 21:47

말씀하신 방법들을 시도해보고 있긴 하지만, 성능 개선이 잘 이뤄지지 않아 고민입니다.
의견 주신 것처럼 confusion matrix로 확인해보는 것도 좋겠네요. 의견 감사합니다. 좋은 하루 보내세요!