[Candy] — [ Halloween Candy 승률 예측 ]

"85×13 소규모 이진 데이터에서 딥러닝·선형회귀 커스텀 학습 루프를 직접 설계하고, 모델 성능 비교를 통해 최적 방식을 선택한 데이터 분석 프로젝트"


1) 목표

데이터 특이사항


2) 분석 과정

분석은 두 단계로 구성했습니다.

1차 분석에서는 딥러닝 방식으로 커스텀 학습 루프를 직접 설계해 승률 예측을 시도했고, 결과를 보고 딥러닝이 이 데이터에 적합하지 않다고 판단해 2차 분석에서 선형회귀(머신러닝) 방식으로 전환했습니다.



3) 주요 판단 포인트

딥러닝 → 머신러닝 전환 근거

데이터 규모(85건)와 이진 변수 비중을 고려했을 때, 딥러닝 모델은 학습할 패턴이 충분하지 않아 loss가 수렴점 이하로 내려가지 않는 한계가 명확했습니다. 파라미터 수가 많을수록 오히려 과적합 위험이 커지는 데이터였기 때문에, 단순한 선형 관계를 전제로 하는 선형회귀가 더 적합하다고 판단했습니다.

커스텀 학습 루프 직접 구현 이유

라이브러리 API 호출로 학습을 완성하는 것보다, 가중치 초기화 → 순전파 → 손실 계산 → 역전파 → 가중치 업데이트의 전 과정을 직접 코드로 구현함으로써 알고리즘의 동작 원리를 이해하는 것을 목표로 했습니다.


4) 한계 및 후기

연관분석 미완성

2차 분석(승률 영향 변수 확인 및 연관규칙 탐색)까지 계획했으나, 이진 데이터 비중이 높아 일반적인 연관분석으로는 유의미한 결과 도출이 어렵다고 판단해 중단했습니다. 임베딩 기법 적용을 검토했으나 당시 구현까지는 이어지지 못했습니다.

과적합 미해결

데이터 수가 85건으로 절대적으로 부족해 train/valid loss 간 간격이 완전히 해소되지 않았습니다. 데이터 증강이나 정규화(L1/L2) 기법을 추가로 적용하면 개선될 여지가 있습니다.

모델 저장 및 프론트 연결 구상

학습된 가중치를 pickle로 저장(candy.pkl)해 이후 프론트엔드와 연결하는 파이프라인을 구상했으나 실제 구현까지는 이어지지 못했습니다.