Advertisement
Guest User

Untitled

a guest
Apr 1st, 2020
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.79 KB | None | 0 0
  1. inputs = [[2,3],[8,10],[3,6],[4, 9]]
  2.  
  3. epochs = 10
  4. batch_size = 1
  5.  
  6. for epoch in range(epochs):
  7. slope = 0
  8. intercept = 0
  9. iterations = length/bach_size
  10. batch = inputs[0:batch_size]
  11. for i in range(iterations):
  12. slope, intercept = updateWeightsGD(slope, intercept, batch);
  13. batch = inputs[i*batch_size:i*batch_size + batch_size] //without replacement
  14.  
  15. updateWeightGD(slope, intercept, batch):
  16. learning_rate = 0.1
  17. slope_deriv = 0
  18. inercept_deriv = 0
  19. N = len(batch)
  20. for (point in batch):
  21. x = point[0]
  22. y = point[1]
  23. slope_deriv += -2*x * (y - (m*x + b))
  24. inercept_deriv += -2*(y - (m*x + b))
  25.  
  26. //only updating after, not updating in for loop above
  27. slope -= (m_deriv / float(N)) * learning_rate
  28. intercept -= (b_deriv / float(N)) * learning_rate
  29. return slope, intercept
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement