Просто предоставьте список с вашей отправной точкой:
start = [1.537, 1.143, 0.01604]
А затем используйте SciPy's optimize
( документы ):
from scipy.optimize import minimize
def my_function(args):
Theta0, Theta1, Theta2 = args
# here return the value of the function
optimized = minimize(my_function, start)
В приведенном вышеTheta0
, Theta1
и Theta2
- переменные.Из вопроса не ясно, являются ли они постоянными.Если это так, просто используйте приведенный выше код в качестве шаблона и распакуйте начальную точку в переменные, например,
from scipy.optimize import minimize
start = [1, 1]
def my_function(args):
X, y = args # Thetas constant
# here return the value of the function
optimized = minimize(my_function, start)
Примечание. Вы должны передавать только имя функции, а не вызов функции, т.е.
minimize(my_function, start) # works
minimize(my_function(....), start) # doesn't work