from keras.models import Sequential
from keras.layers import Dense, Activation
def gradient_descent(X, y, learning_rate=0.01, num_iterations=100):
m = len(y)
theta = np.zeros(X.shape[1])
for iteration in range(num_iterations):
gradients = 2/m * X.T.dot(X.dot(theta) - y)
theta = theta - learning_rate * gradients
return theta
ZnJvbSBrZXJhcy5tb2RlbHMgaW1wb3J0IFNlcXVlbnRpYWwKZnJvbSBrZXJhcy5sYXllcnMgaW1wb3J0IERlbnNlLCBBY3RpdmF0aW9uCmRlZiBncmFkaWVudF9kZXNjZW50KFgsIHksIGxlYXJuaW5nX3JhdGU9MC4wMSwgbnVtX2l0ZXJhdGlvbnM9MTAwKToKICAgIG0gPSBsZW4oeSkKICAgIHRoZXRhID0gbnAuemVyb3MoWC5zaGFwZVsxXSkKICAgIAogICAgZm9yIGl0ZXJhdGlvbiBpbiByYW5nZShudW1faXRlcmF0aW9ucyk6CiAgICAgICAgZ3JhZGllbnRzID0gMi9tICogWC5ULmRvdChYLmRvdCh0aGV0YSkgLSB5KQogICAgICAgIHRoZXRhID0gdGhldGEgLSBsZWFybmluZ19yYXRlICogZ3JhZGllbnRzCiAgICAKICAgIHJldHVybiB0aGV0YQo=