Pytorch로 시작하는 딥러닝 입문(06-03. XOR 문제: 단층 퍼셉트론 구현하기 )
2024. 3. 10. 14:26ㆍ딥러닝 모델: 파이토치
파이토치를 사용해서 단층 퍼셉트론을 구현하여 XOR 문제를 풀어보자
*XOR 문제(https://wikidocs.net/60680, 입력값 두 개가 서로 다른 값을 갖고 있을 때만 출력값이 1이 되고, 입력값 두 개가 서로 같은 같을 가지면 출력값이 0이 되는 게이트. 곡선을 이용하여 영역 분리를 할 수 있음)
♣ 파이토치로 단층 퍼셉트론 구현하기
도구 import하기(GPU 연산 설정)
입력과 출력 정의하기
1개의 뉴런을 가지는 단층 퍼셉트론 구현하기
앞에서 배운 활성화 함수인 시그모이드 함수를 사용해보자.
0 또는 1을 예측하는 이진 분류 문제이므로 비용함수로는 크로스엔트로피 함수를 사용한다.
nn.BCELoss( )는 이진 분류에서 사용하는 크로스엔트로피 함수이다.
비용이 제대로 줄어들지 않는다는 것을 알 수 있다. 단층 퍼셉트론은 XOR 문제를 풀 수 없기 때문이다.
♣ 학습된 단층 퍼셉트론의 예측값 확인하기
실제값은 0, 1, 1, 0 인데 예측값은 0, 0, 0, 0으로 문제를 풀지 못한다는 것을 확인할 수 있다.
'딥러닝 모델: 파이토치' 카테고리의 다른 글
Pytorch로 시작하는 딥러닝 입문(06-05. XOR: 다중 퍼셉트론 구현하기) (0) | 2024.03.11 |
---|---|
Pytorch로 시작하는 딥러닝 입문(06-04. 역전파: Back Propagation ) (0) | 2024.03.10 |
Pytorch로 시작하는 딥러닝 입문(06-02. 인공신경망: 퍼셉트론) (0) | 2024.03.08 |
Pytorch로 시작하는 딥러닝 입문(06-01. 인공신경망: 머신 러닝 용어 이해하기) (0) | 2024.03.06 |
Pytorch로 시작하는 딥러닝 입문(05-04. 소프트맥스 회귀로 MNIST 데이터 분류하기) (0) | 2024.03.06 |