2025년, 코딩은 선택이 아닌 필수!

2025년 모든 학교에서 코딩이 시작 됩니다. 먼저 준비하는 사람만이 기술을 선도해 갑니다~

소프트웨어중심대학

[학생부 종합전형]독서논문탐구-NAND,OR,AND 다중 퍼셉트론 예시

원당컴1 2025. 2. 25. 15:19

https://wondangcom.tistory.com/2943

이 학생의 활동중에 진로활동 중 독서논문탐구(NAND,OR,AND 다중 퍼셉트론으로 XOR값 출력/행렬) 활동 내역이 있어서 이 학생은 어떤 활동을 했을까 추측을 해 보았습니다.

 

먼저 모두의 딥러닝 책(길벗출판사)의 7장에 보면 퍼셉트론에 대해 자세하게 설명이 되어 있는데요~

이 책을 읽고 독서 논문 탐구 보고서를 작성했다고 가정해 보았습니다.

 

제목: 다중 퍼셉트론을 이용한 XOR 문제 해결 - NAND, OR, AND 게이트의 역할

 

I. 서론

딥러닝의 발전은 인공신경망의 기초 개념인 퍼셉트론에서 시작되었습니다. 퍼셉트론은 입력 신호를 받아 가중치를 조정하여 출력을 생성하는 알고리즘으로, 이는 인간의 뇌의 작동 원리를 모방한 것입니다. 본 보고서에서는 퍼셉트론의 개념, 논리 게이트의 구현, 그리고 다층 퍼셉트론의 등장과 XOR 문제 해결에 대해 탐구하겠습니다.

II. 퍼셉트론 개념

1. 퍼셉트론이란

퍼셉트론은 맥컬럭-월터 피츠의 논문에서 제안된 '켜고 끄는 기능이 있는 신경'을 기반으로 합니다.

1957년, 프랑크 로젠블랫은 이 개념을 실제 장치로 구현하여 퍼셉트론을 선보였습니다.

퍼셉트론은 다수의 입력 값을 받아 하나의 출력을 생성하며, 이 과정에서 입력 값에 가중치를 부여하여 학습할 수 있는 능력을 갖추고 있습니다.

출처: 모두의 딥러닝

2. 아달라인이란

퍼셉트론의 한계를 극복하기 위해 1960년에 아달라인(Adaptive Linear Neuron)이 개발되었습니다.

아달라인은 경사 하강법을 도입하여 최적의 경계선을 그릴 수 있도록 하였으며, 이는 이후 머신 러닝의 중요한 알고리즘으로 발전하게 됩니다.

출처: 모두의 딥러닝

III. 논리 게이트의 구현

1. NAND 게이트

NAND 게이트는 두 개의 입력이 모두 1일 때만 0을 출력하고, 나머지 경우에는 1을 출력하는 논리 게이트입니다. 퍼셉트론을 사용하여 NAND 게이트를 구현하기 위해서는 다음과 같은 가중치와 임계값을 설정합니다:

  • 입력: x1, x2
  • 가중치: w1 = -2, w2 = -2
  • 임계값: −3

퍼셉트론의 출력은 다음과 같이 계산됩니다:

