운영이 규칙 분류기로 돌고 있어서 평범한 일기의 절반이 「여러 마음」으로 떨어진다.
지금 상태
QA용 일기 16편을 넣고 AI_MODE=rules로 분석시킨 결과다.
| 읽힌 마음 |
건수 |
| uncertain(여러 마음) |
8 |
| 기쁨 |
3 |
| 분노 |
2 |
| 당황 |
2 |
| 불안 |
1 |
| 슬픔 |
0 |
「카페에서 읽던 책을 다 읽었다. 마지막 장을 덮고 한참 앉아 있었다」 같은 문장이 전부 uncertain으로 간다. 그 결과 식물의 emotion_profile에서 mixed가 50%를 먹고 성장 결이 모아결로 쏠린다.
원인
server/app/ai/classifier.py의 RulesClassifier는 의도적으로 보수적이다. 근거가 약하면 사용자의 마음을 넘겨짚지 않고 UNCERTAIN을 낸다(_MIN_EVIDENCE, classifier_abstain_threshold). 설계로서는 옳다.
문제는 그 자리를 메울 파인튜닝 모델이 배포돼 있지 않다는 것이다.
- 학습 파이프라인은 있다 —
ai/emotion_classifier/ (prepare_data.py, train.py, evaluate.py, DATA_CARD.md).
- 그런데
.env.production.example이 AI_MODE=rules이고 CLASSIFIER_MODEL_DIR는 비어 있다.
models/manifest.yaml에 감정 분류기 항목의 revision·sha256이 아직 null이다.
해야 할 일
ai/emotion_classifier로 모델을 학습하고 evaluate.py로 지표를 남긴다.
models/manifest.yaml에 revision·sha256을 기록한다(손으로 적지 않고 설치 스크립트가 기록).
CLASSIFIER_MODEL_DIR를 채우고 운영 AI_MODE를 local로 올린다.
analysis_model_version을 함께 올린다. 기존 결과를 덮어쓰지 않는다.
완료 기준
- 같은 일기 16편에서 uncertain 비율이 눈에 띄게 내려간다.
- 어느 마음도 좋고 나쁨으로 채점하지 않는다는 원칙은 그대로다 — 정확도를 올리려고 abstain을 없애는 방향이면 안 된다.
운영이 규칙 분류기로 돌고 있어서 평범한 일기의 절반이 「여러 마음」으로 떨어진다.
지금 상태
QA용 일기 16편을 넣고
AI_MODE=rules로 분석시킨 결과다.「카페에서 읽던 책을 다 읽었다. 마지막 장을 덮고 한참 앉아 있었다」 같은 문장이 전부 uncertain으로 간다. 그 결과 식물의
emotion_profile에서 mixed가 50%를 먹고 성장 결이 모아결로 쏠린다.원인
server/app/ai/classifier.py의RulesClassifier는 의도적으로 보수적이다. 근거가 약하면 사용자의 마음을 넘겨짚지 않고UNCERTAIN을 낸다(_MIN_EVIDENCE,classifier_abstain_threshold). 설계로서는 옳다.문제는 그 자리를 메울 파인튜닝 모델이 배포돼 있지 않다는 것이다.
ai/emotion_classifier/(prepare_data.py,train.py,evaluate.py,DATA_CARD.md)..env.production.example이AI_MODE=rules이고CLASSIFIER_MODEL_DIR는 비어 있다.models/manifest.yaml에 감정 분류기 항목의 revision·sha256이 아직 null이다.해야 할 일
ai/emotion_classifier로 모델을 학습하고evaluate.py로 지표를 남긴다.models/manifest.yaml에 revision·sha256을 기록한다(손으로 적지 않고 설치 스크립트가 기록).CLASSIFIER_MODEL_DIR를 채우고 운영AI_MODE를local로 올린다.analysis_model_version을 함께 올린다. 기존 결과를 덮어쓰지 않는다.완료 기준