logo

アフィン変換 📂行列代数

アフィン変換

定義

簡単な定義

行列 $A$ と ベクトル $\mathbf{b}$ が与えられたとしよう。次のようにベクトル $\mathbf{x}$ に $A$ を掛けて $\mathbf{b}$ を足す 変換アフィン変換 と呼ぶ。 $$ \mathbf{x} \mapsto A \mathbf{x} + \mathbf{b} $$

難しい定義 1

ベクトル空間 $V$ で定義された $f : V \to V$ が任意の スカラー $\lambda$ に対して次を満たすとき、$f$ を アフィン変換Affine transform と呼ぶ。 $$ f \left( \lambda x + \left[ 1 - \lambda \right] y \right) = \lambda f (x) + \left[ 1 - \lambda \right] f (y) $$

説明

特に機械学習幾何学の文脈では、行列 $A$ を掛けるということは回転変換を含む一次変換を取ることを意味し、ベクトル $\mathbf{b}$ を足すということは並行移動translationを意味する。

数学に親しんだ分野では、アフィン変換という表現は事実上 ある行列を掛けるという意味で使われることが多いが、$\mathbf{y} = A \mathbf{x} + \mathbf{b}$ のようなアフィン変換はブロック行列フォームで考えたとき、2つのベクトル $\mathbf{y}$ と $\mathbf{x}$ の最下部に $1$ を追加して次のように表しても問題ないからである。 $$ \begin{bmatrix} \mathbf{y} \\ 1 \end{bmatrix} = \begin{bmatrix} A & \mathbf{b} \\ \mathbf{0}^{T} & 1 \end{bmatrix} \begin{bmatrix} \mathbf{x} \\ 1 \end{bmatrix} = \begin{bmatrix} A \mathbf{x} + \mathbf{b} \\ 1 \end{bmatrix} $$


  1. Aggarwal. (2020). Linear Algebra and Optimization for Machine Learning: p43. ↩︎