BookmarkSubscribeRSS Feed

[통계]Deep Learning_신경망04

Started ‎06-15-2020 by
Modified ‎06-15-2020 by
Views 128

 

[Description]

1. 머신러닝에 사용되는 데이터 세트

2. 오차역전파법

 

SE22020022320510670.png

 

일반적으로 머신러닝에 사용되는 데이터 세트는 학습을 위한 training data, 학습 과정에서 학습이 잘 되는지 판단하기 위한 validation data, 학습이 끝난 후에 새로운 데이터에도 모델이 잘 작동되는지를 검증하는 test data로 구성됩니다.

 

훈련 데이터는 많으면 많을수록 좋고, 우리가 원하는 모델을 구축하는데 중요한 역할을 합니다. 훈련데이터의 구성 및 전처리를 통해 양질의 데이터를 훈련 데이터에 포함시키는 것이 중요합니다. 데이터가 아무리 많아도 훈련에 필요없는 정보만 많다면 그 데이터는

효용성이 떨어집니다.

 

검증용 데이터는 구축 중인 모델이 과적합에 빠지지 않게 하는 중요한 역할을 합니다. 훈련 데이터에 딱 맞춰 학습하는 경우 새로운  데이터에 적응하지 못하는 경우가 발생합니다. 이런 경우를 과적합이라고 하며, 과적합을 방지하기 위해 검증용 데이터를 활용합니다.

 

테스트 데이터는 훈련 데이터와 검증용 데이터를 통해 학습된 모델이 학습되지 않은 데이터에 잘 작동한느지 평가하는데 사용됩니다. 모델을 구축하는 최종 목적은 테스트 데이터에 대해 잘 작동하는 모델을 구축하는 것을 말하며, 이 능력을 일반화 능력(generalization ability)라고 한다. 참고로 신경망의 학습에는 training data가 사용됩니다. 

 

[오차역전파법]

*오차역전파법의 알고리즘

 

  1.  신경망의 출력 계산
  2.  정답과 신경망의 출력과의 오차 E를 계산
  3. 오차 E에 대한 각 가중치와 편향의 기여도(영향도)를 편비문을 이용해 계산 
  4.  각 가중치와 편향 갱신한다.

 

오차역전파법은 신경망의 출력과 정답과의 오차를 계산한 수, 각 층의 가중치와 편향이 오차에 어느 정도 기여하는지를 출력에서부터 거꾸로 계산해서 보상하는 것을 말합니다. 

  

 

SE22020022320543070.png

 

가중치와 편향의 학습에는 델타규칙의 식이 그대로 사용됩니다

 

SE22020022320560370.pngSE22020022320575870.png

 

* 위 그림 번호 참조해서 보시면 됩니다.

계산된 값을 이용해 가중치 W와 편향 b를 학습하면 된다가중치 w b가 학습에 의해 사로운 값으로 갱신되기 때문에 ‘update이라고도 하며이용할 update식은 다음과도 같다.

 

SE22020022320590870.png

 

오차 E를 W​2​, b​2에 대한 관계식으로 정리하면, 

 

SE22020022321001070.png

 

w​1​, b​1​에 대한 관계식으로 정리한다. 여기서 활성화 함수는 [신경망 03]에서 포스팅했던 시그모이드 함수를 사용한다.

 

SE22020022321035170.png

 

위 식을 w​2​, b​2​, w​1​, b​1​에 대해 편미분 하면, 

 

SE22020022321040570.png

일일이 전개해서 편미분하는 방법도 있고시그모이드 함수도 있어서 계산하기 쉽지는 않습니다

미분의 연쇄법칙을 이용해 편미분하면 이해하기도 쉽고 계산도 편해집니다

 

 

Version history
Last update:
‎06-15-2020 05:09 AM
Updated by:
Contributors

sas-innovate-wordmark-2025-midnight.png

Register Today!

Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9. Sign up by March 14 for just $795.


Register now!

Article Labels
Article Tags