- 날짜: 2026년 3월 30일 (월)
- 이름: 천지연
- 팀명: Health Eat 5팀
맡은 역할과 수행한 작업
<aside>
학습 데이터의 JSON 이상치를 디버깅하여 전처리 파이프라인을 개선하고, 팀원들의 추론 파라미터 최적화를 주도했습니다.
-
Train 데이터 라벨링 불일치(앞/뒷면) 오류 발견 및 질의 : Train 데이터셋의 JSON 파일을 검증하던 중, drug_dir 정보가 '앞면'으로 되어 있으나 실제 이미지는 뒷면 각인이 보이는 뒷면 이미지인 불일치를 발견했습니다. 전체 데이터의 약 1/4가량이 이러한 오류를 안고 있음을 확인했습니다. 앞면 단일 이미지를 추가 데이터로 사용하고 있는 저희 팀에겐 치명적인 오류였기에 이에 대해 강사님께 질의하여 다시 한번 검증을 받고 추후 방향성을 모색했습니다.
-
Train 이상치 데이터 전면 수정 (PR #27) : 메타데이터 불일치 외에도 AI Hub 원본 조합 이미지 자체에 JSON 또는 BBox 좌표가 완전히 누락된 이상치 찾아내어 학습에서 제외하는 로직을 주말동안 작업을 완료해 추가했습니다. 또한, 유독 지표가 낮았던 특정 약제(K-012247)의 전체 BBox 좌표를 재배치했습니다.
https://github.com/Daybreak53/HealthEat-Pill-Detection/pull/27
-
추론 파라미터 최적화 (PR #28) : 여러 알약이 겹쳐 있을 때 모델이 정확히 객체를 분리하도록 추론 코드에 agnostic_nms(클래스 무관 비최대 억제)와 max_det=4 파라미터를 추가 적용하여 정밀도를 향상시켰습니다.
https://github.com/Daybreak53/HealthEat-Pill-Detection/pull/28
</aside>
오늘 작업 완료도 체크
🟢 100% (완료 및 점검까지 완료)
<aside>
학습 데이터의 BBox 이상치 제거 및 추론 파라미터 최적화를 마쳤으며, 프로젝트의 핵심 변수인 'Test셋 미학습 클래스'를 식별해 이를 보완할 최종 데이터셋 업로드까지 하루 안에 마무리했습니다.
</aside>
오늘 협업 중 제안하거나 피드백한 내용
<aside>
- Train 데이터 오류 대처 방안 투표 및 논의 주도 : 제가 발견한 1/4가량의 앞/뒷면 라벨 오류 현상에 대해 강사님께 질의한 결과 "이 또한 프로젝트의 일부이나 하나하나 바꾸기엔 시간이 없으니 다른 방법을 찾아라"는 피드백을 받았습니다. 이를 바탕으로 팀원들에게 4가지 대안을 제시하고 투표를 주도했으며, 최종적으로 '직접 눈으로 확인해 문제가 있는 약제를 리스트업'을 채택하여 제가 정제를 책임지기로 했습니다. 다행히 모든 약제가 거의 눈에 익어있던 상태라 선별 자체는 한시간 이내에 모두 끝냈습니다.
- 고급 데이터 증강 제안 : 모델 성능 정체기를 돌파하기 위해 Ultralytics 공식 문서를 참고하여 CLAHE(명암비 개선) 및 Random Erasing 증강 기법을 팀원들에게 제안하고
config.yaml에 반영하도록 가이드했습니다.
- 앙상블(WBF) BBox 자료형 가이드 : 팀원들이 앙상블을 위해 CSV를 추출할 때, BBox 좌표를 정수형(int)으로 변환하면 정밀도가 떨어지므로 실수형(float)을 유지한 채로 WBF 후처리를 진행한 뒤 마지막에 처리하도록 기술적 피드백을 제공했습니다.
</aside>
오늘 분석/실험 중 얻은 인사이트나 발견한 문제점
<aside>
- 메타데이터(JSON)의 함정 : 단일 이미지를 필터링할 때 JSON의 '앞면' 정보만 믿고 추출했으나, 실제로는 앞/뒷면 라벨링이 바뀐 데이터가 30%가량 존재한다는 사실을 발견했습니다. 이를 통해 제공된 데이터의 메타데이터를 맹신하지 않고 육안으로 Raw Data를 크로스체크하는 과정이 딥러닝 프로젝트에서 얼마나 중요한지 깨달았습니다.
- Test 데이터셋의 미학습 클래스 : 상기 이슈 파악을 위해 Test 데이터도 뜯어보다가 Train 셋에 없는 새로운 약제를 발견했습니다. 이에 의문을 가지고 데일리 브리핑 시간에 강사님께 질의하였습니다. Test셋에만 존재하는 약제도 평가 대상임을 알게 되었고, 이에 대응하기 위해 추가 데이터를 확보하는 계획을 수립했습니다.
</aside>
일정 지연이나 협업 중 어려웠던 점
<aside>
- 희정님이 Inpainting 기법을 시도했으나, 식별 글자가 알약 색상으로 덮어씌워져 오히려 특성이 사라지는 문제(Gray scale 이슈 등)가 발생해 해당 기법은 보류하기로 결정했습니다.
- 데이터셋의 1/4가 오류라는 사실을 뒤늦게 발견하여 기존에 학습했던 모델들의 신뢰도에 의문이 생겼고, 또다시 대용량의 데이터셋을 클라우드 서버를 동원해 다운받아 이를 다시 정제하여 새 데이터셋을 구축하는 데 시간이 다소 지연되었습니다. 그럼에도 이전에 경험해보았고 자동화도 많이 해두었기에, 추가 데이터 확보 및 캐글 데이터셋 갱신까지 4시간 안에 모두 끝냈습니다.
</aside>