|
===================================== 〔語彙分解〕的な部分一致の検索結果は以下の通りです。 ・ 自動 : [じどう] 1. (adj-na,n) automatic 2. self-motion ・ 動 : [どう] 【名詞】 1. motion 2. change 3. confusion ・ 微分 : [びぶん] (n,vs) differential (e.g., calculus) ・ 分 : [ぶん, ふん] 1. (n,n-suf,pref) (1) part 2. segment 3. share 4. ration 5. (2) rate 6. (3) degree 7. one's lot 8. one's status 9. relation 10. duty 1 1. kind 12. lot 13. (4) in proportion to 14. just as much as 1
自動微分(じどうびぶん、アルゴリズム的微分とも)とは、プログラムで定義された関数を解析し、偏導関数の値を計算するプログラムを導出する技術である。自動微分は複雑なプログラムであっても加減乗除などの基本的な算術演算や基本的な関数(指数関数・対数関数・三角関数など)のような基本的な演算の組み合わせで構成されていることを利用し、これらの演算に対して連鎖律を繰り返し適用することによって実現される。自動微分を用いることで偏導関数値を少ない計算量で自動的に求めることができる。 自動微分は * 数式微分 (Symbolic differentiation, 原関数を表す数式から数式処理により導関数を導出する) * 数値微分 (Numerical differentiation, 原関数の値から近似的に微分係数を算出する) のどちらとも異なる。 数式微分は効率が悪くなりやすく、プログラムで定義された関数から微分表現を導くのは困難であるという問題がある。一方、数値微分では離散化の際の丸め誤差や桁落ちによる精度の低下が問題である。さらに、どちらの手法も計算量や誤差の関係で高次の微分係数を求めることが難しい。また、勾配を用いた最適化で必要となる、多くの入力変数を持つ関数に対する偏微分値の計算を行うには速度が遅い。自動微分はこれらの古典的手法の問題を解決する。 英語では Automatic differentiation (あるいは単に AD) と呼ばれる。 == 自動微分の導出 == 自動微分の基本原理は連鎖律を用いた微分の分解である。たとえば、簡単な合成関数である に対して連鎖律を適用すると : を得る。 自動微分は大きく2種類に分けられ、それぞれボトムアップ型自動微分(フォーワードモード、狭義の自動微分)とトップダウン型自動微分(リバースモード、高速自動微分)と呼ばれる。 ボトムアップ型自動微分では連鎖律を内側から外側に計算し(を計算した後で を計算する)、トップダウン型自動微分では外側から内側に計算する。 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「自動微分」の詳細全文を読む スポンサード リンク
|