카테고리 없음
파이토치
smile KiKi
2022. 11. 30. 11:06
import torch
import torchvision.datasets as dsets
import torchvision.transforms as transforms
import torch.nn.init
device = 'cuda' if torch.cuda.is_available() else 'cpu'
# 랜덤 시드 고정
torch.manual_seed(777)
# GPU 사용 가능일 경우 랜덤 시드 고정
if device == 'cuda':
torch.cuda.manual_seed_all(777)
#텐서에는 없음
learning_rate = 0.001 #옵티마이저에서 자동으로 제공됨, 변경가능함
training_epochs = 15
batch_size = 100 #옵티마이저에서 자동으로 32로 세팅됨. 변경은 가능함.
# 토치 transform
mnist_train = dsets.MNIST(root='MNIST_data/', # 다운로드 경로 지정
train=True, # True를 지정하면 훈련 데이터로 다운로드
transform=transforms.ToTensor(), # 텐서로 변환
download=True)
mnist_test = dsets.MNIST(root='MNIST_data/', # 다운로드 경로 지정
train=False, # False를 지정하면 테스트 데이터로 다운로드
transform=transforms.ToTensor(), # 텐서로 변환
download=True)
data_loader = torch.utils.data.DataLoader(dataset=mnist_train,
batch_size=batch_size,
shuffle=True,
drop_last=True)
first_batch=data_loader.__iter__().__next__()
x,y = first_batch[0],first_batch[1]
cnt=0
plt.figure(figsize=(30,10))
for row in range(1,6):
for col in range(1,21):
plt.subplot(5,20,cnt+1)
plt.imshow(x[cnt][0],cmap='gray')
plt.title(y[cnt].numpy())
cnt+=1