파이썬(36)
-
Python(Colab) 파이토치(Pytorch) + 딥러닝 + CNN + 손글씨 데이터
CNN을 적용해서 손글씨 데이터를 분류해보자 1. 기초설정 import torch import torch.nn as nn import torch.optim as optim import torchvision.datasets as datasets import torchvision.transforms as transforms import matplotlib.pyplot as plt from torch.utils.data import DataLoader 2. 코랩 환경에서 GPU로 돌리기 device = 'cuda' if torch.cuda.is_available() else 'cpu' print(device) 3. 데이터셋 받아오기 train_data = datasets.MNIST( root='data', t..
2023.06.21 -
Python(Colab) 파이토치(Pytorch) + 딥러닝 + CNN 사용해보기
1. 기초설정 import torch import torch.nn as nn import torch.optim as optim 2. 데이터 설정 # 예제 데이터 준비 # 배치 크기 / 채널 / 세로 / 가로 inputs = torch.Tensor(1,1,28,28) print(inputs.shape) 3. 컨볼루젼2d 사용 conv1 = nn.Conv2d(in_channels=1,out_channels=32,kernel_size=3, padding='same') out1 = conv1(inputs) print(out1.shape) 해석 첫번째 ) 1개 입력 데이터 / 32개 출력 데이터 / 필터 사이즈 (3,3) / padding으로 주위가 0(black) 설정 두번째) 예시 데이터를 컨볼루전에 대입 세..
2023.06.21 -
Python(Colab) 파이토치(Pytorch) + 활성화 함수
✔️활성화 함수 (Activation Function) - 신경망의 성능을 향상 시키기 위해 사용한다 - 직선 layer를 여러개 써봐야 1개의 직선이 최선이다. - 선형함수: 입력값과 가중치를 곱한 결과를 그대로 출력 - 신경망에서 여러개의 선형 활성화 함수를 사용한다면, 최중 출력값은 입력값과 가중치의 선형 조합으로 표현 - 이는 입력데이터의 비선형 관계를 표현할수 없다. - 신경망의 입력 데이터의 비선형 관계를 잘 학습할 수 있도록 하기 위해 비선형 활성화 함수를 사용한다. 1. Sigmoid() 주로 은닉층에서 사용하지 않고, 출력층(output layout)에서만 사용 import numpy as np import matplotlib.pyplot as plt def sigmoid(x): retu..
2023.06.21 -
Python(Colab) 파이토치(Pytorch) + 딥러닝 해보기
✔️ 퍼셉트론(Perceptron) 생물학적 뉴런 : 화학적,전기적 신호를 처리하고 서로 전달하는 연결된 뇌신경 세포 인공 뉴런 : 퍼셉트론이라 불림 -1943년 웨렌 맥컬론, 월터 피츠가 단순화된 뇌세포 개념을 발표 논리회귀(단층 퍼셉트론)으로 or문제 풀기 문제: 0,1중 1개라도 1이 있으면 정답은 1 import torch import torch.nn as nn import torch.optim as optim X = torch.FloatTensor([[0,0],[0,1],[1,0],[1,1]]) y= torch.FloatTensor ([[0],[1],[1],[1]]) model = nn.Sequential( nn.Linear(2,1), nn.Sigmoid() ) optimizer = optim...
2023.06.20 -
Python(Colab) 파이토치(Pytorch) + 데이터 로더
데✔️ 데이터로더 데이터 양이 많을 때, 배치 단위로 학습하는 방법을 의미한다. 데이터 로더를 적용하여 손글씨 인식하기 1. 데이터 셋 셋팅 및 기초 셋팅 import torch import torch.nn as nn import torch.optim as optim import torchvision.datasets as datasets import torchvision.transforms as transforms import matplotlib.pyplot as plt from sklearn.datasets import load_digits # GPU device = 'cuda' if torch.cuda.is_available() else 'cpu' print(device) 2. 학습데이터 뽑아오기 d..
2023.06.20 -
Python(Colab) 파이토치(Pytorch) + 논리 회귀 (와인품종 예측)
목표: 13개 성분을 분석하여 어떤 품종에 와인인지 예측하자 1. 데이터셋 : sklearn.datasets.load_wine (학습데이터 80%, 테스트 데이터 20%) from sklearn.datasets import load_wine import pandas as pd from sklearn.preprocessing import MinMaxScaler from sklearn.model_selection import train_test_split x_data,y_data = load_wine(return_X_y=True,as_frame=True) #한번에 데이터 프레임 x_data= torch.FloatTensor(x_data.values) y_data= torch.LongTensor(y_data...
2023.06.20