2025 에너지공학 탐구 동아리

다층 퍼셉트론 구조와 논리 연산

박한선, 강은찬, 서우진, 이지상

인천과학예술영재학교 동아리 PULSE

I. 서론

가) 연구 목적

본 연구의 목적은 인공신경망의 기본 단위인 퍼셉트론(Perceptron)의 작동 원리를 분석하고, 이를 기반으로 한 다층 퍼셉트론(MLP, Multi-Layer Perceptron) 구조를 통해 비선형 논리 연산을 구현하는 과정을 탐구하는 것이다. 단일 퍼셉트론이 수행할 수 있는 연산의 한계를 직접 확인하고, XOR 및 XNOR과 같이 선형적으로 분리되지 않는 문제를 다층 구조와 비선형 활성함수를 이용하여 해결함으로써 인공신경망의 근본적인 학습 메커니즘을 이해하고자 하였다. 단층 퍼셉트론으로는 선형적 분리만 가능한 문제를 실제로 확인하고, 다층 구조의 추가와 비선형 활성함수(ReLU, Sigmoid 등)의 도입을 통해 복잡한 비선형 경계를 학습할 수 있음을 실험적으로 입증하는 데 초점을 두었다. 이를 통해 인공신경망이 단순한 수학적 연산 단위를 넘어 복잡한 논리와 패턴을 학습할 수 있는 원리를 이해하고, 향후 보다 고차원적인 신경망 구조(CNN, RNN 등)의 기반이 되는 수학적 기초를 확립하고자 하였다.

나) 이론적 배경

퍼셉트론은 1957년 로젠블랫(Frank Rosenblatt)에 의해 제안된 인공신경망의 가장 기본적인 형태로, 입력값에 가중치를 곱해 모두 더하고, 편향을 더한 뒤, 활성함수를 통해 출력을 결정하는 연산 구조를 가진다. 이 과정은 생물학적 뉴런의 신호 전달 과정을 수학적으로 모델링한 것이다. 단일 퍼셉트론은 입력과 출력 간의 관계가 선형인 경우에만 분류가 가능하다. 예를 들어, AND나 OR 연산처럼 직선 하나로 구분할 수 있는 데이터는 퍼셉트론으로 표현 가능하지만, XOR처럼 비선형적으로 분리되어 있는 데이터는 단일 퍼셉트론으로는 표현할 수 없다. 이는 퍼셉트론이 하이퍼플레인으로만 경계를 설정하기 때문이다. 이 한계를 극복하기 위해 여러 퍼셉트론을 층 형태로 연결한 다층 퍼셉트론(MLP) 구조가 도입되었다. 은닉층(hidden layer)을 추가하고 활성함수를 비선형으로 설정하면, 다층 퍼셉트론은 복잡한 패턴을 학습할 수 있다. 대표적인 활성함수로는 Sigmoid, ReLU(Rectified Linear Unit), tanh 등이 있으며, 이러한 함수들은 출력의 비선형성을 확보해 신경망의 표현력을 높인다. 학습 과정에서는 손실 함수를 최소화하도록 가중치와 편향을 조정하는데, 일반적으로 크로스엔트로피(Cross-Entropy) 또는 평균제곱오차(MSE)를 사용한다. 가중치의 갱신은 일반적으로 경사하강법(Gradient Descent)을 통해 이루어진다.

또한 학습의 안정성과 일반화 성능을 높이기 위해 가중치 초기화(Xavier Initialization), 드롭아웃(Dropout), 배치 정규화(Batch Normalization) 등의 기법이 사용된다. 이러한 퍼셉트론의 구조적, 수학적인 확장은 합성곱 신경망(CNN), 순환 신경망(RNN)등의 심층 신경망으로 이어진다. CNN은 주로 영상 처리 분야해서 사용되며, RNN은 시계열 데이터 처리에 사용된다. 그렇지만, 기본적인 연산 원리는 본 연구에서 다루는 다층 퍼셉트론과 동일하다.

II. 본론

가) 퍼셉트론

1. 퍼셉트론의 개념 및 구조

퍼셉트론이란 여러 입력에 가중치(weight)를 곱하여 모두 더하고, 편향(bias)을 더한 다음 활성함수(activation function)에 처리하여 출력을 반환하는 일종의 연산 단위이다. 가중치는 각 입력의 중요도를 의미하며, 편향은 값에 오프셋을 부여한다. 활성함수는 퍼셉트론의 출력을 정제하는 역할을 하는데, 출력의 크기를 제한하거나, 일정 임계값을 기준으로 크게 변하는 함수를 사용하여 의미 있는 결과를 도출한다. 활성함수는 시그모이드 함수, ReLU, step function 등 퍼셉트론의 용도에 맞게 다양한 것이 사용된다.

