不确定这是否可行,但我正在尝试从具有位置和关键字参数的函数创建部分函数。问题是,我希望结果部分函数中的参数设置原始函数中的关键字参数之一 - 而不是它的位置参数之一。
这是原始函数的定义:
def cost_function(self, X, y, weights=None, lambda_param=0.0):
我想要一个可以传递给 scipy.minimise 的部分函数,这样我就可以找到最佳权重值(权重是一个 ndarray)。
所以我需要的是一个只有一个参数的部分函数(x 说):
例如
cost_func(x)
但我希望部分函数在调用原始函数时设置权重参数:
my_network.cost_function(X, y, weights=x, lambda_param=0.0)
(我知道我可以更改原始函数,以便 weights 参数是位置参数而不是关键字参数,但我不想这样做,因为我也想使用没有 weights 参数集的函数)。