Предположим, у меня есть сложная математическая функция со многими входными параметрами P = [p1, ..., pn]
. Предположим, что я могу профакторизовать функцию в блоках, например:оптимизация оценки функций кеширование частичного результата
f(P) = f1(p1, p2) * f2(p2, ... pn)
и, возможно,
f2(p2, ..., pn) = p2 * f3(p4) + f4(p5, ..., pn)
предположим, что я должен оценить f
для многих значения P
, например, я хочу найти минимум f
. Предположим, что я уже вычислил f(P)
, и мне нужно вычислить f(P')
, где P'
равно P
, за исключением p1
. В этом случае мне не нужно пересчитывать f2, f3, f4
, но только f1
.
Есть ли библиотека, которая поможет мне реализовать такую систему кеширования? Я знаю RooFit, но он ориентирован на статистическую модель, сделанную блоками. Я ищу что-то более общее. scipy/scikits и т. д., но и библиотеки C++ в порядке. Имеет ли эта техника имя?
Почему бы не использовать отображение (словарь)? –
Вы используете Python 2 или 3? – Cyphase
@ReutSharabani: Мне хотелось бы что-то более выразительное и автоматическое. –