2. 다층 퍼셉트론의 개념 및 구조

다층 퍼셉트론이란 한 퍼셉트론의 출력을 다른 퍼셉트론의 입력으로 사용하는 구조로, 한 층에 여러 퍼셉트론이 사용되며 여러 층으로 적층할 수 있다.

단일 퍼셉트론이 분류 문제에 사용될 경우 선형적인 방식으로밖에 분류하지 못한다. 비선형적인 결과를 얻기 위해서는 다층 퍼셉트론을 사용해야 한다. 이때, 다층 퍼셉트론의 비선형성은 활성함수로부터 비롯된다. 활성함수가 존재하지 않을 경우, 다층 퍼셉트론은 단일 퍼셉트론과 동일한 결과를 얻으며, 이는 단순히 입력값의 선형 결합 형태이다. 따라서 다층 퍼셉트론 자체는 활성함수가 핵심적인 역할을 한다고 할 수 있다.

3. 다층 퍼셉트론에서의 행렬 연산

다층 퍼셉트론의 경우 실제 공학에서 사용할 때는 각 층을 벡터로서 처리한다. [그림 ?]는 [eqn: n]개의 입력을 받고, [eqn: m]개의 노드를 가지고 있는 한 퍼셉트론 층을 나타내었다. 가중치는 총 [eqn: n TIMES m]개 존재하는데, 이 경우 모든 가중치를 [eqn: n TIMES m] 행렬 [eqn: W]에 저장한다. 편향을 [eqn: m]차원 행백터 [eqn: B]로 저장한다면, [eqn: n]차원 행벡터 입력 [eqn: I]를 [eqn: W TIMESI+B=O]와 같이 출력으로 계산할 수 있다. 이 연산은 퍼셉트론의 정의에 부합하는 연산이다. 그러나 행렬 연산을 수행함으로써 더욱 빠른 방식으로 전달할 수 있다. 실제로 컴퓨터에서 연산을 수행할 경우 GPU의 병렬 연산 등을 적용할 시 행렬 연산을 빠르게 처리할 수 있기에 큰 레이어들을 다룰 때 매우 유용하다.

나) 퍼셉트론으로 구현한 논리 연산

2개의 디지털 입력을 받고, 1개의 디지털 출력을 반환하는 퍼셉트론의 경우 가중치와 편차를 조절하여 논리 연산자로써 사용할 수 있다. 따라서, 퍼셉트론은 컴퓨터 연산에 논리 게이트와 동일한 방식으로 기본 구성 요소로서 사용될 수 있다.

1. 단일 퍼셉트론

퍼셉트론에서 활성화 함수를 입력 0 초과일 때 1, 이하일 때 0을 반환하는 step function으로 정의하는 경우, 디지털 출력을 반환하므로 단일 퍼셉트론만 사용하여 대부분의 논리 게이트를 구현할 수 있다.

그림 . AND 게이트의 분리

단일 퍼셉트론에서 활성함수를 제외한 부분이 입력의 선형 결합과 상수의 합과 동일하다는 것에 따르면, 그 값이 0보다 큰 영역을 [eqn: x_1, x_2]의 이차원 평면에 표시할 경우 직선으로 구분된 영역과 동일하다. 따라서 AND 게이트의 경우 [그림 1] 과 같이 나타낼 수 있다.

논리 이항 연산의 경우 4개의 입력 케이스에 대해 각각 2종류의 출력(0, 1)이 발생하므로 이론적으로 16개의 연산이 존재한다. 다만 실제로 사용하는 것은 제한적이다. 후술할 2개의 연산을 제외하고 14개의 케이스에 대해서 가중치와 편향의 값은 다음과 같다.

표 . 단일 퍼셉트론으로 구현한 14개의 논리 이항 연산에 대한 가중치 및 편향

연산	[eqn: w_1]	[eqn: w_2]	[eqn: b]	[eqn: x_1 , x_2]에 대한 출력
				00	01	10	11
0	0	0	-0.5	0	0	0	0
AND	1	1	-1.5	0	0	0	1
~[eqn: x_1 rarrow x_2]	1	-1	-0.5	0	0	1	0
[eqn: x_1]	1	0	-0.5	0	0	1	1
~[eqn: x_2 rarrow x_1]	-1	1	-0.5	0	1	0	0
[eqn: x_2]	0	1	-0.5	0	1	0	1
OR	1	1	-0.5	0	1	1	1
NOR	-1	-1	0.5	1	0	0	0
~[eqn: x_2]	0	-1	0.5	1	0	1	0
[eqn: x_2 rarrow x_1]	1	-1	0.5	1	0	1	1
~[eqn: x_1]	-1	0	0.5	1	1	0	0
[eqn: x_1 rarrow x_2]	-1	1	0.5	1	1	0	1
NAND	-1	-1	1.5	1	1	1	0
1	0	0	0.5	1	1	1	1

