본문 바로가기
Artificial Intelligence/Deep Leaning

Building Neural Networks with Perceptrons(퍼셉트론을 이용한 신경망 구축)

by YUNZEE 2023. 12. 22.
728x90
다중 출력 퍼셉트론

입력 데이터에 대한 여러 개의 출력을 생성하는 인공 신경망이다.

위의 이미지에서는 입력층은 3개 은닉층은 2개의 뉴런으로 구성되어 있으며, 각 뉴런은 3개의 가중치와 1개의 편향을 가지고 있다. 출력층은 2개의 출력 신호를 가지고 있다.

 

z1, z2는 은닉층의 출력 신호이고 y1, y2는 출력층의 출력신호이다.

 

공식은

z1 = w1x1 + w2x2 + w3x3 + b1

z2 = w4x1 + w5x2 + w6x3 + b2

y1 = g(z1)

y2 = g(z2)

 

w1~6은 가중치를 나타냄

b1,b2는 편향을 나타냄

- 편향이란?

쉽게 설명드리자면 가중치 앞에 붙는 부호를 나타낸다.

가중치가 양수이면, 입력 신호가 뉴런의 출력에 더 큰 영향을 미치고 가중치가 음수이면, 입력 신호가 뉴런의 출력에 더 작은 영향을 미친다. 편향은 뉴런의 출력에 고정된 값을 더하는 역할을 하기 때문에 편향의 부호는 뉴런의 출력에 영향을 미친다.

 

이미지에서 활성화 함수로 시그모이드 함수는 입력 신호의 값이 증가할수록 출력 신호의 값이 1에 가까워지는 함수이다.

위의 이미지는 다층 퍼셉트론 입력 데이터에 대한 여러 개의 출력을 생성하는 인공 신경망이다. 입력층, 은닉층, 출력층으로 구성되어 있다.

 

입력층: 3개의 입력신호를 가지고 있고, 이 입력 신호는 숫자, 문자, 이미지 등 다양한 형태가 될 수 있다.

은닉층: 4개의 뉴런으로 구성되어 있고, 각 뉴런은 3개의 가중치와 1개의 편향을 가지고 있다. 

출력층: 2개의 출력 신호를 가지고 있고, 이 출력 신호는 숫자, 문자, 이미지 등 다양한 형태가 될 수 있다.

 

뉴런의 수가 증가했을 때 장점으로는

입력신호의 개수가 증가하면, 신경망은 입력 데이터에 대한 더 많은 정보를 처리할 수 있다. 따라서 더 복잡한 문제를 해결할 수 있다.

은닉층의 뉴런 수가 증가하면, 신경망은 입력 데이터를 더 복잡하게 처리할 수 있다. 더 정확한 결과를 얻을 수 있다.

출력 신호의 개수가 증가하면, 신경망은 입력 데이터에 대한 더 많은 정보를 출력할 수 있다. 더 다양한 문제를 해결할 수 있다.

 

물론, 단점도 있다. 은닉층의 뉴런의 수가 너무 많아지면, 신경망이 과적합 될 수 있다. 따라서, 은닉층은 뉴런 수는 학습 데이터의 양과 복잡성, 그리고 문제의 특성에 따라 적절하게 조정해야 한다.

Z2는 이 뉴런이 중간층에서 강조하는 부분이다.

이 뉴런은 지금까지 이 클래스에서 우리가 봐왔던 것과 동일한 퍼셉트론이다. 그 다음에 바로 아래에 있는 다른 노드인 Z3를 보면 모든 입력 사이에 비선형성을 적용하여 얻은 것이다. 같은 입력을 다시 보게 되는 것과 완전히 동일한 이야기이지만 다른 가중치 행렬 집합이 있어 출력은 다르게 나온다.

 

이제부터는 이 모든 선과 다이어그램을 간단히 보자면, 이러한 유형의 솔루션을 서로의 위에 쌓으려면 하나의 레이어를 매우 쉽게 정의할 수 있을 뿐만 아니라 자동으로 순차 모델이라고 하는 것을 만들 수 있다.

이러한 순차 모델은 기본적으로 각 레이어가 다음 레이어에 완전히 연결되는 수준을 정의할 수 있다. 물론 매우 깊은 신경망을 만들고 싶다면 모든 레이어를 서로 위에 계속 쌓으면 된다. 이 모든 심층 신경망 형태 중 다른 것은 없다. 

728x90