Ceres中Analytic Derivatives、 Numeric Derivatives、Automatic Derivatives区别

匿名 (未验证) 提交于 2019-12-02 23:38:02



与所有基于梯度的优化算法一样,Ceres Solver依赖于能够在其域中的任意点评估目标函数及其导数。实际上,定义目标函数及其雅可比矩阵是用户在使用Ceres Solver求解优化问题时需要执行的主要任务。正确有效地计算雅可比矩阵是获得良好性能的关键。

Ceres Solver在用户如何为求解器提供导数方面提供了相当大的灵活性。可以用:
Analytic Derivatives分析导数:用户自己手工或使用Maple或Mathematica等工具来计算衍生品,并在CostFunction中实现它们。
Numeric Derivatives数值导数:Ceres使用有限差分在数值上计算导数。
Automatic Derivatives自动导数:Ceres使用C ++模板和运算符重载自动计算分析导数。
应该使用这三种方法中的哪一种(单独或组合)取决于用户面对的情况和作出的权衡。

文章来源: https://blog.csdn.net/abcwoabcwo/article/details/90896076
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!