import numpy as np
X = np.array([[0,0,1],[1,1,1],[1,0,1],[0,1,1]])
y = np.array([[0],[1],[1],[0]])
w = np.random.random((3,1))deffp(X):
z = np.dot(X, w)return1/(1+ np.exp(-z))defbp(y, output):
error = y - output
slope = output *(1- output)return error * slope
for i inrange(100):
output = fp(X)
delta = bp(y, output)
w = w + np.dot(X.T, delta)print(fp([[1,0,0]]))