Когда я запускаю свой код, я получаю сообщение об ошибке выше при попытке получить оптимальные параметры для отрицательного логарифмического правдоподобия. Вот код L
def negative_LL(parameters, reward, choice):
V = [0, 0]
num_trials = 240
probabilities = np.ones(num_trials)
for i in range(0, num_trials):
c = choice[i]
if c == 1:
p_c = np.exp(parameters[1] * V[0]) / (np.exp(parameters[1] * V[0]) + np.exp(parameters[1] * V[1]))
V[0] = V[0] + parameters[0] * (reward[i] - V[0])
else:
p_c = 1 - np.exp(parameters[1] * V[0]) / (np.exp(parameters[1] * V[0]) + np.exp(parameters[1] * V[1]))
V[1] = V[1] + parameters[0] * (reward[i] - V[1])
probabilities[i] = p_c
return -np.sum(np.log(probabilities))
fitted_parameters = np.zeros((53, 2))
x_0 = np.array([0.5, 5])
for i in range(0, 53):
fitted_parameters[i, :] = sci.optimize.fmin_bfgs(negative_LL, x_0, args = (data_rewards[i, :],data_choices[i, :]))
Есть идеи, где ошибка?