2. 다층 퍼셉트론

XOR 게이트와 XNOR 게이트의 경우 도표를 그려 본다면 다음과 같이 나타낼 수 있다.

그림  XOR(좌), XNOR(우) 게이트의 분리

선형적인 방식으로는 XOR과 XNOR 연산을 나타내는 것은 불가능한 것을 알 수 있으며, 이 경우는 다층 퍼셉트론을 이용해야 한다. 2개의 노드가 있는 한 층의 hidden layer를 가지는 다층 퍼셉트론을 이용할 경우, XOR과 XNOR의 가중치와 편향은 다음과 같다.

표 . XOR와 XNOR를 다층 퍼셉트론을 구현할 때 가중치와 바이어스

연산	[eqn: w_11]	[eqn: w_12]	[eqn: w_21]	[eqn: w_22]	[eqn: b_1]	[eqn: b_2]	[eqn: w_31]	[eqn: w_32]	[eqn: b_3]	[eqn: x_1 , x_2]에 따른 출력
										00	01	10	11
XOR	1	-1	1	-1	-1.5	1.5	1	1	-0.5	0	1	1	0
XNOR	1	-1	1	-1	-1.5	1.5	-1	-1	0.5	1	0	0	1

다) 기계학습과 다층 퍼셉트론

다층 퍼셉트론은 작동 방식이 생물의 신경망과 유사하기 때문에 인공신경망이라고도 불린다. 다층 퍼셉트론은 또한 기계학습에 주로 사용되는데, 논리 게이트 문제의 확장이라고도 볼 수 있는 이진 분류 문제, 합성곱과 풀링 층을 적용하여 이미지를 처리하는 CNN(합성곱 신경망, Convolutional Neural Network) 등 기계학습의 전 범위에서 사용한다.

III. 결론

본 연구에서는 퍼셉트론의 기본 구조와 연산 원리를 수학적으로 분석하고, 이를 통해 단일 퍼셉트론이 구현할 수 있는 논리 연산의 한계와 다층 퍼셉트론의 확장 가능성을 실험적으로 검증하였다. 단일 퍼셉트론의 경우 입력값의 선형 결합을 통해 특정 임계값을 기준으로 출력을 구분하기 때문에, AND, OR, NAND, NOR 등 선형적으로 분리 가능한 연산은 구현할 수 있으나, XOR이나 XNOR과 같이 비선형적으로 분리된 문제는 표현할 수 없음을 확인하였다. 이를 해결하기 위해 하나의 은닉층을 포함한 다층 퍼셉트론(Multi-Layer Perceptron)을 구성하고, 각 노드의 가중치와 편향을 조절하여 XOR 및 XNOR 게이트를 구현하였다. 그 결과, 다층 구조와 비선형 활성함수의 도입이 퍼셉트론의 표현력을 크게 확장시켜, 기존 단층 모델이 다루지 못하던 비선형 경계도 학습 가능하게 함을 확인하였다. 즉, 퍼셉트론의 비선형성은 활성함수에 의해 부여되며, 다층 구조를 통해 입력 공간의 복잡한 패턴을 인식할 수 있게 된다는 점을 직접적으로 보여주었다. 또한, 본 연구에서는 퍼셉트론의 계산 과정을 행렬 연산의 형태로 일반화하여, 실제 공학적 계산에서 GPU 병렬 연산과 같은 고속 처리가 가능함을 수학적으로 설명하였다. 이러한 벡터화와 행렬화는 대규모 신경망 학습의 필수 기반임을 확인할 수 있었다. 마지막으로, 다층 퍼셉트론이 단순한 논리 게이트 구현을 넘어 기계학습의 기본 구조로 확장될 수 있음을 논의하였다. 퍼셉트론의 가중치 조정 원리는 로지스틱 회귀나 딥러닝에서 사용하는 손실함수와 역전파(Backpropagation)의 기초가 되며, 이는 이미지 분류나 자연어 처리 등 복잡한 패턴 인식 문제의 출발점이 된다.

따라서 본 탐구는 단순한 논리 연산 실험을 통해 인공신경망의 근본 구조와 수학적 원리를 체계적으로 이해하고, 실제 기계학습 모델로 확장할 수 있는 이론적 토대를 마련했다는 점에서 의의가 있다. 향후 연구에서는 역전파 학습 과정을 직접 구현하고, 활성함수(ReLU, 시그모이드 등)나 가중치 초기화 방법에 따른 수렴 속도 및 정확도의 차이를 비교함으로써 신경망의 학습 효율을 분석할 계획이다.

IV. 참고 문헌

서지영. 2020. 딥러닝 파이토치 교과서. 길벗