def sklearn_train(X, y):
model = BayesianRidge().fit(X, y)
beta = model.alpha_ # model.alpha_ is the noise precision ('beta' in Bishop)
alpha = model.lambda_ # model.lambda_ is the weights precision ('alpha' in Bishop)
PhiT_Phi = X.T * X
M = X.shape[1]
S_N = np.linalg.pinv(alpha*np.eye(M) + beta*PhiT_Phi)
m_N = beta * np.dot(S_N, np.dot(y, X).T)
w_opt = m_N
return (w_opt, alpha, beta, S_N)
#==================== CLASSES ====================#
评论列表
文章目录