Data is ___ ?
article thumbnail
[Pytorch] torch.max( ) & torch.argmax( )
Python/라이브러리 2023. 1. 30. 12:31

torch.max : 최댓값을 출력 dim=0이면 dim=1이면 뭐를 기준으로 어떻게 더한다...이런게 나는 헷갈려서 터득한 방법이 있다 ! torch.sum과 마찬가지로 인덱스를 이용하여 구하는 방법 예를 들어, 아래와 같이 dim=0을 기준으로 하면 인덱스 0번째 값이 5이므로, 5개가 묶인 곳 중에서 최댓값 하나를 산출하고 나머지 1번째 인덱스 값만큼의 크기로 출력 (즉, (1, 3)크기의 행렬이 출력된다.) >>> import torch >>> a = torch.randn(5, 3) >>> print(a) """ tensor([[-1.1260, -0.7415, -0.9703], [-0.8786, -1.6561, -0.2796], [ 0.1368, 0.8606, -0.3936], [-1.1206, ..

article thumbnail
[Pytorch] GPU device
Python/라이브러리 2023. 1. 28. 14:34

만약 데이터가 GPU를 사용해서 학습을 해야하는 상황이라면 코드 내에서 해당하는 데이터들을 GPU용 텐서로 변환해 주어야 한다. 먼저 device를 정의해주기 ! import torch device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") CNN 추가추가 RNN 데이터 처리 시퀀스 데이터를 만드는 함수 내에서 x_seq, y_seq를 변환 후 return y데이터는 view를 사용하여 2차원으로 바꿔준다. 왜냐하면 MSE Loss가 기본적으로 2차원 target data를 받기 때문 ! return torch.FloatTensor(x_seq).to(device), torch.FloatTensor(y_seq).to(device).v..

article thumbnail
[Pytorch] Dataset, DataLoader
Python/라이브러리 2023. 1. 27. 18:54

📚 파이토치에는 Dataset과 DataLoader라는 기능이 있어서 미니 배치 학습이나 데이터 셔플, 병렬 처리 까지 간단히 수행할 수 있다. 📚 TensorDataset을 DataLoader에 전달해서 데이터의 일부만 간단히 추출할 수 있다. TensorDataset 🎀 개념 Dataset을 상속한 클래스로 학습 데이터 X와 레이블 Y를 묶어 놓는 컨테이너이다. 이것을 DataLoader에 전달하면 for 루프에서 데이터의 일부분만 간단히 추출할 수 있게 된다. TensorDataset에는 텐서만 전달할 수 있으며, Variable은 전달할 수 없으니 주의 Dataset은 직접 작성할 수도 있어서 대량의 이미지 파일을 한 번에 메모리에 저장하지 않고 필요할 때마다 읽어서 학습하는 등 다양하게 활용할 ..

article thumbnail
[Python] 파이썬 파일 관련 코드들
Python/라이브러리 2023. 1. 20. 06:39

glob 특정 디렉토리에 있는 파일들을 하나씩 읽을 때 해당 디렉토리의 파일명을 리스트로 받아와야 하고 이때 glob 사용 filelist = glob.glob(os.path.join(root, "trainA") + "/*.*") for file in filelist: pass 파일명을 리스트로 받은 후에 다양한 옵션을 사용해서 정렬 변경 가능 # 파일명 filelist = sorted(glob.glob(os.path.join(root, "trainA") + "/*.*")) # 파일 생성일 filelist = sorted(glob.glob(os.path.join(root, "trainA") + "/*.*"), key=os.path.getctime) # 파일 최근 접근일 filelist = sorted(g..

article thumbnail
[Matplotlib] 정리
Python/라이브러리 2023. 1. 20. 06:37

✨ 계속 업데이트 예정 📚 개념 데이터 특징, 분석의 결과, 현재 상태 등 다양한 분석을 위해 시각화 하는 방법 중 하나 이것 외에도 여러가지 시각화 라이브러리 있음 🔎 불러오기 from matplotlib import pyplot as plt 💡 다양한 기능들 plt.figure( ) 그래프의 틀을 담당 figsize = (너비, 높이)로 전체 표의 사이즈 조절 가능 plt.figure(figsize = (10, 5)) plt.plot( ) 리스트나 넘파이 배열을 모두 2차원 그래프로 표현 추가적인 함수를 통해 그래프를 꾸며준다. plot(x변수, y변수, ...)로 표현하면 (x, y)에 해당하는 그패르르 그려준다. plot(y변수, ..._)로 표현하면 x변수는 0, 1, 2...의 정수가 자동으로..

article thumbnail
[Pytorch] nn.Linear( ), MLP
Python/라이브러리 2023. 1. 20. 06:24

선형 회귀식 개념 nn.Linear가 하나 있는 모델 선형식은 모든 데이터를 직선으로 예측하기 때문에 학습이 매우 빠르다는 장점이 있지만, 데이터 내 변수들은 일반적으로 비선형 관계를 갖기 때문에 선형 모델을 가지고 예측하는 것은 한계 코드 nn.Linear(N, M, bias = True) # N : 입력변수의 개수, M : 출력 변수의 개수 다층 신경망(Multi-layer Perceptron : MLP) 개념 nn.Linear( )을 줄지어 여러 층으로 구성된 깊은 신경망 코드 🎀 __init__ : 필요한 변수들을 정의 ⚠ torch.nn의 모듈(nn.Module)을 사용하기 위해서 반드시 super().__init__()을 해주어야 한다. super() : 상속받은 부모클래스를 의미한다. 부모 ..

article thumbnail
[Pytorch] 텐서(차원) 관련 함수 정리
Python/라이브러리 2023. 1. 18. 21:06

✨ 계속 추가 예정 🔎 텐서 합치기 torch.cat concatenate 해주는 함수로써 concatenate하고자 하는 차원을 증가시킨다. (단, 차원의 수는 유지) concatenate하고자 하는 차원을 지정해주면 그 차원으로 두 텐서의 차원을 더한 값으로 변경 dimension 지정해주지 않으면 default=0으로 설정 (예를 들어) 10x2, 10x2인 두 텐서가 있을 때, cat 기준이 0이면 20x2, 1이면 10x4 import torch batch_size, N, K = 3, 10, 256 x = torch.rand(batch_size, N, K) # [M, N, K] y = torch.rand(batch_size, N, K) # [M, N, K] output1 = torch.cat([..

article thumbnail
[Pytorch] 모듈 및 함수 정리
Python/라이브러리 2023. 1. 15. 19:17

계속 업데이트 예정 ✨ 🔎 모듈 nn.Parameter >>> self.cls_token = nn.Parameter(torch.randn(1, latent_vec_dim)) >>> self.pos_embedding = nn.Parameter(torch.randn(1, num_patches+1, latent_vec_dim)) 모델을 업데이트 할 때 같이 업데이트 되는 변수 사용자로부터 직접 받는 값은 아니지만 학습이 가능해야 하는 변수가 필요하다면 위와 같이 파라미터로 정의 ViT에서 cls_token, pos_embedding은 외부 변수가 아니지만 latent_vec_dim, num_patches를 이용해서 만들어 사용해야 한다. 🔎 함수 torch.repeat( ) vs torch.expand( ) ..

article thumbnail
[Pytorch] 파이토치에서 모델 출력하기
Python/라이브러리 2023. 1. 3. 15:13

💡 모델 구조 출력 간단하게 모델 구조 출력 그냥 내가 만들어 놓은 (모델)클래스 이름을 print하면 된다. torchsummary 라이브러리 ! pip install torchsummary summary(model, input_size = (channels, H, W)) inpust_size를 넣어서 output shape와 parameter 수 확인 가능 단, 모델 클래스에서 def __init__() 안에 self 말고 다른 파라미터가 있다면 그 값이 뭔지 정의해 주어야 한다. ex) input_shape = (3, 256, 256), num_rersidual_blocks=9 처럼 pytorch_model_summary 라이브러리 ! pip install pytorch-model-summary s..

profile on loading

Loading...