Я использую DE для оптимизации проблемы нейронной сети. И мне нужно получить доступ к переменным внутри объектной функции, чтобы создать график.
Я привожу здесь простой пример без NN, чтобы лучше объяснить мою проблему.
from scipy.optimize import differential_evolution
def obj_fun(x):
A= x[0]
B= x[1]
C= A*B+B**3
return C
solution=differential_evolution(obj_fun,
bounds=[(10,20),(5,15)],
strategy='rand1exp',
popsize=10,
maxiter=20,
polish=True,
disp=True,
seed=0)
Я хотел бы знаю, как я могу создать DataFrame, содержащий все A и B, опробованные DE, поэтому я могу создать трехмерный график для визуализации лучших пар A, B, которые обеспечивают лучшее C.
Я думаю, что это решение было бы что-то, что позволяет переменным, используемым внутри целевой функции, «извлекаться» из нее при каждом запуске для создания DF с использованием метода добавления. Но я действительно не знаю, как это сделать.
Я очень признателен за помощь в этом. Спасибо
Стив.