728x90
반응형
1. Gradient와 Jacobian의 차이
항목 | Gradient | Jacobian |
정의 | 스칼라 함수의 편미분 벡터 | 벡터 함수의 편미분 행렬 |
형태 | 1차원 벡터 | 2차원 행렬 |
사용 | DNN의 파라미터 업데이트 | 다층 신경망, 출력 다중인 경우 |
즉, Gradient는 기울기, Jacobian은 벡터 기울기의 집합
2. Forward & Backward Propagation
Forward Propagation (순전파)
: 입력 → 가중치합 → 활성화함수 → 출력
Backward Propagation (역전파)
: 출력 오류 → 기울기 계산 → 가중치 업데이트
핵심 공식 (오차 역전파):
3. 경사하강법 종류 (BGD vs MBGD vs SGD)
방식 | 설명 | 단점 |
BGD (Batch) | 전체 데이터로 한 번 업데이트 | 정확하나 느림 |
SGD (Stochastic) | 1개 샘플로 즉시 업데이트 | 빠르지만 진동 큼 |
MBGD (Mini-batch) | 일부 묶음(batch) 단위 | 속도와 정확도 균형 탁월 |
4. 평가 지표 (Classification)
기호 전체 이름의 예시 (스팸 메일 분류기 기준)
TP | True Positive | 실제로 Positive이고, 예측도 Positive | 스팸 메일을 정확히 스팸이라고 예측함 |
FP | False Positive | 실제로는 Negative인데, 예측은 Positive | 일반 메일을 잘못 스팸이라고 예측함 (오탐) |
FN | False Negative | 실제로는 Positive인데, 예측은 Negative | 스팸 메일을 놓치고 일반 메일이라고 예측함 |
TN | True Negative | 실제로 Negative이고, 예측도 Negative | 일반 메일을 정확히 일반이라고 예측함 |
5. Validation vs Test set
용도 | 설명 |
Validation Set | 학습 중 모델 튜닝용 |
Test Set | 학습 후 최종 성능 평가용 |
과적합 방지에는 Validation!
6. 대표 이미지 데이터셋
데이터 | SET 크기 | 클래스 | 특징 |
MNIST | 28×28 | 10 | 흑백 숫자 이미지 |
CIFAR-10/100 | 32×32 | 10/100 | 컬러, 사물 이미지 |
ImageNet | 다양한 크기 | 1000+ | 대규모, 실생활 객체 |
7. Multimodal Deep Learning (멀티모델 딥러닝)
여러 종류의 데이터를 함께 학습 (예: 이미지 + 텍스트)
예시:
- VQA (Visual Question Answering): 이미지 + 질문 → 답 생성
- COCO Dataset: 이미지 + 캡션
- CLIP, Flamingo: 텍스트와 이미지를 동시에 이해
8. CNN 입력 형태 정리
입력 이미지: 2차원 행렬 + 채널 → (Width × Height × Channel)
예: 28×28 (흑백), 32×32×3 (컬러)
CNN 학습 흐름:
Convolution → ReLU → Pooling → Flatten → FC Layer → Softmax
✅ CNN 처리 단계 설명
단계이름설명
1️⃣ Convolution | 합성곱 연산 | 이미지의 **특징(모서리, 색상 변화 등)**을 추출하는 단계 작은 필터(커널)가 이미지를 스캔하며 새로운 Feature map을 만듬 |
2️⃣ ReLU | 활성화 함수 (비선형성 부여) | Convolution 결과에 비선형성 추가 → 음수는 0으로, 양수는 그대로: f(x)=max(0,x)f(x) = \max(0, x) → 신경망이 더 복잡한 패턴을 학습 가능하게 함 |
3️⃣ Pooling | 서브샘플링 | 특징 맵의 크기를 줄이는 단계 (예: 2×2에서 가장 큰 값만 뽑음 = Max Pooling) → 연산량 감소, 과적합 방지, 위치 변화에 강한 모델 생성 |
4️⃣ Flatten | 평탄화 | 2차원 Feature map을 1차원 벡터로 변환 → Fully Connected Layer에 입력하기 위한 준비 작업 |
5️⃣ FC Layer | 완전 연결 계층 | Flatten된 벡터를 받아서 분류 작업을 수행 → 이미지 속 고차원적인 의미를 파악해 최종 분류함 |
6️⃣ Softmax | 확률 출력 함수 | 분류 문제에서 사용되는 출력층 활성화 함수 → 각 클래스에 속할 확률로 변환, 총합은 1이 됨 예: [0.1, 0.8, 0.1] = 두 번째 클래스일 확률이 가장 높음 |
📌 예시: 고양이 vs 개 분류기
- Convolution → 고양이 귀 같은 형태 특징을 감지
- ReLU → 중요한 특징만 남김
- Pooling → 크기 축소, 위치 변화 무시
- Flatten → 2D를 1D로 변환
- FC Layer → “이건 고양이 같다”고 판단
- Softmax → "고양이일 확률 90%, 개인 확률 10%"
728x90
반응형
'딥러닝' 카테고리의 다른 글
[딥러닝] CNN 구조를 한눈에! (1) | 2025.04.20 |
---|---|
[딥러닝] DNN 학습의 원리와 최적화 전략 (0) | 2025.04.20 |
[딥러닝] DNN 설계에 관한 핵심 내용들 (0) | 2025.04.14 |
[딥러닝] DNN(Deep Neural Network)의 구조와 특징 (0) | 2025.04.13 |
[딥러닝] 딥러닝과 빅데이터 개념 (0) | 2025.04.13 |