5. 딥 러닝- 개요

2023. 11. 10. 18:35인공지능

728x90

일반 신경망

  •  소수의 은닉층을 가진다.(1~2개 정도)
  • 특징 벡터(원시 데이터에서 직접 특징을 추출해서 만든 데이터)를 입력으로 사용
    -> 특징 벡터들의 품질에 영향을 많이 받는다.

 

딥러닝 신경망

  • 다수의 은닉층을 가진다.
  • 특징 추출과 학습을 함께 수행한다.
    즉,  데이터들 특징을 학습을 통해 추출한다.
    -> 우수한 성능을 보인다.

 

기울기 소멸 문제

: 은닉층이 많은 다층 퍼셉트론에서, 출력층에서 입력층으로 갈수록

오류역전파 과정에서 사용되는 기울기(gradient)가 크게 줄어들어, 학습이 되지 않는 현상

-> 기울기가 거의 0에 가까워지면 오차가 없다고 판단해 학습이 되지 않는다.

 

 

기울기 소멸 문제 완화 방법

: 시그모이드나 쌍곡탄젠트 대신 ReLU(Rectified Linear Unit) 함수 사용

0보다 작은 값은 0, 0보다 큰값은 선형으로 하여
0보다 큰값은 곱해도 0이 되지 않아 기울기가 소멸되지 않는다.

 

 

ReLU 함수 근사

: 함수를 부분적인 평면 타일들로 근사하는 형태

-> 출력이 0 이상인 것들에 의해 선형변환하 계산

회색은 0이 아닌값, 흰색은 0

 

 

가중치 초기화

  • 신경망의 성능에 큰 영향을 주는 요소
  • 보통 가중치의 초기값으로 0에 가까운 무작위 값 사용

개선된 가중치 초기화 방법

: 각 노드의 입력노드 개수와 출력노드의 개수를 사용하는 방법

 

 

과적합 문제

과적합: 모델이 학습 데이터에 지나치게 맞추어진 상태

-> 과적합된 모델은 학습되지 않은 데이터에 대해 성능 저하

 

과적합 문제 완화 기법

 

1. 규제화(Regularization) 기법

  • 오차함수를 오차항과 모델 복잡도항으로 정의
  • 모델이 복잡해지면 과적합이 될 수 있으므로,
    모델 복잡도를 penalty항으로 추가
  • 절댓값이 큰 가중치에 penalty 부여

 

2. 드롭아웃 기법

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

 

3. 미니 배치

  • 전체 학습 데이터를 일정 크기로 나누어 놓은 것
  • 학습 데이터가 큰 경우에는 미니배치 단위로 학습

경사하강법 적용 시 미니배치의 gradient
: 미니 배치에 속하는 각 데이터의 gradient의 평균을 사용

 

4. 배치 정규화(Batch normalization) 기법

  • internal covariate shift 문제
    : 신경망의 각층을 지날 때마다 입력 데이터의 분포가 변하는 현상
    -> 학습 속도 저하 문제 발생
  • 해결기법: 각 미니배치의 입력을 평균과 분산으로 정규화
    -> 입력의 분포를 안정화, 층 간의 상호작용을 원활하게.
    각 층마다 학습가능한 매개변수를 도입하여 층의 출력 범위를 조절하는 역할수행

728x90