Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python scipy最小化';numpy.ndarray和#x27;对象不可调用_Python_Numpy_Optimization_Scipy_Minimize - Fatal编程技术网

Python scipy最小化';numpy.ndarray和#x27;对象不可调用

Python scipy最小化';numpy.ndarray和#x27;对象不可调用,python,numpy,optimization,scipy,minimize,Python,Numpy,Optimization,Scipy,Minimize,我运行的一段代码有问题。它的目的是通过scipy.opimize的带约束的最小化函数找到最小化函数的向量 然而,我一直被抛出以下错误 line 495, in minimize constraints, callback=callback, **options) line 378, in _minimize_slsqp fx = func(x), line 292, in function_wrapper return function(*(wrapper_args + args), TypeE

我运行的一段代码有问题。它的目的是通过scipy.opimize的带约束的最小化函数找到最小化函数的向量

然而,我一直被抛出以下错误

line 495, in minimize
constraints, callback=callback, **options) line 378, in _minimize_slsqp
fx = func(x), line 292, in function_wrapper
return function(*(wrapper_args + args), TypeError: 'numpy.ndarray' object is not callable
对于我做错了什么,我有点困惑。以下代码包含要最小化的函数和约束函数

def constraint1(w):
goal = 1
for i in range(w.shape[0]):
    goal - w[i]
return goal 
def lasso_var(w, *args):
var = w.T.dot(args[0]).dot(w)+args[1]*sum(abs(w))
return var

con1 = {'type': 'eq', 'fun': constraint1}

from scipy.optimize import minimize

sol = minimize(lasso_var(w, *(train_sig, 5)),\
            x0=w_equal,\
           constraints=con1) 
其中w是向量,而train_sig是矩阵


非常感谢你能给予的一切帮助

您应该将函数本身传递给
最小化
,而不是计算值

您的代码不是一个。所以我不知道你的确切意图。但只要这样使用:

sol = minimize(lambda w: lasso_var(w, *(train_sig, 5)),
        x0=w_equal,
       constraints=con1) 

杰出的。这正是我所希望的。非常感谢你。我想我应该为自己如此虔诚地追随网络榜样而感到羞耻。