Sonbolog
👨‍💻 Sonbolog
📚 Project & TIL
⚙️ Tech
🖼️ Blog
🎵 Music
Home
🏠 HOME
👨‍💻 Sonbolog
📚 Project & TIL
⚙️ Tech
🖼️ Blog
🎵 Music
Subscribe
Sign In

[EST soft]비정형프로젝트 #나만의 VIBE코드

상태
Project [EST soft]
담당자
  • Jaenoo
작성자
  • Jaenoo

Data & Code :

GitHub - Sonbori/emotivibe
Contribute to Sonbori/emotivibe development by creating an account on GitHub.
github.com

1. 프로젝트 개요

목표
•
사진 한 장으로 사용자의 감정을 자동 분류하고, 감정 흐름 시각화까지 제공하는 AI 서비스
•
감정 기록의 번거로움과 주관성을 보완
•
심리학 기반의 **3차원 감정모델(PAD)**을 적용하여 결과를 직관적이고 재미있게 해석
배경
•
기존 감정 기록 도구는 사용자가 직접 텍스트로 작성 → 주관적이고 번거로움
•
감정은 자기이해와 정신건강 관리의 핵심이지만 기록률이 낮음
•
이미지 기반 감정 인식 기술 발전 → 자동화된 감정 분석 가능
💡 한 줄 요약
EfficientNet-B0 + CBAM을 활용해 사진 속 사용자의 감정을 4클래스로 분류하고, PAD 심리 모델을 통해 직관적인 VIBE 코드로 시각화한 실시간 웹 서비스

2. 데이터셋 & EDA

Data

데이터 구조

•
학습(train), 검증(val), 테스트(test) 폴더 분리
•
각 폴더에 img/, label/, segmentation/ 구조
•
클래스: Anger, Happy, Panic, Sadness
•
데이터 수량: Train 약 1500장, Val 300장, Test 300장

데이터 분석

•
라벨 .json에 이미지 파일명, 성별, 나이, 업로더 감정, annotator 3명의 판단 결과, 얼굴 Bbox 좌표 포함
•
성별·연령 분포 균형 양호
•
Bbox 위치 분포 고르게 분포 → 모델 학습 적합

3. 모델링

Modelling

후보 모델

1.
EfficientNet-B0 → 정확도 높고 추론 속도 우수, 전이학습 효과 큼
2.
ResNet50 → 깊은 구조, 과적합 방지 효과
3.
MobileNet-V3 → 가벼운 모델, 실시간 추론 적합
4.
ViT (Vision Transformer) → 전역적 특징 학습 강점

실험 결과

•
최종 선택: EfficientNet-B0 + CBAM
•
성능 향상 기법:
◦
OneCycleLR + Label Smoothing
◦
MixUp / CutMix 교차 적용
◦
클래스 불균형 완화: Weighted Sampler
◦
CBAM(Channel & Spatial Attention) → 얼굴의 세밀한 특징 강조

성능 지표

•
Train/Val Loss 안정적으로 감소 → 과적합 없음
•
F1-score 일정하게 유지 → 일반화 성능 확보
•
Grad-CAM 시각화로 얼굴 주요 부위에 집중하는 Attention 확인

4. 웹 서비스 통합

Web
Code 구현 등

아키텍처

•
Front-end: HTML, CSS, JavaScript
•
Back-end: Flask REST API
•
AI Model: EfficientNet-B0 + CBAM

기능

•
이미지 업로드 → 감정 분류(Anger, Happy, Panic, Sadness)
•
PAD 모델 기반 감정 수치 산출
•
Pleasure(쾌락), Arousal(각성), Dominance(지배)
•
NRC VAD Lexicon 활용 (과학적 신뢰도 Valence 0.99, Arousal 0.98, Dominance 0.96)
PAD? VIBE CODE?
•
VIBE 코드 생성: MBTI처럼 직관적·재미있게 감정을 유형화
◦
예: P(+), A(+), D(+) = 긍정·활성·통제

5. 문제 해결 전략

문제
해결 방법
효과
클래스 불균형
Weighted Sampler + MixUp/CutMix
특정 클래스 쏠림 완화
배경·표정 다양성
ColorJitter, RandomResizedCrop, HorizontalFlip
데이터 다양성 확보
세밀한 감정 구분
CBAM 적용
얼굴 핵심 부위 집중, 성능 향상
사용자 결과 이해도 낮음
PAD → VIBE 코드 변환
심리학 기반, 직관적 시각화

6. 결과

•
F1-score: 기존 CNN 대비 10%↑
•
실시간 추론 속도 확보 → 웹 서비스 적용 가능
•
감정 인식 결과를 MBTI형 VIBE 코드로 제공해 재미·공감성 향상
참고문헌
The neural correlates of the dominance dimension of emotion
Emotion has been conceptualized as a dimensional construct, while the number of dimensions – two or three – has been debated. Research has consistentl…
sciencedirect.com
2014_CurrentPsychology_Bakker-etal_MehrabianRusselRevisited.pdf
PAD emotional state model - Wikipedia
en.wikipedia.org
Made with Slashpage