簡単な数値計算ライブラリを公開しました

簡単な数値計算ライブラリを公開しました.
https://github.com/nkt1546789/softcream/blob/master/calculus.py

1変数関数に関しては,その偏導関数を求めることができます. n変数関数に関しては,その勾配やヘッシアンを求めることができます. これらは全て関数で返ってくるので,例えば,

H = Hessian(f)
H(x)

などとしてxにおけるヘッシアンの値を求めることができます.Hはあくまでも関数です. 全てこのような形をとってあります. また,微分を簡単に近似計算しているので,それほど正確ではありませんが,実用上は問題ないかと思われます. この辺りはまた改良していきたいと思います.

次に,勾配法やニュートン法も実装してあります. 勾配法は最急降下法のみで,極小値を求めることができます. ニュートン法は極値を求めることができます.極小か極大かはわからないので注意.

勾配法,ニュートン法において明示的に関数の勾配や,ヘッシアンを与える必要がないのがこのライブラリの特徴です.

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中