Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def train(data,beta_0, lam = 0.0, max_iter = 100, eps = 0.01):
- N = 2
- data = data.repartition(N).cache()
- beta_k = beta_0
- k = 0
- while k < max_iter:
- start = time.time()
- grad = gradient(data,beta_k,lam)
- print grad
- gamma = lineSearch(lambda x: F(data,beta_k,lam), beta_k, grad, a=0.2,b=0.6)
- beta = beta_k - gamma*gradient(data,beta_k,lam)
- fun_val = F(data,beta,lam)
- print k
- print " %s seconds "%(time.time() - start)
- print fun_val
- print np.linalg.norm(gradient(data,beta,lam))
- beta_k = beta
- k+=1
- return beta, gradNorm, k
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement