Files
fumen-measure-analyze/.gemini/checkpoint-20260423.md
2026-04-24 03:39:25 +09:00

1.6 KiB

fumen-analyze 진행 리포트 (2026-04-23)

1. 현재 성능 및 상태

  • 최종 MAE: 0.1731 (전체 데이터셋 기준)
  • 사용 모델: sklearn.ensemble.GradientBoostingRegressor
  • 학습 전략:
    • warm_start=True를 활용하여 기존 모델을 파괴하지 않고 업데이트.
    • 실행 시마다 랜덤하게 200개의 코스를 샘플링하여 학습 (다양성 확보).
    • 총 2,130개의 Estimator(트리)가 누적됨.

2. 피처 엔지니어링 (30개 지표)

  • 물리적 밀도: Global NPS, Effective NPS(쉼표 제외), 구간별(Q1~Q4) NPS, Peak NPS(1s, 2s, 5s), Spike Index.
  • 체력 및 지구력: 최대/평균 스트림 길이, 스트림 개수 및 비율, 휴식 구간(Resting) 비율.
  • 기술적 복잡도: Don/Ka 비율, 색상 전환율, 3노트 단위 패턴 복잡도, 손 배치 전환 지수(Hand-switching).
  • 리듬 및 기믹: 엇박 비율(Denominator 분석), 리듬 표준편차, SV/BPM 변화 빈도 및 변동성.

3. 파일 구조

  • src/factorize.ts: TJA에서 30개 피처 추출 (BigInt 및 타입 체크 완비).
  • model/train.py: 점진적 학습 및 K-Fold 교차 검증 지원.
  • run_pipeline.sh: 데이터 추출 + 누적 학습 통합 스크립트.
  • run_predict.sh: 개별 TJA 상수 예측용 스크립트.

4. 향후 개선 아이디어

  • 데이터 증강: 비슷한 채보를 미세하게 변형하여 학습 데이터 확보.
  • 패턴 정밀 분석: '기차(Stream)' 내의 특정 반복 패턴(ddk, dkk 등) 가중치 부여.
  • 오차 분석: 에러가 큰 특정 곡들을 따로 추출하여 어떤 피처가 부족한지 분석.