출처: 차근차근 실습하며 배우는 파이토치 딥러닝 프로그래밍 경사하강법 구현 방법 예측 계산, 손실 계산, 경사 계산, 파라미터 수정 4개의 단계로 진행된다. 데이터 입력 및 변환 sampleData1 = np.array([ [166, 58.7], [176.0, 75.7], [171.0, 62.1], [173.0, 70.4], [169.0,60.1] ]) print(sampleData1) 데이터를 불러와서 독립변수, 종속변수를 나눠준다 x = sampleData1[:,0] y = sampleData1[:,1] print(x) #독립변수 print(y) #종속변수 [166. 176. 171. 173. 169.] [58.7 75.7 62.1 70.4 60.1] X = x - x.mean() Y = y - y...
출처: 차근차근 실습하며 배우는 파이토치 딥러닝 프로그래밍 파이토치의 최대 특징은 자동 미분 기능이다. 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 인수로 넘파이 배열..
출처: 차근차근 실습하며 배우는 파이토치 딥러닝 프로그래밍 클래스는 틀, 인스턴스는 이 틀로부터 생성된 개별적인 실체다. 클래스는 속성이라고 하는 클래스 안의 변수(파라미터)를 가지고, 함수(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 =..
https://www.acmicpc.net/problem/24313 24313번: 알고리즘 수업 - 점근적 표기 1 f(n) = 7n + 7, g(n) = n, c = 8, n0 = 1이다. f(1) = 14, c × g(1) = 8이므로 O(n) 정의를 만족하지 못한다. www.acmicpc.net 문제 오늘도 서준이는 점근적 표기 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자. 알고리즘의 소요 시간을 나타내는 O-표기법(빅-오)을 다음과 같이 정의하자. O(g(n)) = {f(n) | 모든 n ≥ n0에 대하여 f(n) ≤ c × g(n)인 양의 상수 c와 n0가 존재한다} 이 정의는 실제 O-표기법(https://en.wikipedia.org/wiki..
분명 다 배운건데 너무 옛날에 배워서 (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..
출처: 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..
https://www.acmicpc.net/problem/2869 2869번: 달팽이는 올라가고 싶다 첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000) www.acmicpc.net 문제 땅 위에 달팽이가 있다. 이 달팽이는 높이가 V미터인 나무 막대를 올라갈 것이다. 달팽이는 낮에 A미터 올라갈 수 있다. 하지만, 밤에 잠을 자는 동안 B미터 미끄러진다. 또, 정상에 올라간 후에는 미끄러지지 않는다. 달팽이가 나무 막대를 모두 올라가려면, 며칠이 걸리는지 구하는 프로그램을 작성하시오. 입력 첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000) 출력 첫째 줄에 달팽..