自動 微分 (AD) is a computational technique used to evaluate the derivative of a function specified by a computer program. Unlike numerical differentiation, which approximates derivatives using finite differences, and symbolic differentiation, which manipulates mathematical expressions, automatic differentiation provides exact derivatives using the チェーンルール of calculus. This makes it particularly valuable in fields like 機械学習, where optimization 問題はしばしば勾配の正確な計算にかかっています。
ADは、分解することによって機能します complex functions into simpler components, allowing derivatives to be computed in a systematic way. There are two primary modes of automatic differentiation: 順伝播モード and 逆伝播モード. In forward mode, the derivatives are propagated alongside the function evaluation, which is efficient for functions with fewer inputs than outputs. Conversely, reverse mode is more suited for functions with many inputs and fewer outputs, as it computes derivatives in a single バックワードパス 関数が評価された後に。
この技術は、さまざまなアプリケーションで広く使用されています。 最適化アルゴリズム like gradient descent, where knowing the gradient is essential for updating model parameters. It is also a fundamental component of many machine learning frameworks, enabling efficient training of neural networks. By providing a robust and accurate means of computing derivatives, automatic differentiation plays a crucial role in modern computational science and artificial intelligence.