[解決済み] Numpyを使って微分を計算するには?
2022-03-03 23:09:32
質問
関数の微分を計算するには、例えば次のようにします。
y = x 2 +1
使って
numpy
?
例えば、x=5での微分の値が欲しいとすると...。
どのように解決するのですか?
4つのオプションがあります。
有限差分は外部ツールを必要としませんが、数値誤差が生じやすく、多変数の場合、時間がかかることがあります。
問題が単純であれば、記号微分法は理想的です。最近は記号的手法もかなり強固になってきています。 SymPy は、NumPyとうまく統合された、このための優れたプロジェクトです。autowrapやlambdify関数を見てください。 Jensenが同じような疑問について書いたブログ記事 .
自動導関数はとてもクールで、数値誤差が生じにくいですが、いくつかの追加ライブラリが必要です(ググってみてください、良い選択肢がいくつかあります)。これは最も堅牢ですが、最も洗練され、セットアップが困難な選択肢です。 もし、自分自身を
numpy
構文の場合
テアノ
がいいかもしれません。
SymPyを使用した例です。
In [1]: from sympy import *
In [2]: import numpy as np
In [3]: x = Symbol('x')
In [4]: y = x**2 + 1
In [5]: yprime = y.diff(x)
In [6]: yprime
Out[6]: 2⋅x
In [7]: f = lambdify(x, yprime, 'numpy')
In [8]: f(np.ones(5))
Out[8]: [ 2. 2. 2. 2. 2.]
関連
-
[解決済み】SyntaxError: デフォルト以外の引数がデフォルトの引数に続く
-
[解決済み】 'numpy.float64' オブジェクトは反復可能ではない
-
[解決済み] for'ループでインデックスにアクセスする?
-
[解決済み] 関数内でグローバル変数を使用する
-
[解決済み] PandasでDataFrameの行を反復処理する方法
-
[解決済み] リストが空かどうかを確認するにはどうすればよいですか?
-
[解決済み] 環境変数の値にアクセスする方法
-
[解決済み] モジュールの関数名(文字列)を使って、モジュールの関数を呼び出す。
-
[解決済み】ネストされたディレクトリを安全に作成するには?
-
[解決済み】2つの辞書を1つの式でマージする(辞書の和をとる)には?)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
PythonによるLeNetネットワークモデルの学習と予測
-
ピローによる動的キャプチャ認識のためのPythonサンプルコード
-
Python カメの描画コマンドとその例
-
Python百行で韓服サークルの画像クロールを実現する
-
任意波形を生成してtxtで保存するためのPython実装
-
[解決済み】TypeError: unhashable type: 'numpy.ndarray'.
-
[解決済み】DataFrameのコンストラクタが正しく呼び出されない!エラー
-
[解決済み】numpy: true_divide で無効な値に遭遇
-
[解決済み】Flask ImportError: Flask という名前のモジュールがない
-
[解決済み】cアンダースコア式`c_`は、具体的に何をするのですか?