y={1,if w1x1+w2x2>threshold0,otherwise

2. OR 게이트

OR 게이트는 두 개의 입력 중 하나라도 1이면 1을 출력하는 논리 게이트입니다. OR 게이트를 구현하기 위해 다음과 같은 가중치와 임계값을 설정합니다:

  • 입력: x1, x2
  • 가중치: w1 = 1, w2 = 1
  • 임계값: 0.5

출력은 다음과 같이 계산됩니다:

y={1,if w1x1+w2x2>threshold0,otherwise

3. AND 게이트

AND 게이트는 두 개의 입력이 모두 1일 때만 1을 출력하는 논리 게이트입니다. AND 게이트를 구현하기 위해 다음과 같은 가중치와 임계값을 설정합니다:

  • 입력: x1, x2
  • 가중치: w1 = 1, w2 = 1
  • 임계값: 1.5

출력은 다음과 같이 계산됩니다:

y={1,if w1x1+w2x2>threshold0,otherwise

 

IV. 퍼셉트론의 과제

  • 사각형 종이에 검은색 점 두개와 흰색 점 두개가 놓여 있음
  • 이 네 점 사이에 직선을 하나 긋는다고 하자.
  • 이때 직선의 한쪽 편에는 검은색 점만 있고 다른 한쪽에는 흰색 점만 있게끔 선을 그을 수 있을까?
  • 퍼셉트론이나 아달린은 모두 2차원 평면상에 직선을 긋는 것만 가능함으로 아무리 그어도 해결되지 않는 상황이 있다는 것을 알 수 있다.
 

V. 다층 퍼셉트론의 등장

  • 앞에서 종이 위에 놓인 검은색 두 점과 흰색 두 점을 하나의 선으로 구별 할 수 없다는 것을 살펴 보았음
  • 이 문제는 2차원 평면에서만 해결하려는 고정 관념을 깨면 해결이 가능함

  • 즉 종이를 휘어 선 두개를 동시에 긋는 방법
  • 이것을 XOR 문제에 적용하면 퍼셉트론 두 개를 한번에 계산 하면 된다는 결론에 이름
  • 이를 위해 퍼셉트론 두 개를 각각 처리하는 은닉층(hidden layer)을 만듦

 

 

VI. 다층 퍼셉트론의 설계

  • 입력층과 출력층 사이에 숨어 있는 은닉층을 만든다.
  • x1과 x2는 입력 값으로 각 값에 가중치 w11,w12,w21,w22를 각각 곱하고 바이어스 b1,b2를 더해 은닉층으로 전송
  • 이 값들이 모이는 은닉층 n1,n2 는 다음과 같이 계산됨

  • 이 두 식의 결괏값이 출력층에 전달되며 출력 값은 다음과 같이 계산됨

VII. XOR 문제의 해결

  • 앞에서 우리는 어떤 가중치와 바이어스가 필요한지 알아 보았음
  • 이를 만족하는 가중치와 바이어스 조합은 무수히 많음
  • 변수의 값을 다음과 같이 정하고 XOR 문제를 해결하는 과정을 살펴 보자.

우리가 원하는 값이 나오는 것을 확인 할 수 있다.

 

VIII. 코딩으로 XOR 문제 해결하기

다층 퍼셉트론을 사용하여 XOR 문제를 해결하는 코드는 다음과 같다:

import numpy as np

def sigmoid(x):
    return 1 / (1 + np.exp(-x))

def predict(X, weights):
    return sigmoid(np.dot(X, weights))

# XOR 데이터
X = np.array([[0, 0], [0, 1], [1, 0], [1, 1]])
y = np.array([[0], [1], [1], [0]])

# 가중치 초기화
weights = np.random.rand(2, 2)

# 학습 과정 (단순 예시)
for epoch in range(10000):
    output = predict(X, weights)
    error = y - output
    weights += np.dot(X.T, error * output * (1 - output))

# 예측
print(predict(X, weights))

IX. 결론

본 탐구 보고서에서는 퍼셉트론과 다층 퍼셉트론의 개념, 그리고 이들이 어떻게 NAND, OR, AND 게이트를 구현하는지에 대해 살펴보았습니다. 퍼셉트론은 인공지능의 기초를 형성하는 중요한 모델로, 단순한 논리 게이트를 구현하는 데 성공했지만, XOR 문제와 같은 비선형 문제를 해결하는 데는 한계가 있음을 확인했습니다. 이러한 한계는 인공지능 연구의 암흑기를 초래하기도 했습니다.

다층 퍼셉트론의 등장은 이러한 한계를 극복하는 중요한 전환점이었습니다. 은닉층을 추가함으로써 비선형 문제를 해결할 수 있는 가능성을 열었고, 이는 인공지능의 발전에 큰 기여를 하였습니다. 특히, XOR 문제를 해결하기 위해 두 개의 퍼셉트론을 조합하여 사용하는 방식은 인공지능의 복잡한 패턴 인식 능력을 향상시키는 데 중요한 역할을 했습니다.

이러한 연구 결과는 단순히 이론적인 의미를 넘어서, 실제로 다양한 분야에서 인공지능 기술이 활용될 수 있는 기반을 마련했습니다. 앞으로의 탐구 방향으로는 다층 퍼셉트론의 다양한 응용 사례를 연구하고, 이를 통해 더 복잡한 문제를 해결할 수 있는 방법을 모색하는 것이 중요할 것입니다. 또한, 퍼셉트론과 다층 퍼셉트론의 발전 과정을 통해 인공지능의 미래를 더욱 밝게 할 수 있는 가능성을 탐구해 나가야 할 것입니다.

결론적으로, 퍼셉트론과 다층 퍼셉트론의 연구는 인공지능의 기초를 다지는 중요한 과정이며, 앞으로의 연구와 발전이 기대됩니다. 이러한 탐구를 통해 우리는 인공지능의 원리를 이해하고, 이를 바탕으로 더 나은 기술적 해결책을 제시할 수 있을 것입니다.

================

이런 형식으로 먼저 주제를 선정하고, 모두의 딥러닝 이란 책을 통해 자료를 조사하고 자료 분석 및 정리하여 보고서를 작성 할 수 있을것 같네요.

학생부가 더욱 중요해 지는 만큼 수행 보고서의 역할이 더욱 커질것 같네요.

진로가 컴퓨터 관련된 학과라면 코딩 융합 수행보고서는 더욱 두드러질것 같은데요~

이제는 코딩이 선택이 아닌 필수이기에 미리 준비해서 학생부의 경쟁력을 높여 나가시길 바랍니다.^^

사업자 정보 표시
원당컴퓨터학원 | 기희경 | 인천 서구 당하동 1028-2 장원프라자 502호 | 사업자 등록번호 : 301-96-83080 | TEL : 032-565-5497 | Mail : icon001@naver.com | 통신판매신고번호 : 호 | 사이버몰의 이용약관 바로가기