• Home
  • About
    • CHAN5 photo

      CHAN5

      HMM의 SW Programmer 입니다.

    • Learn More
    • Email
    • Facebook
    • Instagram
    • Github
  • Posts
    • All Posts
    • All Tags
  • Projects

머신러닝 관련

03 Apr 2021

Reading time ~1 minute

인공지능개론(5)

1. 다층 신경망의 학습 - 이진학습

( Multi-Layer Perceptron-binary classfication)


생성 배경 : 단층 신경망의 한계 (Limitation of Single-Layer Perceptron)

  • 단일 계층 구현 시 선형 및 이진분류로 XOR 를 구현할 수 없음
  • 다층으로 구현 시 구현 가능! ( 아래는 2개의 층으로 구현)
  • 더 많은 층을 늘릴 경우

다층 신경망의 구조 (Forward Pass)

  • Hidden layer 구성은 모델 구현하는 사람 마음대로 정할 수 있음
  • 층 구조, Weight 등 파라미터를 조정하여 모델 수정

다층 신경망의 수식(Forward Pas)

  • Input Layer : X1,X2
  • Hiddle Layer : Single Perceptorn의 Output 이 W가 됨.
  • Output Layer : Y
  • Python의 Numpy를 활용하여 행렬 계산으로 코드 구현
def NN(X,W1,W2,W3):
    v1 = np.matmul(W1, X.T)
    v1 = v1.T
    Y1 = Sigmoid(v1)
    
    v2 = np.matmul(W2, Y1.T)
    v2 = v2.T
    Y2 = Sigmoid(v2)
    
    v3 = np.matmul(W3, Y2.T)
    v3 = v3.T
    Y = Sigmoid(v3)
    
    return Y

def Sigmoid(x):
    return np.exp(-np.logaddexp(0, -x))

다층 신경망 Backward Pass

  • 주어진 Data를 통해 정답을 예측 하는것이 Forward Pass
  • 정답을 통해 원인 을 찾는 개념
  • L(Loss) : 주어진 정답이 나오도록 원인(값)을 찾을 때 기준 값, 즉 L이 0에 가까울수록 정답에 대한 영향도가 큰 것


jekyllmoonblogabouttheme Share Tweet +1