Python 如何使用Scipy最小化函数的一个参数?
我有以下功能Python 如何使用Scipy最小化函数的一个参数?,python,numpy,scipy,minimize,Python,Numpy,Scipy,Minimize,我有以下功能 def fun(X, alpha, y): #some stuff return J, gradient 我试着用这个最小化alpha,但什么也没发生 optimized_alpha = sp.optimize.minimize(lambda t: fun(X, t, y), alpha, method="Newton-CG", jac=True) 您可以使用functools.partial将函数转换为只有一个参数的部分函数。为了使其与scipy.optimi
def fun(X, alpha, y):
#some stuff
return J, gradient
我试着用这个最小化alpha,但什么也没发生
optimized_alpha = sp.optimize.minimize(lambda t: fun(X, t, y), alpha, method="Newton-CG", jac=True)
您可以使用
functools.partial
将函数转换为只有一个参数的部分函数。为了使其与scipy.optimize.minimize
一起工作,您需要将变量参数保持在最后一个位置:
def fun(X, y, alpha):
#some stuff
return J, gradient
然后:
from functools import partial
optfunc = partial(func, X, y)
optimized_alpha = sp.optimize.minimize(optfunc, alpha, method="Newton-CG", jac=True)