Advertisement
HITOMIi23

Untitled

Feb 22nd, 2019
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.66 KB | None | 0 0
  1. def train(data,beta_0, lam = 0.0, max_iter = 100, eps = 0.01):
  2.     N = 2
  3.     data = data.repartition(N).cache()
  4.     beta_k = beta_0
  5.     k = 0    
  6.     while k < max_iter:
  7.         start = time.time()
  8.         grad = gradient(data,beta_k,lam)
  9.         print grad
  10.         gamma = lineSearch(lambda x: F(data,beta_k,lam), beta_k, grad, a=0.2,b=0.6)
  11.         beta = beta_k - gamma*gradient(data,beta_k,lam)
  12.         fun_val = F(data,beta,lam)
  13.         print k
  14.         print " %s seconds "%(time.time() - start)
  15.        
  16.         print fun_val
  17.         print np.linalg.norm(gradient(data,beta,lam))
  18.         beta_k = beta
  19.         k+=1
  20.        
  21.     return beta, gradNorm, k
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement