더북(TheBook)

오차 함수를 a1, a2, b로 각각 편미분한 값을 a1_diff, a2_diff, b_diff라고 할 때 이를 구하는 식은 다음과 같습니다.

n = len(x1)                           # 변수의 총 개수입니다.
a1_diff = (2/n) * sum(-x1 * (error))  # 오차 함수를 a1로 편미분한 값입니다. 
a2_diff = (2/n) * sum(-x2 * (error))  # 오차 함수를 a2로 편미분한 값입니다. 
b_diff = (2/n) * sum(-(error))        # 오차 함수를 b로 편미분한 값입니다. 

학습률을 곱해 기존의 기울기와 절편을 업데이트한 값을 구합니다.

a1 = a1 - lr * a1_diff    # 학습률을 곱해 기존의 a1 값을 업데이트합니다.
a2 = a2 - lr * a2_diff    # 학습률을 곱해 기존의 a2 값을 업데이트합니다.
b = b - lr * b_diff       # 학습률을 곱해 기존의 b 값을 업데이트합니다.

이제 실제 점수와 예측된 점수를 출력해서 예측이 잘되는지 확인합니다.

print("실제 점수: ", y)
print("예측 점수: ", y_pred)

지금까지의 코드를 정리하면 다음과 같습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.