Бессмысленно использовать алгоритмы оптимизации на основе градиента, если вы можете предоставить только числовой градиент? Если нет, зачем в первую очередь указывать числовой градиент, если для самой библиотеки оптимизации достаточно просто выполнить конечное дифференцирование?
[РЕДАКТИРОВАТЬ]
Просто чтобы уточнить, мой вопрос действительно в более общем смысле, чем конкретное применение. Хотя моя область применения - оптимизация вероятности в различных статистических рамках.
Моя проблема с автоматическим дифференцированием заключается в том, что всегда есть подвох. Либо библиотека AD не может распространяться на вызовы из внешних библиотек (например, BLAS), либо вам приходится переделывать свой рабочий процесс настолько радикально, что ему становится трудно иметь дело ... особенно если вы работаете с языками, чувствительными к типу. Мои проблемы с AD - это отдельная проблема. Но я хочу верить!
Думаю, мне нужно лучше сформулировать свой вопрос, но я плохо справляюсь с этим. Если у вас есть возможность либо использовать алгоритм оптимизации без производных, либо алгоритм оптимизации на основе производных с оговоркой, что я могу дать ему только числовой градиент, какой из них в среднем будет лучше?