Improving on Gradient Descent Algorithm
For Python 3.x you do not need to specify the encoding type you chose because it chips by default with UTF-8. So you can safely remove the directive: # -*- coding: utf-8 -*-
You should use timeit over time because the first one is more accurate.
As per PEP 8, you should leave 2 blank lines between the last import statement and the start of your code.
Better if you run this module by putting the guard if __name__ == "__main__"
The inline comments you used would be better used as docstrings instead.