→ 2번 : 가중치는 직선의 기울기를 뜻하고 linear regression은 1개의 직선을
가지기 때문에 기울기가 1개이고 가중치도 1개이다.
→ 3번 : 선형 회귀는 x(독립 변수)와 y(종속 변수)사이에 선형적 상관관계가 있다고 가정하에 f를 추정하는 것이다. 선형 회귀, 다중 선형 회귀 모두 선형 회귀에 해당하기 때문에 두 보기 모두 선형적이다.
→ 5번 : [ A개의 행 , B개의 열 ] * [ C개의 행, D개의 열 ] = [ E개의 행, D개의 열 ]이다. 이때 A == D와 B == C 즉 왼쪽의 열과 오른쪽 행의 숫자가 같아야 행렬 계산이 이뤄진다.

[1,3] *[3,1] = [ 1, 1]
→ 3번 : 결정계수는 회귀식이 얼마나 정확한지를 나타내는 숫자이다. 정확도를 나타내는 지표인 반면, 오차는 점들이 모여 있는 밀도에 따라 오차의 크기가 다르다. 오차는 실제 - 예측을 의미하는데 오차가 클수록 값이 커지며 결정계수의 값은 모델의 예측력이 낮아 0에 가까워진다. 즉 반비례한다.
<aside> 💩 오goodgood
</aside>
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
df = pd.DataFrame({'month':[ 1, 3, 5,7,9,11],'stock':[130,128,132,140,153,150]})
df['line'] = 2*df['month'] + 125
reg = LinearRegression().fit(df['month'].to_numpy().reshape(-1, 1), df['line'])
predict = []
for i in range(len(df['month'])):
predict.append(reg.predict([[df['month'][i]]]))
print("%d 월 주가 = %d, 예측 주가 = %d"%(df['month'][i],df['stock'][i], reg.predict([[df['month'][i]]])))
mse = mean_squared_error(df['stock'], predict)
print("최종 mse :%d", %(mse))
print("12월 예상 주가 : %d"%(reg.predict([[12]])))
plt.scatter(df['month'],df['stock'], color='red')
plt.plot(x,y)
plt.show()
