平成の桃太郎

ロゴ
トップブログ ≫ 数値微分をPythonでやってみる

数値微分をPythonでやってみる

前回のブログでは、自動微分を実際に手で計算することで、関数を四則演算の単純な組み合わせに分解し、その計算順序に従って微分をすることで、解析的な解き方と同じ答えが求められることを確認しました。

今回のブログは、自分で計算するのではなく、Pythonというプログラムを使って、パソコンで微分をしてみよう、という内容です。

いきなり、自動微分をプログラムするのは難しいので、まずは数値微分のプログラムの紹介です。ちなみに、僕はプログラミングはfortran77しかやったことないです。ただ、自宅のパソコンにfortranのコンパイラがないし、ネットで探すのも面倒くさいので、これを機に、Pythonで微分をやってみましょう。

classで任意の、例えばlogとか好きな関数を定義して、求めたい関数になるように組み合わせれば、その関数の導関数値を求めることができます。高校生の授業や大学受験で苦しんだ微分も、プログラミングを使えば簡単に解けます。ただ、パソコンではlim h→0というように無限大に小さいという概念は、現実的にはh=0.0001などと定義してあげる必要があり、誤差の原因になることと、数値微分はあくまで導関数値という数字を求めることであり、導関数を求めることができない点に注意が必要です。

 

CCI_000016

CCI_000017

ゼロから作るdeep learning 3 から、プログラムは持ってきました。とてもおもしろいので、出版したら買います。https://www.dropbox.com/sh/l9cw1jmozqel6ps/AAC0MVzIwjH9S6ge4AN6f0n-a?dl=0&preview=stage1.pdf#
3C033B14-2487-4660-BB45-C5ACBCE16DEE 行政課題の数理モデルを最適化をするための微分の基礎的な復習
4 自動微分を手動でやってみる
img_0147.png 水素を熱分解して生産する
DSC_0614 選挙の公費負担
images (2) 起業家が生まれる愛知県をつくります!
images (1) 【あるある】選挙に出る人に、あるあるな話し。