二重数を用いた自動微分とは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > ウィキペディア小見出し辞書 > 二重数を用いた自動微分の意味・解説 

二重数を用いた自動微分

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2019/09/21 05:56 UTC 版)

自動微分」の記事における「二重数を用いた自動微分」の解説

フォワードモード自動微分実数代数に(元を)添加して新し算術導入することによって可能である。全ての数(通常の実数に対して、その数における関数の微分表現する追加成分足され全ての算術演算がこの添加代数拡張される。すなわち二重数代数である。このアプローチプログラミング空間上の演算子法英語版)の理論(つまり双対空間テンソル代数)によって一般化される解析的プログラミング空間英語版)を見よ)。 各数 x {\displaystyle x} を数 x + x ′ ε {\displaystyle x+x'\varepsilon } に置き換える。ここで x ′ {\displaystyle x'} は実数だが、 ε {\displaystyle \varepsilon } は ε 2 = 0 {\displaystyle \varepsilon ^{2}=0} を満たす抽象的数(英語版)である(無限小滑らかな無限小解析参照)。ちょうどこれだけ用いて通常の演算得られる: ( x + x ′ ε ) + ( y + y ′ ε ) = x + y + ( x ′ + y ′ ) ε ( x + x ′ ε ) ⋅ ( y + y ′ ε ) = x y + x y ′ ε + y x ′ ε + x ′ y ′ ε 2 = x y + ( x y ′ + y x ′ ) ε {\displaystyle {\begin{aligned}(x+x'\varepsilon )+(y+y'\varepsilon )&=x+y+(x'+y')\varepsilon \\(x+x'\varepsilon )\cdot (y+y'\varepsilon )&=xy+xy'\varepsilon +yx'\varepsilon +x'y'\varepsilon ^{2}=xy+(xy'+yx')\varepsilon \end{aligned}}} 引き算割り算についても同様である。 いまやこの拡張算術のもとで多項式計算できる。もし P ( x ) = p 0 + p 1 x + p 2 x 2 + ⋯ + p n x n {\displaystyle P(x)=p_{0}+p_{1}x+p_{2}x^{2}+\cdots +p_{n}x^{n}} ならば、 P ( x + x ′ ε ) = p 0 + p 1 ( x + x ′ ε ) + ⋯ + p n ( x + x ′ ε ) n = p 0 + p 1 x + ⋯ + p n x n + p 1 x ′ ε + 2 p 2 x x ′ ε + ⋯ + n p n x n − 1 x ′ ε = P ( x ) + P ( 1 ) ( x ) x ′ ε {\displaystyle {\begin{aligned}P(x+x'\varepsilon )&=p_{0}+p_{1}(x+x'\varepsilon )+\cdots +p_{n}(x+x'\varepsilon )^{n}\\&=p_{0}+p_{1}x+\cdots +p_{n}x^{n}+p_{1}x'\varepsilon +2p_{2}xx'\varepsilon +\cdots +np_{n}x^{n-1}x'\varepsilon \\&=P(x)+P^{(1)}(x)x'\varepsilon \end{aligned}}} ここで P ( 1 ) {\displaystyle P^{(1)}} は P {\displaystyle P} の最初引数対す微分であり、 x ′ {\displaystyle x'} (種と呼ばれる)は任意に取れる。 上に述べたように、この新し算術は、順序対( ⟨ x , x ′ ⟩ {\displaystyle \langle x,x'\rangle } と書かれる元)と、最初成分に対して通常の算術を、第二成分に対して一階微分算術を、それぞれ与えたものからなる多項式に関する上の結果解析関数広げれば新し算術対する、基本的な算術幾つかの標準的な関数リスト得られる: ⟨ u , u ′ ⟩ + ⟨ v , v ′ ⟩ = ⟨ u + v , u ′ + v ′ ⟩ ⟨ u , u ′ ⟩ − ⟨ v , v ′ ⟩ = ⟨ u − v , u ′ − v ′ ⟩ ⟨ u , u ′ ⟩ ∗ ⟨ v , v ′ ⟩ = ⟨ u v , u ′ v + u v ′ ⟩ ⟨ u , u ′ ⟩ / ⟨ v , v ′ ⟩ = ⟨ u v , u ′ v − u vv 2 ⟩ ( v ≠ 0 ) sin ⁡ ⟨ u , u ′ ⟩ = ⟨ sin ⁡ ( u ) , u ′ cos ⁡ ( u ) ⟩ cos ⁡ ⟨ u , u ′ ⟩ = ⟨ cos ⁡ ( u ) , − u ′ sin ⁡ ( u ) ⟩ exp ⁡ ⟨ u , u ′ ⟩ = ⟨ exp ⁡ u , u ′ exp ⁡ u ⟩ log ⁡ ⟨ u , u ′ ⟩ = ⟨ log ⁡ ( u ) , u ′ / u ⟩ ( u > 0 ) ⟨ u , u ′ ⟩ k = ⟨ u k , k u k − 1 u ′ ⟩ ( u ≠ 0 ) | ⟨ u , u ′ ⟩ | = ⟨ | u | , u ′ sign u ⟩ ( u ≠ 0 ) {\displaystyle {\begin{aligned}\left\langle u,u'\right\rangle +\left\langle v,v'\right\rangle &=\left\langle u+v,u'+v'\right\rangle \\\left\langle u,u'\right\rangle -\left\langle v,v'\right\rangle &=\left\langle u-v,u'-v'\right\rangle \\\left\langle u,u'\right\rangle *\left\langle v,v'\right\rangle &=\left\langle uv,u'v+uv'\right\rangle \\\left\langle u,u'\right\rangle /\left\langle v,v'\right\rangle &=\left\langle {\frac {u}{v}},{\frac {u'v-uv'}{v^{2}}}\right\rangle \quad (v\neq 0)\\\sin \left\langle u,u'\right\rangle &=\left\langle \sin(u),u'\cos(u)\right\rangle \\\cos \left\langle u,u'\right\rangle &=\left\langle \cos(u),-u'\sin(u)\right\rangle \\\exp \left\langle u,u'\right\rangle &=\left\langle \exp u,u'\exp u\right\rangle \\\log \left\langle u,u'\right\rangle &=\left\langle \log(u),u'/u\right\rangle \quad (u>0)\\\left\langle u,u'\right\rangle ^{k}&=\left\langle u^{k},ku^{k-1}u'\right\rangle \quad (u\neq 0)\\\left|\left\langle u,u'\right\rangle \right|&=\left\langle \left|u\right|,u'{\mbox{sign}}u\right\rangle \quad (u\neq 0)\end{aligned}}} 一般にプリミティヴ関数 g {\displaystyle g} に対して、 g ( ⟨ u , u ′ ⟩ , ⟨ v , v ′ ⟩ ) = ⟨ g ( u , v ) , g u ( u , v ) u ′ + g v ( u , v ) v ′ ⟩ {\displaystyle g(\langle u,u'\rangle ,\langle v,v'\rangle )=\langle g(u,v),g_{u}(u,v)u'+g_{v}(u,v)v'\rangle } ここで g u {\displaystyle g_{u}} と g v {\displaystyle g_{v}} はそれぞれ g {\displaystyle g} の最初2番目の引数対す微分である。 基本的な二項算術演算を(実数二重数の)混在し引数に対して、つまり順序対 ⟨ u , u ′ ⟩ {\displaystyle \langle u,u'\rangle } と実数 c {\displaystyle c} に対して適用するとき、まずこの実数を ⟨ c , 0 ⟩ {\displaystyle \langle c,0\rangle } に引き上げる(lifting)。関数 f : R → R {\displaystyle f:\mathbb {R} \rightarrow \mathbb {R} } の x 0 {\displaystyle x_{0}} に於ける微分はいまや f ( ⟨ x 0 , 1 ⟩ ) {\displaystyle f(\langle x_{0},1\rangle )} に上の算術使って計算することによって得られる。これは ⟨ f ( x 0 ) , f ′ ( x 0 ) ⟩ {\displaystyle \langle f(x_{0}),f'(x_{0})\rangle } を結果として与える。

※この「二重数を用いた自動微分」の解説は、「自動微分」の解説の一部です。
「二重数を用いた自動微分」を含む「自動微分」の記事については、「自動微分」の概要を参照ください。

ウィキペディア小見出し辞書の「二重数を用いた自動微分」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「二重数を用いた自動微分」の関連用語

二重数を用いた自動微分のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



二重数を用いた自動微分のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaの自動微分 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS