Python

Python

파이토치 기본 기능

출처: 차근차근 실습하며 배우는 파이토치 딥러닝 프로그래밍 파이토치의 최대 특징은 자동 미분 기능이다. 0계 텐서는 스칼라, 1계 텐서는 벡터, 2계 텐서는 행렬을 뜻함. import torch r0 = torch.tensor(1.0).float() print(type(r0)) print(r0.dtype) torch.float32 텐서 변수가 생성될 때는 반드시 뒤에 float()을 호출해서 float32로 변환해야한다.0계 텐서이기 때문에 []가 비어있다. 만약 2행 3열인 2계텐서가 있으면 Torch.Size([2,3])이 출력된다. print(r0.shape) print(r0.data) torch.Size([]) tensor(1.) 1계텐서는 다음과 같다. torch.tensor 인수로 넘파이 배열..

Python

객체지향 프로그래밍 복습

출처: 차근차근 실습하며 배우는 파이토치 딥러닝 프로그래밍 클래스는 틀, 인스턴스는 이 틀로부터 생성된 개별적인 실체다. 클래스는 속성이라고 하는 클래스 안의 변수(파라미터)를 가지고, 함수(def)로 정의되는 것은 메서드라고 한다. Point import matplotlib.pyplot as plt import matplotlib.patches as patches class Point: def __init__(self,x,y): self.x = x self.y = y def draw(self): plt.plot(self.x,self.y,marker='o',markersize=10,c='k') __init__은 초기화 처리를 위한 함수, self는 인스턴스 자신이다. p1 = Point(2,3) p2 =..

Python

구멍 숭숭난 기초 지식채우기 II

출처: Do it 점프투 파이썬 dir은 객체가 자체적으로 가지고 있는 변수나 함수를 보여줌. print(dir([1, 2, 3])) print(dir({'1', 'a'})) divmod는 7나누기 3은 몫은 2, 나머지는 1 몫과 나머지를 튜플 형태로 돌려주는 함수다. print(divmod(7, 3)) # (2, 1) print(divmod(1.3, 0.2)) # (6.0, 0.09999...) eval은 실행 가능한 문자열(1+2,'hi'+'a' 같은 것)을 입력으로 받아 문자열을 실행한 결과값을 돌려주는 함수이다. print(eval('1+2')) # 3 print(eval("'hi' + 'a'")) # 'hia' print(eval('divmod(4, 3)')) # (1, 1) isinstanc..

Python

구멍 숭숭난 기초 지식 채우기

분명 다 배운건데 너무 옛날에 배워서 (3년전) 기억이 날듯말듯하는 파이썬 기초 문법들 다시 정리하기,, 출처: Do it 점프 투 파이썬 "%10s" % "hi" ' hi' 전체 길이가 10개인 문자열 공간에서 대입되는 값을 오른쪽으로 정렬하고 나머지는 공백으로 남김 즉 공백은 8개 h i "%-10sjane" % "hi" hi에서 jane 전까지의 길이는 10개이고, 공백은 8개다. format 함수 number = 10 day = "three" "I ate {0} apples. so I was sick for {1} days.".format(number, day) I ate 10 apples. so I was sick for three days. format 함수를 통한 포매팅 시 인덱스 항목이 f..

Python

클래스

출처: Do it! 점프 투 파이썬 class Calculator : def __init__(self) : self.result = 0 def add(self, num) : self.result += num return self.result cal1 = Calculator() cal2 = Calculator() calculator 클래스로 만든 별개의 계산기 cal1 cal2(객체)가 각 역할을 수행한다. 클래스로 만든 객체를 인스턴스라고 한다. 여기서 cal1, cal2는 객체, cal1, cal2의 객체는 Calculator의 인스턴스이다. 인스턴스는 특정 객체(cal1,cal2)가 어떤 클래스(Calculator)의 객체인지 관계 위주로 설명할 때 사용한다. 즉 cal1,cal2는 Calculato..

Python

pytorch 이미지 모델링 II

모델 정의 nn.Module 상속 클래스 정의 nn.Module을 상속받는 클래스 정의 __init__(): 모델에서 사용될 모듈과 활성화 함수 등을 정의 forward(): 모델에서 실행되어야 하는 연산을 정의 class Model(nn.Module): def __init__(self,inputs):#초기화 super(Model,self).__init__() self.layer = nn.Linear(inputs,1) self.activation = nn.Sigmoid() def forward(self,x): x = self.layer(x) x = self.activation(x) return x model = Model(1) print(list(model.children())) print(list(mo..

Python

pytorch 이미지 모델링

토치비전(torchvision)은 파이토치에서 제공하는 데이터셋들이 모여있는 패키지 transforms: 전처리할 때 사용하는 메소드 (https://pytorch.org/docs/stable/torchvision/transforms.html) transforms에서 제공하는 클래스 이외는 일반적으로 클래스를 따로 만들어 전처리 단계를 진행 import torch from torch.utils.data import Dataset,DataLoader import torchvision.transforms as transforms from torchvision import datasets DataLoader의 인자로 들어갈 transform을 미리 정의할 수 있고, Compose를 통해 리스트 안에 순서대로 ..

Python

pytorch 기본문법 II

강의 출처: https://www.youtube.com/watch?v=k60oT_8lyFw&list=LL&index=1&t=4103s 텐서의 조작(manipulations) 인덱싱(Indexing): NumPy처럼 인덱싱 형태로 사용가능 x = torch.Tensor([[1,2],#0위치 [3,4]])#1위치 print(x) print(x[0,0]) print(x[0,1]) print(x[1,0]) print(x[1,1]) print(x[:, 0]) print(x[:, 1]) print(x[0:, ]) print(x[1:, ]) tensor([[1., 2.], [3., 4.]]) tensor(1.) tensor(2.) tensor(3.) tensor(4.) tensor([1., 3.]) tensor([2..

해파리냉채무침
'Python' 카테고리의 글 목록