RSS란?
오차제곱합. 즉, (예측값-실제값)^2
def return_RSS(test_y, predicted):
RSS = 0
for i in range(len(test_y)):
RSS += (test_y[i] - predicted[i]) ** 2
return RSS
RSS를 0으로 초기화해준 후, test data set의 길이만큼 반복하며 실제값-예측값의 제곱을 RSS에 누적으로 합해준다.
def main():
train_X, train_y, test_X, test_y = load_data()
lr = Linear_Regression(train_X, train_y)
predicted = lr.predict(test_X)
RSS = return_RSS(test_y, predicted)
print("> RSS :",RSS)
plotting_graph(test_X, test_y, predicted)
lr을 Linear_Regression 메소드에 train 인자들을 넣어 선언해주고,
그 lr의 test_X에 대한 predict(예측값)을 predicted에 넣어준다.
아까 정의한 return_RSS()메소드에 test_y값과 predicted값을 넣어 RSS값을 계산해준다.
MSE란?
평균제곱오차
MAE란?
평균절대오차
from sklearn.metrics import mean_absolute_error
from sklearn.metrics import mean_squared_error
MAE = mean_absolute_error(test_y, predicted)
MSE = mean_squared_error(test_y, predicted)
sklearn library안에 mse, mae 함수가 존재하기 때문에 import 후 손쉽게 사용 가능
R^2란?
결정계수, 선형회귀분석에서 종속변수의 분산 중에서 독립변수로 설명되는 비율
from sklearn.metrics import r2_score
R_squared = r2_score(test_y, predicted)
이또한 sklearn에서 제공해주는 함수가 있기에 import 후 손쉽게 사용
참고 : LG Aimers
'AI > 기계학습' 카테고리의 다른 글
머신러닝과 딥러닝의 차이 (0) | 2024.05.20 |
---|---|
회귀 총정리 (0) | 2024.05.13 |
릿지(Ridge), 라쏘(Lasso), 엘라스틱넷(ElasticNet) 회귀 (0) | 2024.05.11 |
if __name__ == '__main__': 의 의미는? (0) | 2024.05.11 |
교차 검증 - 과적합 방지 기법 (0) | 2024.05.11 |