Deep Learning/PyTorch

[PyTorch] MLP 모델 만들기 1편 - 학습 데이터셋 만들기

notesfromyoungdeveloper 2025. 1. 1. 16:39
728x90
반응형

 

 

 

PyTorch에서 MLP 모델을 만드는 방법에 대해 알아보겠습니다.

MLP는 Multi-Layer Perceptron의 약자로, 입력층(input layer)과 출력층(output layer) 사이에 1개 이상의 은닉층(hidden layer)이 있는 구조의 퍼셉트론을 말합니다.

 

만들어볼 MLP 모델은 XOR 게이트 모델입니다.

이번 글에서는 모델을 만드는 과정 중 학습 데이터셋 만드는 부분을 다뤄보겠습니다.

 

먼저, 입력 데이터의 리스트와 출력 데이터의 리스트를 만들어 줍니다.

그리고 zip 함수를 이용해서 2개의 리스트를 하나로 묶어줍니다.

 

그럼 이어서 실제 코드를 살펴보겠습니다.

import torch
from torch.autograd import Variable

xor_input = [Variable(torch.Tensor([0, 0])),
            Variable(torch.Tensor([0, 1])),
            Variable(torch.Tensor([1, 0])),
            Variable(torch.Tensor([1, 1]))]

xor_target = [Variable(torch.Tensor([0])),
            Variable(torch.Tensor([1])),
            Variable(torch.Tensor([1])),
            Variable(torch.Tensor([0]))]

xor_data = list(zip(xor_input, xor_target))
print(xor_data)

 

xor_input은 입력 데이터의 리스트이고, xor_target이 출력 데이터의 리스트입니다.

zip 함수를 이용해 xor_data에 2개의 리스트를 하나로 묶고, list 함수를 이용해 다시 리스트로 만들어 줍니다.

 

그리고 print 해서 입출력 쌍이 잘 만들어졌는지 확인하면, 학습 데이터셋 만들기가 완료됩니다.


참고 문헌: 파이토치 라이트닝으로 시작하는 딥러닝

참고 페이지 링크: https://github.com/PacktPublishing/Deep-Learning-with-PyTorch-Lightning/blob/main/Chapter02/Github_Copy_of_Perceptron_model_XOR.ipynb

 

 

 

728x90
반응형