Advertisement
Guest User

Untitled

a guest
Sep 20th, 2014
325
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.62 KB | None | 0 0
  1. def fit_polynomial_bayes(x, t, M, alpha, beta):
  2.     phi = np.vander(x,M+1)
  3.     Snpart1 =(alpha*np.identity(M+1))
  4.     Snpart2 = (beta*phi.T.dot(phi))
  5.     Sn = inv(Snpart1+Snpart2)
  6.     Mn = beta*Sn.dot(phi.T).dot(t)
  7.     return Mn, Sn
  8.  
  9. def predict_polynomial_bayes(x, m, S, beta):
  10.     N = S.shape[0]
  11.     phi = np.vander(x, N=N)
  12.     sigma =  1/beta + np.dot(np.dot(phi.T, S), phi)
  13.     predM = np.dot(m.T, phi)
  14.     return predM, sigma
  15.  
  16.  
  17. x, t = gen_sinusoidal2(7)
  18. M= 5
  19. alpha = 0.5
  20. beta = 1/(0.2**2)
  21. Mn, Sn = fit_polynomial_bayes(x,t,M,alpha, beta)
  22.  
  23. for  i in range(len(x)):
  24.     predict_polynomial_bayes(x[i], Mn, Sn, beta)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement