쉽게 이해하는 단층 신경망

Neural Network, 신경망은 머신러닝의 모델 중 하나입니다. 4차 산업혁명 시대에 접어들어, 인공지능, 머신러닝, 딥러닝 등이 주목을 받으면서 중요해진 개념이 신경망입니다.

 

머신러닝의 수많은 모델 중 하나일 뿐인데, '신경망'이라는 이름을 붙인 것은 인간의 학습과정과 아주 유사한 형태를 띄고 있기 때문입니다.

 

 

신경망


머신러닝-신경망의-학습과정

간략하게 나타낸 신경망의 학습과정을 나타내었습니다. 신경망은 공부할 내용을 받아들여 그에 따른 결과를 도출해내고, 보완할 점을 학습 규칙에 따라서 또다시 학습하여 새로운 결과를 도출합니다.

 

일반적인 기계의 연산과 다르게, 결과에서 보완할 점을 찾아 또다시 학습한다는 점이 마치 인간이 사고하는 과정과 유사하다 하여, 신경망이라고 부르게 된 것입니다.

 

그리고, 우리는 화살표에 집중해야할 필요성이 있습니다. 만약 컴퓨터가 A라는 정보를 저장한다면, 그저 메모리에 A라고 저장할 뿐입니다.

 

하지만, 우리 인간의 뇌는 A를 그대로 저장하는 것이 아니라 주변의 신경세포들과의 연결관계를 바꿈으로써 A라는 정보를 저장합니다.

 

따라서, 머신러닝의 신경망 또한 어떠한 정보를 저장할 때에 A라고 그대로 저장하는 것이 아닌, 위 그림의 화살표, 정확히는 가중치의 형태로 저장하게 되는 것입니다.

 

 

단층 신경망


그럼 신경망의 가장 단순한 형태인 단층 신경망에 대해서 알아보도록 하겠습니다.

 

예를 들어 생각해보겠습니다. 게임을 아주 좋아하는 A라는 사람이 있습니다. A는 1월에는 하루에 평균 2시간을 게임했고, 2월에는 하루 평균 4시간 정도 게임을 즐겼습니다. 그렇다면 A는 3월에 하루 평균 몇 시간 정도 게임을 할까요?

머신러닝-신경망-학습-예시

일반적으로 생각하기에는, 3월에는 1월과 2월의 평균 게임시간인 3시간 정도 게임을 할 것이라고 예상해볼 수 있습니다. 우리는 1월과 2월의 상태가 동등하게 3월에 영향을 미칠것이라고 생각한 것입니다.

 

이 영향을 미치는 정도를 가중치 w라고 정의하겠습니다. 즉, 우리는 1월과 2월의 가중치를 0.5로 동일하게 둔 것입니다.

 

하지만, 이를 현실의 사례로 생각해보면 조금 다를 수 있습니다. A가 2월에 게임 시간이 2배로 증가한 것으로 미루어보아, 게임을 더 좋아하게 되어 3월에는 5시간, 6시간으로 더 많은 게임을 할 수도 있는 것입니다.

머신러닝과-일반적인-사고의-차이

머신러닝 신경망에서는 이 가중치에 중요도를 높게 책정하여, 가중치를 찾아가는데에 의의를 두고 있습니다. 1월의 영향 w1과 2월의 영향 w2를 찾는 과정입니다.

 

가중치 w를 찾기 위해서는 아직 결과를 모르는 A의 데이터가 아니라, 이전의 다른 사람들의 데이터를 통해서 학습하여, 앞으로 A가 몇 시간의 게임을 하게 될 것인지 예측해볼 수 있는 것입니다.

머신러닝-신경망의-가중치-찾기-과정

다른 사람 B, C, D의 데이터를 통해서 신경망은 오차가 최소가 되는 가중치 w1과 w2를 찾아내고 이 과정이 바로 학습 과정입니다.

 

오차가 최소가 되는 최적의 가중치 w를 미리 찾아둔다면, A의 1월과 2월 게임시간을 입력하는 것 만으로도 3월의 예측 게임시간을 알 수 있는 것입니다.

 

B, C, D 3명의 데이터가 아니라 1만명 이상의 방대한 데이터를 학습시킨다면 신경망은 더욱 보편화된 최적의 가중치 w를 찾을 수 있습니다.

 

사람이라면 불가능하지만 기계이기에, 머신러닝이기에 가능한 정교한 예측방법인 것입니다.

 

이번 포스트에서는 머신러닝과 신경망에 대해서 알아보았습니다. 다음 포스트에서는 딥러닝이 무엇인지, 다층 신경망에 대해서 알아보도록 하겠습니다.

반응형