Skip to content

A3BO2/santa_classifier

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

santa_classifier

🧠 프로젝트 개요

산타와 일반 인물이미지를 활용하여 전이학습의 여부에 따른 학습결과를 비교합니다. 본 프로젝트는 커스텀 VGG19 네트워크를 활용한 2-Class 이미지 분류 모델을 구현하고 학습하는 실험입니다. 모델은 PyTorch 기반으로 작성되었으며, 학습 및 검증 데이터셋을 통해 성능을 평가합니다.

📚 사용 기술

Python PyTorch torchvision CUDA (GPU) Matplotlib

🏗 모델 구조

모델은 기본적인 VGG19 구조를 따르며, 마지막 Fully Connected Layer를 2-Class 분류를 위해 수정하였습니다.

🏋 학습 방식

학습 함수는 다음 특징을 가집니다.

Optimizer 선택 가능 (SGD / Adam / RAdam)

Train / Validation Loss 기록

Validation Accuracy 측정

Epoch별 경과시간 출력

📉 관찰된 문제

학습을 진행하는 과정에서 다음과 같은 현상이 반복적으로 관찰되었습니다.

Validation Accuracy가 약 0.5 수준에서 벗어나지 않음

Epoch 수를 늘려도 성능이 상승하지 않음

Loss 감소는 일부 관찰되나 Accuracy 상승과 일관되지 않음

추론 시 두 클래스의 예측 분포가 한쪽에 치우칠 가능성 존재

🔍 원인에 대한 추론

아래는 위와 같은 학습 결과가 발생한 원인에 대해 모델 관점 / 데이터 관점 / 학습 관점에서 분석한 추론입니다.

1️⃣ 모델 입력 분포와 학습 정책의 불일치 가능성

모델은 비교적 깊은 구조(VGG19)를 갖고 있으며, 입력 이미지가 특정한 통계적 분포(채널 평균/표준편차) 위에서 학습되었거나 그에 가까운 분포를 가정하는 경우가 많습니다.

하지만 실제 입력 데이터는

정규화 방식이 다르거나

색/밝기 변환이 강하게 적용되었거나

학습과 검증에서 서로 다른 변환이 적용되었을 가능성

이 존재하며,

이는 모델이 학습 데이터의 특징을 안정적으로 추출하기 어려운 환경을 만들었을 가능성을 의미합니다.

그 결과

Feature space의 분류 경계가 명확히 형성되지 못하고

Softmax 출력이 두 클래스 사이에서 크게 구분되지 않으며

Accuracy가 랜덤 추정에 가까운 값(0.5)에 수렴했을 가능성이 큽니다.

2️⃣ 클래스 예측 편향(Class Imbalance-like Behavior) 발생 가능성

모델이 학습 과정에서 특정 클래스만 반복적으로 예측하는 경향을 보였다면 다음과 같은 상황이 발생할 수 있습니다.

출력 logits의 초기값이 한쪽 클래스 방향으로 치우쳐 있음

Loss 감소는 일어나지만 decision boundary가 이동하지 않음

데이터셋이 균형적인 경우에도 정확도는 약 50% 유지됨

이는 특히

학습 초반 gradient 업데이트가 불충분하거나

Learning rate와 Weight 초기화 조합이 모델의 early-stage 분류 경계 형성을 방해할 때

자주 관찰되는 현상입니다.

3️⃣ Feature Extractor 난이도에 비해 데이터 규모가 제한적일 가능성

VGG19는

매우 깊고

파라미터 수가 많으며

처음부터 학습시키기 어려운 모델 구조입니다.

만약 데이터셋이 비교적 적거나 다양성이 제한적인 경우,

모델이 충분한 표현 학습을 진행하지 못하고

표현 학습이 되지 않은 상태에서 classifier가 분류를 시도하게 되며

결과적으로 일반화 능력이 매우 낮아집니다.

이 경우 Validation Accuracy가 일정 수준에서 정체될 가능성이 큽니다.

4️⃣ 학습 루프와 Optimizer 설정 영향 가능성

Optimizer / Learning rate 등 학습 정책은

Gradient의 크기

Parameter 업데이트 속도

Loss surface 탐색 경로

에 큰 영향을 줍니다.

SGD를 사용할 경우

초기 단계에서 gradient가 충분히 누적되지 않으면

경계 이동이 매우 느려지며

local plateau 상태에서 머물 수 있습니다

이때 Validation Accuracy 역시 랜덤 추정값 근처에 정체될 수 있습니다.

📌 종합 결론

위 요소들이 복합적으로 작용하여,

모델이 두 클래스를 명확히 구분할 만큼의 안정적인 Feature Representation을 형성하지 못하고, 출력 확률이 특정 클래스 또는 균형 상태 근처에서 수렴하며 Validation Accuracy는 약 0.5 수준에 고착되었을 가능성이 높습니다.

About

산타와 일반 인물이미지를 활용하여 전이학습의 여부에 따른 학습결과를 비교합니다.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors