def fc_kernel(X, Y, copy_X=True, W=None, B=None, ret_reg=False,fit_intercept=True):
"""
return: n c
"""
assert copy_X == True
assert len(X.shape) == 2
if dcfgs.ls == cfgs.solvers.gd:
w = Worker()
def wo():
from .GDsolver import fc_GD
a,b=fc_GD(X,Y, W, B, n_iters=1)
return {'a':a, 'b':b}
outputs = w.do(wo)
return outputs['a'], outputs['b']
elif dcfgs.ls == cfgs.solvers.tls:
return tls(X,Y, debug=True)
elif dcfgs.ls == cfgs.solvers.keras:
_reg=keras_kernel()
_reg.fit(X, Y, W, B)
return _reg.coef_, _reg.intercept_
elif dcfgs.ls == cfgs.solvers.lightning:
#_reg = SGDRegressor(eta0=1e-8, intercept_decay=0, alpha=0, verbose=2)
_reg = CDRegressor(n_jobs=-1,alpha=0, verbose=2)
if 0:
_reg.intercept_=B
_reg.coef_=W
elif dcfgs.fc_ridge > 0:
_reg = Ridge(alpha=dcfgs.fc_ridge)
else:
_reg = LinearRegression(n_jobs=-1 , copy_X=copy_X, fit_intercept=fit_intercept)
_reg.fit(X, Y)
if ret_reg:
return _reg
return _reg.coef_, _reg.intercept_
评论列表
文章目录