5장. 손실함수
1. 손실함수 N개의 데이터 샘플, n차원 L1 L2 : Euclidean distance RMSE MSE MSE는 L2 노름의 제곱에 상수를 곱한 2. 실습 def mse(x_hat, x): # |x|=(batch_size, dim) print((x-x_hat)**2) y=((x-x_hat)**2).mean() return y x=torch.FloatTensor([[1,1],[2,2]]) x_hat=torch.FloatTensor([[0,0],[0,0]]) print(mse(x_hat,x)) #2.5 torch.nn.function 사용 import torch.nn.functional as F F.mse_loss(x_hat,x) #2.5 F.mse_loss(x_hat,x, reduction='sum')..
2024. 4. 10.
4장. 선형계층
선형계층은 행렬의 곱과 벡터의 덧셈으로 이루어짐! 1. 행렬곱(matmul) x=torch.FloatTensor([[1,2],[3,4],[5,6]]) y=torch.FloatTensor([[1,2],[1,2]]) z=torch.matmul(x,y) print(z) print(z.size()) // 3x2 2. 배치행렬곱(bmm) bmm은 마지막 2개의 차원을 행렬 취급하여 병렬로 행렬 곱 연산 수행 x=torch.FloatTensor(3,3,2) y=torch.FloatTensor(3,2,3) z=torch.bmm(x,y) print(z.size()) #3x3x3 3. 선형계층 W=torch.FloatTensor([[1,2],[3,4],[5,6]]) b=torch.FloatTensor([2,2]) def..
2024. 4. 10.
3장 파이토치 튜토리얼
텐서: 딥러닝에서 가장 기본이 되는 단위 중 하나(3차원 이상의 배열)1. numpy 호환 1. numpy tensor import torch import numpy as np x=np.array([[1,2],[3,4]]) y=torch.from_numpy(x) x=y.numpy() 2. 텐서크기 구하기 x=torch.FloatTensor([[[1,2],[3,4]],[[5,6],[7,8]],[[9,10],[11,12]]]) print(x.size()) #torch.Size([3, 2, 2]) print(x.shape) #torch.Size([3, 2, 2]) print(x.size(-1)) #2 print(x.shape[-1]) #2 # dimension print(x.dim()) #3 print(len..
2024. 4. 4.