먼저 Json과 frame 사진을 적용하고 모델훈련시켰을 때 결과가 어떻게 나오는지 확인부터 하는데 좋지않을까
모델링 진행단계
- ResNet50을 사용해 각 프레임의 이미지를 특징 벡터로 변환한다. 이때 "앉기" 행동에 맞는 관절 위치와 바운딩 박스 정보를 학습 데이터로 사용하여 행동을 예측하는 모델을 만든다.
- 프레임마다 OpenCV를 이용해 주요 관절의 위치(키포인트)를 추출하고, 이를 ResNet50을 통해 학습에 필요한 특징으로 변환
1차결과
JSON 파일에서 키포인트 데이터 추출하여 강아지의 앉는 동작을 나타내는 JSON 파일에서 키포인트(좌표) 정보를 읽어오고, 각 JSON 키포인트 데이터에 해당하는 프레임(이미지)와 짝지어준 다음, 매칭된 이미지와 키포인트 데이터를 사용하여 ResNet50 기반 모델을 학습시킨 결과


Train MSE 는 지속적으로 감소하고 있어 모델이 점차 데이터를 잘 학습하고 있다고 볼 수 있다.
Validation MSE도 초기에는 감소하고 있지만 거의 변하지 않는 모습
쉽게 말하면 선이 내려 갈 수록 잘 학습하고 있다는 뜻, 모델은 학습을 잘 하는 것처럼 보이지만, 검증 데이터는 성능이 향상되지 않는 모습이 보여서 과적합 징후로 볼 수 있음
이미지로 훈련시켰을때는 훈련 데이터와 검증 데이터의 정확도가 어떻게 변하는지 그래프로 나타냈지만, 키포인트 예측(회귀 문제)은 분류 문제와는 달리 좌표(숫자)를 예측하는 문제이므로, MSE와 MAE를 통해서 모델의 예측 성능을 평가하는 것이 더 적합!
MSE(Mean Squared Error, 평균제곱오차)
- MSE는 예측 값과 실제 값의 차이를 제곱하여 평균을 구한 값으로, 오류가 클수록 더 큰 값이 나오기 때문에 큰 오류에 민감하게 반응
- 강아지가 '앉아' 행동을 할때, 모델이 예측한 키포인트(관절 위치)와 실제 키포인트 위치 간의 차이를 측정할 때 MSE를 사용 / 모델이 위치를 잘못 예측하면 MSE 값이 커져서 모델 성능이 낮음을 의미
MAE(Mean Absolute Error, 평균절대오차)
- MAE는 예측 값과 실체 값의 차이의 절대값을 평균한 값
- 강아지가 동작을 할 때 예측한 관절 위치와 실제 위치 간의 평균 절대 오차를 계산하는 데 MAE를 사용하면, 모델이 얼마나 일관되게 예측하고 있는지 확인할 수 있다. / MAE 값이 낮을수록 모델이 실제 위치에 가깝게 예측
'팀프로젝트 - TailsRoute' 카테고리의 다른 글
TEAM Project (11.09) - dog_behavior 모델 (2, 3차 결과) (0) | 2024.11.12 |
---|---|
TEAM Project (11.04) - 메인 프론트 작업 (스크롤 시 섹션 하나씩 이동) (3) | 2024.11.10 |
TEAM Project (11.04) - dog 행동 데이터셋 다운, 확인, Google Colab 활용 (9) | 2024.11.06 |
TEAM Project (11.02) - 디자인 작업 (0) | 2024.11.02 |
TEAM Project (10.26) - 정확도 그래프 ( 이미지 분석 완료 ) (0) | 2024.10.26 |