This commit is contained in:
2026-04-25 15:50:38 +09:00
parent da4201fb20
commit df82515a33
37 changed files with 162982 additions and 393 deletions

View File

@@ -1,21 +1,20 @@
# fumen-analyze 최종 진행 리포트 (Final)
# fumen-analyze 프로젝트 상태 보고 (Current)
## 1. 모델 성능 요약
- **최종 MAE**: **0.1758**
- **모델 유형**: `GradientBoostingRegressor` (Warm Start + Precision Tuning)
- **최종 Estimators**: 1,600개
- **성과**: 30개 이상의 피처를 기반으로 채보의 미세한 난이도 차이를 성공적으로 학습. 이상치(에러 > 1.0)를 배제한 정밀 튜닝으로 안정성 확보.
## 1. 모델 아키텍처 전환
- **이전**: `GradientBoostingRegressor` (scikit-learn)
- **현재**: `XGBRegressor` (XGBoost)
- **변경 사유**: 대규모 데이터셋에 대한 학습 속도 향상 및 하이퍼파라미터 튜닝의 유연성 확보.
## 2. 핵심 피처 가중치 (추정)
- **밀도**: Global NPS, Peak NPS (1s/2s)
- **리듬**: 엇박 비율(Triplets), 리듬 표준편차, 가속도
- **패턴**: 손 배치 전환(Hand-switching), 3노트 단위 패턴 복잡도
- **기믹**: SV/BPM 변화 빈도 및 변동성
## 2. 성능 지표 (목표치)
- **목표 MAE**: **0.15 이하** (현재 약 0.17~0.18 추정)
- **허용 오차 범위**: ±0.1 (상수 단위 기준)
- **성과**: 리듬 복잡도 및 순간 밀도 피처를 도입하여 10성급 고난이도 채보 간의 미세한 서열(상수 11.0~12.0)을 유의미하게 구분 중.
## 3. 사용 안내
- **학습 업데이트**: `./run_pipeline.sh` (현재 정밀 튜닝 모드 설정됨)
- **상수 예측**: `./run_predict.sh <TJA_Path> [diff]`
- **문서 참조**: `GUIDE.md`
## 3. 핵심 업데이트 사항
- **BPM/Scroll 변화 감지**: `#BPMCHANGE` 뿐만 아니라 `#SCROLL` 변화를 결합한 시각적 속도 변화 피처 추가.
- **색상 복잡도 가중치**: 노트 간 간격이 좁을수록 더 높은 난이도 가중치를 부여하는 $1/\Delta t^2$ 로직 적용.
- **지속 학습 지원**: `CONTINUE_TRAINING` 옵션을 통해 기존 모델에 추가 데이터를 점진적으로 학습 가능.
## 4. 최종 결론
현재 모델은 10성급 고난이도 곡들 사이의 미세한 '상수' 서열을 0.1~0.2 오차 범위 내에서 예측할 수 있는 수준에 도달했습니다. 추가 데이터 확보 시 0.1 미만으로의 진입이 충분히 가능합니다.
## 4. 향후 과제
- `rhythm_complexity` 로직의 정교화 (비정형 박자 감지 강화).
- `measure.csv` 데이터셋 확충을 통한 과적합 방지 및 일반화 성능 향상.