Эй, я воспроизвел вашу ошибку, у меня также были некоторые проблемы здесь. Но я думаю, что нашел основную проблему:
from scipy.optimize import minimize
import numpy as np
def error(w0,w1):
dataset = np.array([1,2,3,4,5,6,777,7,77,7,7,7])
total_error = 0
for i in range(1, 10):
total_error = total_error + (dataset[i] - (w0+ w1 * dataset[i]))**2
return total_error
x0 = np.array([[12],[22]])
res =minimize(error, x0[0],x0[1], method = "L-BFGS-B",bounds=[[0,10]])
Вы можете просто выбрать 2 границы, потому что ваша задача оптимизации является двухмерной. Вы определяете свои границы для своей «оси X» над входными точками данных, и вы можете просто обернуть или обрезать выходные данные до ваших «границ». Надеюсь, я смогу помочь