Learn practical skills, build real-world projects, and advance your career
import torch
import numpy as np
import pandas as pd
X = np.array([1,2,3,4,5], dtype = np.float32)
y = np.array([2,4,6,8,10], dtype = np.float32)
w = 0.0
b = 0.0
# Forward Function
def forward(X):
    return (w * X) + b
# Loss Function (MSE LOSS)
def loss(y_pred, y_test):
    return ((y_pred-y_test)**2).mean()
# Gradient Descent Function
# J = 1/N [(w*x+b) - y]**2
# dJ/dw = 1/N * 2x * [(w*x+b) - y]
# dJ/db = 1/N * 2  * [(w*x+b) - y]
def gradient(X, y, y_pred):
    dw = np.dot(2*X, y_pred-y).mean()
    db = np.dot(2, y_pred - y).mean()
    return (dw,db)