如何使用Numpy计算导数?

如何使用Numpy计算导数?,第1张

如何使用Numpy计算导数

您有四个选择

  1. 有限差异
  2. 自动衍生工具
  3. 象征差异
  4. 手动计算导数。

有限的差异不需要外部工具,但容易出现数值误差,如果您处于多变量情况,则可能需要一段时间。

如果您的问题很简单,则使用符号区分是理想的选择。如今,符号方法变得越来越强大。SymPy是一个出色的项目,可以很好地与NumPy集成。查看autowrap或lambdify函数,或查看Jensen的博客文章,探讨类似问题。

自动导数非常酷,不易出现数字错误,但确实需要一些其他库(为此,google,有一些不错的选择)。这是设置选项中最可靠但也最复杂/最困难的。如果可以限制

numpy
语法,那么Theano可能是一个不错的选择。

这是使用SymPy的示例

In [1]: from sympy import *In [2]: import numpy as npIn [3]: x = Symbol('x')In [4]: y = x**2 + 1In [5]: yprime = y.diff(x)In [6]: yprimeOut[6]: 2⋅xIn [7]: f = lambdify(x, yprime, 'numpy')In [8]: f(np.ones(5))Out[8]: [ 2.  2.  2.  2.  2.]


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5673602.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存