티스토리 뷰

 

 

[인공지능] Numpy 기본 사용 + 딥러닝 express 연습문제 2장

아래 글에 이어 작성된 글입니다. [인공지능] 딥러닝과 Python 라이브러리 본격적으로 인공지능을 실습하기 전 Python의 여러 라이브러리를 소개합니다. Python(파이썬)은 머신러닝 프로젝트의 언어

munak.tistory.com

 

 

 Numpy만을 이용해 경사하강법을 구현합니다.

 


 


  
import numpy as np
import matplotlib.pyplot as plt
X = np.array([0.0, 1.0, 2.0])
y = np.array([3.0, 3.5, 5.5])
W = 0 # 기울기
b = 0 # 절편
lrate = 0.01 # 학습률
epochs = 1000 # 반복 횟수
n = float(len(X)) # 입력 데이터의 개수
# 경사 하강법 실행
for i in range(epochs):
y_pred = W * X + b # 예측값
dW = (2 / n) * sum(X * (y_pred - y))
db = (2 / n) * sum(y_pred - y)
W = W - lrate * dW # 기울기 수정
b = b - lrate * db # 절편 수정
# 기울기와 절편을 출력한다.
print(W, b)
# 예측값을 만든다.
y_pred = W * X + b
# 입력 데이터를 그래프 상에 찍는다.
plt.scatter(X, y)
# 예측값은 선그래프로 그린다.
plt.plot([min(X), max(X)], [min(y_pred), max(y_pred)], color='red')
plt.show()

 

 

 


  
1.2532418085611319 2.745502230882486

 

 

감사합니다.

 

 

 


 

공부한 내용을 복습/기록하기 위해 작성한 글이므로 내용에 오류가 있을 수 있습니다.

댓글
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
Total
Today
Yesterday