諸概念の迷宮(Things got frantic)

歴史とは何か。それは「専有(occupation)=自由(liberty)」と「消費(demand)=生産(Supply)」と「実証主義(positivism)=権威主義(Authoritarianism)」「敵友主義=適応主義(Snobbism)」を巡る虚々実々の駆け引きの積み重ねではなかったか。その部分だけ抽出して並べると、一体どんな歴史観が浮かび上がってくるのか。はてさて全体像はどうなるやら。

【雑想】統計言語R「僕にも偏微分(Partial Derivative)方程式くらい解けるんだ!!」

f:id:ochimusha01:20190506173016j:plain

なるほど…ニューラルネットワークが学習するのは「重みWeight)」であり、それは学習中の範囲において「変数」、利用中の範囲において「定数」として機能する訳ですからある意味、当然といえば当然の話?

偏微分(partial derivative) - Wikipedia

数学の多変数微分積分学において、多変数関数に対し一つの変数のみに関する(それ以外の変数は定数として固定する微分である(微分では全ての変数を動かしたままにするのと対照的である)。ベクトル解析や微分幾何学などで用いられる。

偏微分記号 ∂ が数学において用いられた最初の例の一つは、1770年以降マルキ・ド・コンドルセによるものだが、それは偏差分の意味で用いられたものである。現代的な偏微分記法はアドリアン=マリ・ルジャンドルが導入しているが、後が続かなかった。これを1841年に再導入するのがカール・グスタフヤコブ・ヤコビである。

あ、コンドルセ侯爵、お久し振り…むしろ古典的自由主義のにおける教育平等論で有名な人ですね。

そして本題…

偏微分(Partial Derivative)の意味とやり方

偏微分とは、n 変数関数 f(x1, x2, …, xn) のある一つの変数 xi 以外の n-1 個の変数の値を固定することで、f を xi だけの関数とみて、この関数を xi について微分することです。

簡単な実例を解いてみる。

偏微分をするには、偏微分する一つの変数を除く、他のすべての変数を定数とみて微分します。具体的な偏微分のやり方は、1 変数の微分のやり方が分かっていれば難しくありません。

例として、次の問題に示した 2変数関数を偏微分してみましょう。

2変数関数
f(x,y)=x^2*y+3*x*y^5+x^3
を、変数xとyのそれぞれで偏微分せよ。

まずは、変数xで偏微分するときの計算方法を説明します。変数xで偏微分するには、他の変数、この問題では変数yを定数とみて、関数をxで微分します。

分かりやすいように、問題に示された関数で「定数とみる部分」を括弧でくくってみましょう。

f(x,y)=x^2*y+3*x*y^5+x^3=(y)*x^2+(3*y^5)*x+x^3

上の式で括弧で囲った部分は定数とみて、この式を xで微分すれば、それはxで偏微分したことになります。

f(x,y)=(y)*2*x+(3*y^5)*1+3x^2=2*x*y+3*y^5+3x^2

同じ関数を変数 y で偏微分してみましょう。先ほどと同様に、定数として扱う部分を括弧でくくってから計算すると、次のようになります。

f(x,y)=x^2*y+3*x*y^5+x^3=y(*x^2)+y^5(*3*x)+1(*x^3)
f(x,y)=1(*x^2)+5*y^4(*3*x)+0=x^2+15y^4*x

偏微分のやり方を理解できたでしょうか?微分のやり方が分かっていれば難しいものではないですね。

統計言語Rにおける検証

#統計言語Rにおける偏微分(Partial Derivative)
D01<-expression(x^2*y+3*x*y^5+x^3)
#xによる偏微分
D(D01,"x")
2 * x * y + 3 * y^5 + 3 * x^2
#yによる偏微分
D(D01,"y")
x^2 + 3 * x * (5 * y^4)

それにつけてもRの微分関数、いかにも「あくまでオマケです」というポンコツ具合がたまりません。何この「やれといわれた事ならちゃんとやりましたよ」的開き直り…