[BoostCamp AI Tech / Day 6, DL basic] 뉴럴 네트워크 - MLP

newbie·2021년 8월 10일
0

Neural Networks

Neural Networks를 생각해보면 행렬과 비선형 연산이 반복적으로 구성되어 우리가 정의한 것을 출력해내는 함수 근사 모델

가장 간단한 Liear Neural Networks를 보면,

  • 2차원 데이터가 주어지고
  • y^=wx+b\hat{y} = wx+b인 모델이 있으며
  • 이루고자 하는 현상이 이뤄졌을 때 줄어들도록 loss를 정의

weight와 bias의 최적값을 바로 구하기 위해서는 특정 조건이 필요하여, 일반적으로 back propagation을 통해 loss function이 줄어드는 방향으로 학습을 시켜서 weight를 구한다.

2층 이상의 신경망을 구성할 경우

  • 단순히 이전층의 값에 다음 층의 weight값만 곱하게 되면, 결국 1층짜리 선형 신경망과 다를게 없다. 따라서 중간에 activation function을 통한 nonlinear transoform을 하여 feature vector를 얻고 이후 다시 선형 변환을 진행해야 한다.

loss function에 대해서

  • Regression Task, 일반적으로 MSE Loss
    • 단, 학습 데이터에 매우 큰 outlier가 있을 때 해당 데이터를 맞추려다가 신경망 자체가 망가지는 경우가 발생한다. 따라서 MSE가 항상 만족하는 것은 아니다.
  • Classification Task, CE(Cross Entropy)

    • y^\hat{y}에서 원하는 차원의 값의 출력을 높이고자 사용
  • Probabilistci Task, MLE

    • 단순 출력값보단 확률적 모델을 다룰 경우..
      - ex)사진을 통해 나이 분류 시, "OO세이다"가 아니라 OO세 일 확률이 몇퍼이다와 같이 uncertain 정보를 포함하고자 할 경우
profile
DL, NLP Engineer to be....

0개의 댓글

관련 채용 정보