딥러닝

Future·2024년 6월 12일
0

인공지능

목록 보기
4/4

MLP(Multi Layer Perceptron)

단일 퍼셉트론은 XOR 문제와 같은 비선형 문제를 해결할 수 없다. 이를 해결하기 위해 MLP가 등장했고, 은닉층과 비선형 활성화 함수를 사용하여 이러한 문제를 해결하여 딥러닝에 사용된다.

Perceptron Learning

주어진 데이터를 이용해 Perceptron의 가중치를 학습하는 과정. Perceptron은 가중치와 바이어스를 통해 출력을 계산하는 단순 선형 classifier이다.
딥러닝에서는 Perceptron을 여러개 겹쳐 사용한다.

Activation function

Activation helps determine whether neurons need to be activated or not
(뉴런을 활성화할지 결정)

Activation function의 필요성

  • 뉴런 출력값이 -∞부터 ∞라면 어떤 신호가 다음 뉴런으로 전달되어야 할 지 결정하기 어렵다.
  • 데이터를 비선형(non-linear)로 변환하여 네트워크를 심화시킨다.
  • 선형 시스템은 네트워크가 깊어지더라도 단일 히든 레이어로 구현 가능하다.

딥러닝의 오버피팅을 해결하기 위한 방법들

  • Regularization
  • Batch normalization
  • Dropout

Regularization

모델 복잡성(model complexity)을 패널티로써 추가한다.

Batch normalization

미니배치(데이터셋을 여러 작은 부분으로 나누어 처리하는 기법)에 대해 입력 데이터의 분포를 정규화한다.

Dropout

임의의 확률로 노드를 선택하고 선택한 노드의 연결을 끊어준다.

딥러닝 성능을 위해 필요한 것

  • 하이퍼파라미터 수가 적절해야 한다.
  • computation power 가 좋아야 한다.

CNN

Convolution

행렬에서 요소들을 곱하고 모든 결과를 더하는 선형 연산

padding

입력 이미지의 가장자리(edge) 부분을 처리할 때 데이터가 손실되는 문제를 해결한다.

weight sharing

모든 노드가 같은 커널(가중치 행렬)을 사용하여 모델의 파라미터 수가 줄어 복잡도가 낮아진다.

Down-sampling by stride

Stride는 커널이 입력 이미지 위를 이동할 때 한번에 이동하는 픽셀 수이다. stride가 클 수록 출력 크기 맵이 작아진다.

Pooling

CNN에서 입력 데이터에 대한 출력 크기를 줄이고, 계산량을 감소시켜 모델의 성능을 향상시키는 데 사용된다. Max pooling, average pooling이 있다.
효과

  • Reduce parameters, reduce network expression and suppress overfitting
  • Reduced computation saves hardware resources and speeds up

시계열 데이터

time-series data 특징

  • The order of the elements is important
  • Sample length is different
  • Context dependence
  • Seasonality
profile
Record What I Learned

0개의 댓글