본문 바로가기
728x90
반응형
SMALL

전체 글1632

[PyTorch] 모델 계층 (Layer) 모델 계층 (Layer) input_image = torch.rand(3,28,28) print(input_image.size()) # layer 확인 Out: torch.Size([3, 28, 28]) nn.Flatten nn.Flatten는 layer를 초기화하여 각 28x28의 2D image를 784 pixel 값을 갖는 연속된 array로 변환한다. (dim=0의 미니배치 차원은 유지) flatten = nn.Flatten() flat_image = flatten(input_image) print(flat_image.size()) Out: torch.Size([3, 784]) nn.Linear nn.Linear은 저장된 가중치 (weight)와 편향 (bias)을 사용하여 입력에 선형 변환 (l.. 2022. 1. 13.
[PyTorch] 신경망 모델 구성 신경망 모델 신경망은 데이터에 대한 연산을 수행하는 계층 (layer) / 모듈(module)로 구성되어 있다. torch.nn 네임스페이스는 신경망을 구성하는데 필요한 모든 구성 요소를 제공한다. PyTorch의 모든 module은 nn.Module 의 하위 클래스 (subclass)이다. 신경망은 다른 module (계층)로 구성된 module이다. 이 중첩된 구조는 복잡한 아키텍처를 쉽게 구축하고 관리할 수 있다. # FashionMNIST 데이터셋의 이미지들을 분류하는 신경망 import os import torch from torch import nn from torch.utils.data import DataLoader from torchvision import datasets, transfo.. 2022. 1. 13.
[PyTorch] 변형 (Transform) 변형 (Transform) 데이터가 항상 ML 알고리즘 학습에 필요한 최종 처리가 된 형태로 제공되지 않는다. 따라서, 변형 (transform)을 통해 데이터를 조작하고 학습에 적합하게 만든다. 모든 TorchVision 데이터셋들은 변형 logic을 갖는, 호출 가능한 객체 (callable)를 받는 매개변수 두 개 특징 (feature)을 변경하기 위한 transform 과 정답 (label)을 변경하기 위한 target_transform을 갖는다. torchvision.transforms 모듈은 주로 사용하는 몇 가지 transform을 제공한다. FashionMNIST의 feature은 PIL Image 형식이며, 정답 (label)은 정수 (integer)이다. 학습을 하려면 정규화 (norm.. 2022. 1. 13.
[PyTorch] DATASET / DATALOADER DATASET / DATALOADER 데이터 샘플을 처리하는 코드는 지저분(messy)하고 유지보수가 어려울 수 있다. 더 나은 가독성 (readability)과 모듈성 (modularity)을 위해 데이터셋 코드를 모델 학습 코드로부터 분리하는 것이 이상적다. PyTorch는 torch.utils.data.DataLoader와 torch.utils.data.Dataset의 두 가지 데이터 기본 요소를 제공하여 미리 준비해둔 (pre-loaded) 데이터셋 뿐만 아니라 가지고 있는 데이터를 사용할 수 있도록 한다. Dataset은 샘플과 정답 (label)을 저장하고, DataLoader는 Dataset을 샘플에 쉽게 접근할 수 있도록 순회 가능한 객체 (iterable)로 감싼다. PyTorch의 도메.. 2022. 1. 13.
[VPython] Parameters Parameters 표에서 "#"은 숫자의 placeholder로 사용된다. Changing Parameters using Variables 매개 변수는 객체를 변수에 할당하여 변경할 수 있다. = (parameter=value) Ex. my_box = box(pos=vector(0,0,0), color=color.red, opacity= parameter는 변수를 사용하여 먼저 호출하고 새 값과 동일하게 설정하여 변경할 수 있다. . = new_value Ex. my_box.pos = vector(1,2,3) # change position to (1,2,3) my_box.color = color.blue # change color to blue my_box.opacity = 0.5 # change o.. 2022. 1. 13.
[VPython] 2D / 3D Shapes 2D Shapes 2D shapes은 3D shapes에서 shape=으로 사용된다. extrusion(path=[vector(a,b,c),vector(e,f,g)] ,shape=shapes.() ) 도형의 구멍을 제거하기 위해 두께 parameter를 제거하면 된다. https://www.glowscript.org/docs/VPythonDocs/shapes.html VPython Help The shapes and paths libraries The shapes and paths libraries are mainly used together with the 3D extrusion object. The shapes library helps in creating complex 2D shapes by cre.. 2022. 1. 13.
[VPython] Shapes Box 단순 상자를 만들려면 box()를 입력하고 프로그램을 실행한다. box() 함수는 상자를 수정하기 위해 매개변수를 사용할 수 있다. Position pos parameter를 사용하여 상자를 배치한다. box(pos=vector(1, 2, 3))는 x = 1, y = 2, z = 3에 상자를 배치한다. Size size parameter를 사용하여 상자 크기를 지정한다. size=vector(width , height, depth ). 예를 들어, box(pos=vector(1, 2, 3)), size=vector(4, 5, 6)은 너비 = 4, 높이 = 5, 깊이 = 6으로 설정한다. Color color parameter를 사용하여 상자에 색상을 지정한다. color=color., colorN.. 2022. 1. 13.
[VPython] Basics Basics python은 일반적으로 알고 있듯이 대소문자를 구분하고 들여쓰기를 구분한다. VPython은 벡터(x, y, z)를 벡터로 사용하여 위치 및 크기와 같은 3차원 공간에서 x,y,z 값을 지정한다. Moving in 3D space 1. 3D 공간에서 회전하려면 마우스 오른쪽 버튼을 클릭하고 drag하거나 Ctrl 키를 누른 채로 drag한다. 2. 확대 및 축소하려면 스크롤하거나 Alt를 누른 상태에서 drag한다. 3. 이동하려면 shift를 누른 상태에서 drag한다. 2022. 1. 13.
[PyTorch] NumPy 변환 (Bridge) NumPy 변환 (Bridge) CPU 상의 tensor와 numpy array는 메모리 공간을 공유하기 때문에, 하나를 변경하면 다른 하나도 변경된다. # tensor를 numpy array로 변환하기 t = torch.ones(5) print(f"t: {t}") n = t.numpy() print(f"n: {n}") Out: t: tensor([1., 1., 1., 1., 1.]) n: [1. 1. 1. 1. 1.] tensor의 변경 사항이 numpy array에 반영된다. t.add_(1) print(f"t: {t}") print(f"n: {n}") Out: t: tensor([2., 2., 2., 2., 2.]) n: [2. 2. 2. 2. 2.] numpy array를 tensor로 변환하기 .. 2022. 1. 13.
[PyTorch] 텐서 속성 (Attribute) / 연산 (Operation) 속성 (Attribute) tensor = torch.rand(3,4) print(f"Shape of tensor: {tensor.shape}") print(f"Datatype of tensor: {tensor.dtype}") print(f"Device tensor is stored on: {tensor.device}") Out: Shape of tensor: torch.Size([3, 4]) Datatype of tensor: torch.float32 Device tensor is stored on: cpu tensor의 속성은 텐서의 모양 (shape), 자료형 (datatype) 및 어느 장치에 저장되는지를 나타낸다. 연산 (Operation) 전치 (transposing), 인덱싱 (indexin.. 2022. 1. 13.
728x90
반응형
LIST