The following comment really confused me:
# Use matrix cross product (*) to simultaneously
# calculate the derivative for each weight
d_w1 = -x1*(targets - predictions)
...
https://ml-cheatsheet.readthedocs.io/en/latest/linear_regression.html#id4
In Numpy the cross product method would be np.cross() and not *, both versions give different results. Which is the correct version?