기울기와 오차의 관계 - y = ax + b에서 기울기 a와 오차는 이차 함수 관계 - 기울기를 너무 크게 잡거나 너무 작게 잡으면 오차 커짐 - 적절한 기울기(m)를 찾았을 때 오차 최소화 경사 하강법(gradient decent) - 오차의 변화에 따라 이차 함수 그래프를 만들고 적절한 학습률을 설정해 미분 값이 0인 지점을 구하는 것 계산법 1. 어느 한 점(a1)에서 미분을 구한다 2. 구한 기울기의 반대 방향(기울기가 +면 음의 방향, -면 양의 방향)으로 얼마간 이동시킨 점(a2)에서 미분을 구한다 3. 앞에서 구한 미분 값이 0이 아니면 1, 2번 반복 학습률(learning rate) : 매회 얼마의 강도로 업데이트 되어야 하는지 제어하는 척도 : 기울기를 바꿔 이동할 때 적절한 학습률을 ..
평균 제곱 오차(Mean Square Error, MSE) - 실제 데이터와 예측 데이터 차이(=오차)의 제곱에 대해 평균을 취한 것 - 입력 값이 여러 개인 경우, 가설을 세우고 값이 조건에 충족하는지 판단해서 조금씩 수정해 나가면서 오차가 최소가 될 때까지 반복하는 방법 사용 - 값을 조금씩 수정해 나가는 과정에서 오차를 평가하는 방법이 평균 제곱 오차 - 평균 제곱 오차에서 구한 값을 바탕으로 오차 최소화되는 값 구해야 함 계산법 1. 각 데이터에서 오차를 구한다 2. 각 오차 값을 제곱한 후, 모두 더한다(부호가 있으면 정확한 오차 구하기 힘드므로 제곱 사용) 3. 오차의 제곱 합을 원소의 총 개수로 나눈다 예제에 적용 1. y = 3x + 76이라는 직선의 방정식을 가설로 세웠을 때, 오차는 공..
선형 회귀(linear regression) 정의 - 독립 변수 x를 사용해 종속 변수 y의 움직임을 예측하고 설명 - 하나의 x값으로 y값을 설명할 수 있다면 단순 선형 회귀, x값이 여러 개 필요하면 다중 선형 회귀 독립 변수 : 'x값이 변함에 따라 y값이 변한다' 에서 독립적으로 변할 수 있는 x값 종속 변수 : 'x값이 변함에 따라 y값이 변한다' 에서 독립 변수에 따라 종속적으로 변하는 y값 단순 선형 회귀 예제 - 중간고사를 본 4명의 학생의 공부한 시간과 성적 조사 - 독립 변수 : 공부한 시간 / 종속 변수 : 성적 공부한 시간 2 4 6 8 성적 81 93 91 97 # maplotlib 라이브러리 사용해서 그래프로 나타내기 import matplotlib.pyplot as plt x ..
일차 함수 함수 : y = f(x) : 변수 x와 y가 있을 때, x가 변하면 이에 따라 y는 어떤 규칙으로 변하는지 나타냄 일차 함수 : y = ax + b (a ≠ 0) : y가 x에 관한 일차식으로 표현되는 함수(x가 일차로 남으려면 a는 0이 아니어야 함) 기울기 : y = ax + b : x 값이 증가할 때 y 값이 어느 정도 증가하는지에 따라 그래프가 기울어진 정도 y 절편 : y = ax + b : 그래프가 y축과 만나는 지점 이차 함수 이차 함수 : y = ax^2 (a ≠ 0) : y가 x에 관한 이차식으로 표현되는 함수 최솟값 : y = a(x-p)^2 + q에서 (p, q) : 포물선의 맨 아래에 위치한 지점 : 최소 제곱법 공식으로 쉽게 알아낼 수 있음 미분 순간 변화율(미분 계수)..
1. 환경 준비 - 딥러닝을 구동하거나 데이터를 다루는 데 필요한 라이브러리 호출 import : 라이브러리 호출하는 명령어 from (라이브러리명) import (함수명) : 라이브러리에 있는 모듈 중 일부만 호출하고 싶을 때 사용 import (라이브러리명) as (별명) : 불러온 라이브러리의 이름을 변경 from tensorflow.keras.models import Sequential # 텐서플로의 케라스 API에서 필요한 함수 호출 from tensorflow.keras.layers import Dense # 데이터를 다루는데 필요한 라이브러리 호출 import numpy as np 2. 데이터 준비 - 데이터를 불러와 사용할 수 있도록 준비 loadtxt() : csv 파일 불러옴 : 넘파이..
- Ball 클래스(터틀 그래픽) from turtle import * class Ball(Turtle): def __init__(self, color, speed, size): self.turtle = Turtle() self.turtle.shape("circle") self.x = 0 self.y = 0 self.color = color self.turtle.color(color, color) self.xspeed = speed self.yspeed = speed self.size = size def move(self): self.x += self.xspeed self.y += self.yspeed self.turtle.goto(self.x, self.y) ball = Ball("red", 1, 2)..