5. 딥 러닝- 개요
2023. 11. 10. 18:35ㆍ인공지능
728x90
일반 신경망
- 소수의 은닉층을 가진다.(1~2개 정도)
- 특징 벡터(원시 데이터에서 직접 특징을 추출해서 만든 데이터)를 입력으로 사용
-> 특징 벡터들의 품질에 영향을 많이 받는다.
딥러닝 신경망
- 다수의 은닉층을 가진다.
- 특징 추출과 학습을 함께 수행한다.
즉, 데이터들 특징을 학습을 통해 추출한다.
-> 우수한 성능을 보인다.
기울기 소멸 문제
: 은닉층이 많은 다층 퍼셉트론에서, 출력층에서 입력층으로 갈수록
오류역전파 과정에서 사용되는 기울기(gradient)가 크게 줄어들어, 학습이 되지 않는 현상
-> 기울기가 거의 0에 가까워지면 오차가 없다고 판단해 학습이 되지 않는다.

기울기 소멸 문제 완화 방법
: 시그모이드나 쌍곡탄젠트 대신 ReLU(Rectified Linear Unit) 함수 사용

0보다 작은 값은 0, 0보다 큰값은 선형으로 하여
0보다 큰값은 곱해도 0이 되지 않아 기울기가 소멸되지 않는다.
ReLU 함수 근사
: 함수를 부분적인 평면 타일들로 근사하는 형태
-> 출력이 0 이상인 것들에 의해 선형변환하 계산

가중치 초기화
- 신경망의 성능에 큰 영향을 주는 요소
- 보통 가중치의 초기값으로 0에 가까운 무작위 값 사용
개선된 가중치 초기화 방법
: 각 노드의 입력노드 개수와 출력노드의 개수를 사용하는 방법

과적합 문제
과적합: 모델이 학습 데이터에 지나치게 맞추어진 상태
-> 과적합된 모델은 학습되지 않은 데이터에 대해 성능 저하
과적합 문제 완화 기법
1. 규제화(Regularization) 기법
- 오차함수를 오차항과 모델 복잡도항으로 정의
- 모델이 복잡해지면 과적합이 될 수 있으므로,
모델 복잡도를 penalty항으로 추가 - 절댓값이 큰 가중치에 penalty 부여

2. 드롭아웃 기법
- 일정 확률로 노드들을 무작위로 선택,
선택된 노드의 앞뒤로 연결된 가중치 연결선은 없는 것으로 간주하고 학습 - 미니배치나 학습주기마다 드롭아웃할 노드들을 새롭게 선택하여 학습
- 추론을 할 때는 드롭아웃을 하지 않고
전체 학습된 신경망을 사용하여 출력 계산

3. 미니 배치
- 전체 학습 데이터를 일정 크기로 나누어 놓은 것
- 학습 데이터가 큰 경우에는 미니배치 단위로 학습
경사하강법 적용 시 미니배치의 gradient
: 미니 배치에 속하는 각 데이터의 gradient의 평균을 사용
4. 배치 정규화(Batch normalization) 기법
- internal covariate shift 문제
: 신경망의 각층을 지날 때마다 입력 데이터의 분포가 변하는 현상
-> 학습 속도 저하 문제 발생 - 해결기법: 각 미니배치의 입력을 평균과 분산으로 정규화
-> 입력의 분포를 안정화, 층 간의 상호작용을 원활하게.
각 층마다 학습가능한 매개변수를 도입하여 층의 출력 범위를 조절하는 역할수행

728x90
'인공지능' 카테고리의 다른 글
| 딥러닝 프레임워크 : 텐서플로우 (0) | 2023.11.28 |
|---|---|
| 5. 딥러닝 - convolution 신경망 (1) | 2023.11.16 |
| 4. 기계 학습 - 신경망 (0) | 2023.11.10 |
| 4. 기계학습 - 학습 알고리즘 (0) | 2023.11.07 |
| 3. 지식 표현과 추론- 불확실한 지식 표현 (2) | 2023.10.17 |