가장 쉽게 배우는 머신러닝 1주차 : 선형 회귀(Linear Regression)

wwoo·2021년 6월 27일
0

머신러닝

목록 보기
2/10
post-thumbnail

📚2. 선형 회귀(Linear Regression)

📘1. 선형 회귀와 가설, 손실함수

💡 시험 전 날 마신 커피 잔 수에 따라 시험 점수를 예측할 수 있을까?

위의 표와 같은 실험결과(dataset)이 있고 그것을 아래와 같은 그래프로 표시할 수 있다.

우리는 이 그래프를 보고 임의의 직선 1개로 이 그래프를 비슷하게 표현할 수 있다고 가설을 세울 수 있다. 이 선형 모델은 수식으로 아래와 같이 표현할 수 있고 이를 선형회귀 가설이라고 한다.

H(x)=Wx+bH(x) = Wx + b

📌 머신러닝에서 모든 문제는 가설이 있어야만 하고 이 가설은 사람이 정한다.

정확한 시험점수를 예측하기 위해 우리가 만든 가설과 정답의 거리가 가까워지도록 해야한다.(mean squared error)

Cost=1Ni=1N(H(xi)yi)2Cost = \frac{1}{N}\textstyle\sum_{i=1}^N(H(x_i)-y_i)^2

여기서 H(x)는 우리가 가정한 직선이고 y는 정답 포인트라고했을 때 H(x)와 y의 거리(또는 차의 절대값)가 최소가 되어야 이 모델이 잘 학습되었다고 말할 수 있다.

여기서 우리가 임의로 만든 직선 H(x)를 가설(Hypothesis)이라고 하고 Cost를 손실 함수(Cost or Loss function)라고 한다.

📌 데이터를 보고 "어떤 함수에 비슷한 모양일 것이다"라고 가설을 세우고 그에 맞는 손실 함수를 정의한다. 어떤 손실 함수가 좋은지는 실험을 통해 찾아가야 한다. 우리가 하는 일은 여기서 끝이고 기계는 우리가 정의한 손실 함수를 보고 우리의 가설에 맞출 수 있도록 열심히 계산하는 일을 한다. 즉, 기계는 W,b를 계속 바꿔가며 Cost가 최소가 되는 방향으로 학습을 한다.

📙2. 다중 선형 회귀(Multi-variable linear regression)

선형회귀와 같지만 입력 변수가 여러개이다.

입력값이 2개 이상되는 문제를 선형 회귀로 풀고 싶을 때 다중 선형 회귀를 사용한다.

가설 : H(x1,x2,...,xn)=w1x1+w2x2+...+wnxn+b H(x_1,x_2,...,x_n)=w_1x_1+w_2x_2+...+w_nx_n+b

손실함수 : Cost=1N(H(x1,x2,x3,...xn)y)2Cost=\frac{1}{N}\textstyle\sum(H(x_1,x_2,x_3,...x_n)-y)^2

0개의 댓글