Neural Networks(2)

2019. 2. 7. 11:21Artificial Intelligence

*첨부자료의 모든 저작권은 COURSERA에 있음을 미리 밝힙니다.


Neural Networks(2)

- Examples and Intuition, Multi-Class classification



이번 시간에는 Abstract 하게 살펴보았던 Neural Network의 기본적인 로직의 구현을 통해

조금 더 실질적인 인공신경망의 구현을 살펴보고, 또 이를 바탕으로 Output의 결과가 하나가 아닌 Multi-Class Classification

모델도 간단하게 살펴보고자 한다.


save image




저번 포스팅에서 간단하게 살펴보았던 인공 신경망의 기본적인 구조이다. 여기서 Input Layer인 Layer 1과 Output Layer인 Layer 3를 제외한 중간의 모든 Layer들은 겉으로 드러나지 않는 Hidden Layer라고 한다. 이 인공신경망의 Input Parameter를 다음 Layer로 매핑할 때 적절한 가중치를 할당해 주면, AND, OR, NOT, XOR, XNOR 등의 로직들을 수행할 수 있게 된다. 간단한 예시들을 몇 가지 살펴보겠다.



1. AND function


save image





2. OR function


save image



3.  XNOR function


* XNOR function의 경우 3개의 기본로직들을 이용하여 구현해야 하므로 이전의 예제들에 비해 하나의 레이어가 더 필요하다.


save image




Multiple Output Units : One vs All <Multi-Class Classification>




save image



Multiple output Unit을 가진 경우는 분류를 이분법적으로 하는 것이 아니라 다중적으로 해야하는 경우를 일컫는다.  즉 분류를 할 때 자동차인지 아닌지를 분류하는 것이 아니라, 자동차인지 비행기인지 자전거인지 보행자인지를 분류해야 하는 경우인 것이다.


이 경우 Output Bits를 특정한 기준을 가지고 설정하면 된다.

예를 들어 Computer Vision 모델에서 컴퓨터가 보고있는 것을 위의 4가지 중 하나로 분류해야 하는 경우, 인공신경망의 분석 모델은 해당 물체에 해당되는 비트에만 1을 출력해주고 나머지는 0을 출력해 줌으로써 이 문제를 해결한다.


위의 예시를 보면 다음과 같다. 컴퓨터가 보고 있는 것이 보행자인 경우 보행자를 나타내는 비트인 첫 번째 비트에만 1을 할당하고 나머지는 다 0을 할당하는 식이다. 만약 컴퓨터가 보고 있는 것이 자동차인 경우 자동차를 나타내는 비트인 두 번째 비트에만 1을 할당하고 나머지는 다 0을 할당하면 된다. 이런 식으로 Multi-class Classification Model을 분석할 수 있게 된다. 

반응형