射影行列と最小二乗近似の双対性

# 1 はじめに
次の式を見て何だと思うだろうか。

```math
\boldsymbol{p} 
= \hat{x}_1 \boldsymbol{a}_1 + \cdots + \hat{x}_n \boldsymbol{a}_n 
\quad・・・\quad(1)
```

ここで、$\boldsymbol{a}\_1, \cdots, \boldsymbol{a}\_n$ は $\mathbb{R}^m$ 内の線形独立なベクトルで、$\hat{x}_1, \cdots, \hat{x}_n$ はその係数（実数値）である。
実は、この式は G.ストラング著「線形代数イントロダクション」<sup>[1]</sup>の射影行列の導出の過程に出てくる式（参考文献[1] の P.222）で、$\boldsymbol{p}$ は$\mathbb{R}^m$ 内の任意のベクトル $\boldsymbol{b}$ を $\boldsymbol{a}\_1, \cdots, \boldsymbol{a}\_n$ の張る空間 $M$ に射影したものである（Fig.1 参照）。

![Fig1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3538461/62005899-474a-1513-9a36-9b0ca918b983.png)

# 2 線形回帰
しかし、統計学に精通した人から見れば(1)式は線形回帰式に見えるかもしれない。

```math
\boldsymbol{p} 
= \hat{x}_1 \boldsymbol{a}_1 + \cdots + \hat{x}_n \boldsymbol{a}_n 
\quad・・・\quad(1)
```

その場合、$\boldsymbol{a}\_1, \cdots, \boldsymbol{a}\_n$ は<strong>説明変数（特徴量）空間</strong>での説明変数（特徴量）ベクトルで、$\hat{x}_1, \cdots, \hat{x}_n$ は回帰係数、そして $\boldsymbol{b}$ は目的変数である。
この場合、データポイントは $\lbrace \boldsymbol{d}\_i = ([a\_{i,1}, \cdots, a\_{i,n}]^T, b\_i ) \rbrace\_{i=1}^{m}$ である。つまり、データは全部で $m$ 個あり、$i$ 番目のデータ $\boldsymbol{d}_i$ は<strong>データ空間</strong>での説明変数（特徴量）ベクトル ${\tilde{\boldsymbol{a}}\_i}^T = [a\_{i,1} \cdots a\_{i,n}]$ と目的変数 $b_i$ の組（タプル）になっている。ここで注意して欲しいのは、$\tilde{\boldsymbol{a}}\_i$ は <strong>説明変数（特徴量）空間</strong>での説明変数（特徴量）ベクトル $\boldsymbol{a}\_1, \cdots, \boldsymbol{a}\_n$ の第 $i$ 成分を集めてベクトルにしたものであることである。すなわち
```math
A \equiv 
\begin{bmatrix}
a_{1,1} & \cdots & a_{1,n} \\
\vdots & \ddots & \vdots \\
a_{m,1} & \cdots & a_{m,n} \\
\end{bmatrix}
=
\begin{bmatrix}
\boldsymbol{a}_1 & \cdots & \boldsymbol{a}_n \\
\end{bmatrix}
=
\begin{bmatrix}
{\tilde{\boldsymbol{a}_1}}^T \\
\vdots \\
{\tilde{\boldsymbol{a}_n}}^T \\
\end{bmatrix}

\quad・・・\quad(2)
```
```math
\boldsymbol{a}_j = 
\begin{bmatrix}
a_{1,j} \\
\vdots \\
a_{m,j} \\
\end{bmatrix}
\quad j = 1, \cdots, n
\quad・・・\quad(3)
```
```math
{\tilde{\boldsymbol{a}}_i}^T = 
\begin{bmatrix}
a_{i,1} & \cdots & a_{i,n} \\
\end{bmatrix}
\quad i = 1, \cdots, m
\quad・・・\quad(4)
```

である。これは、$\boldsymbol{a}\_1, \cdots, \boldsymbol{a}\_n$ は行列 $A$ の列ベクトル、${\tilde{\boldsymbol{a}}\_1}^T, \cdots, {\tilde{\boldsymbol{a}}\_n}^T$ は行列 $A$ の行ベクトルであるという意味である。

線形回帰では、Fig.2 に示すように、与えられた $m$ 個のデータポイント $\lbrace \boldsymbol{d}\_{i}  \rbrace\_{i=1}\^{m}$　から回帰係数 $\hat{\boldsymbol{x}} = (\hat{x}\_1, \cdots, \hat{x}\_n) $ を求め、推測値 $\boldsymbol{p} = (p\_1, \cdots, p\_m)$ を得る。
すなわち、回帰式は
```math
\begin{equation}
\begin{split}
p_{1} &= \hat{x}_1 a_{1,1} + \cdots + \hat{x}_n a_{1,n} \\
p_{2} &= \hat{x}_1 a_{2,1} + \cdots + \hat{x}_n a_{2,n} \\
\vdots \\
p_{i} &= \hat{x}_1 a_{i,1} + \cdots + \hat{x}_n a_{i,n} \\
\vdots \\
p_{m} &= \hat{x}_1 a_{m,1} + \cdots + \hat{x}_n a_{m,n} \\
\end{split}
\end{equation}
```
である。これをまとめてベクトル表現をしたものが(1)式である。

![Fig2b.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3538461/bbffec01-6578-717e-bf1a-100e4bf8ef2a.png)

一方、射影は $\boldsymbol{b}$ と $\boldsymbol{e} = \boldsymbol{b} - \boldsymbol{p}$ が直交する（Fig.1）という条件から線形結合の係数 $\hat{\boldsymbol{x}}$ を計算し、最終的に射影行列 $P_A = A(A^T A)^{-1}A^T$ を求める（**参考文献[2] の「2 射影行列の導出」参照**）。
線形回帰の場合も全く同じ手順で線形回帰式の回帰係数
```math
\tilde{\boldsymbol{x}}
= (A^T A)^{-1}A^T \boldsymbol{b}
\quad・・・\quad(5)
```
を導出する。その背後には目的変数 $\boldsymbol{b}$ と線形回帰式(1)の予測値 $\boldsymbol{p}$ との誤差 $\boldsymbol{e} = \boldsymbol{b} - \boldsymbol{p}$ を最小にするという最小二乗近似の考え方がある。この場合、誤差 $\boldsymbol{e}$ のノルムの**二乗** $|\boldsymbol{e}|^2$ を**最小**にするという方針が「**最小二乗**」の言葉に込められている。

# 3 双対性
Wikipediaでは双対性は次のように説明されている<sup>[3]</sup>。

> 双対（そうつい、dual, duality）とは、互いに対になっている2つの対象の間の関係である。2つの対象がある意味で互いに「裏返し」の関係にあるというようなニュアンスがある（双対の双対はある意味で "元に戻る"）。また、2つのものが互いに双対の関係にあることを「双対性がある」などとよぶ

厳密な意味では間違っているかもしれないが、ここで取り上げた射影行列の導出法と最小二乗法による線形回帰係数の導出問題には双対性があるように思える。射影では線形独立な $n$ 個のベクトル $\boldsymbol{a}\_1, \cdots, \boldsymbol{a}\_n$ が主な変数になる。これは行列 $A$ の列ベクトルである。一方、線形回帰では説明変数（特徴量）ベクトル $\tilde{\boldsymbol{a}}\_1, \cdots, \tilde{\boldsymbol{a}}\_n$ が主な変数になる。これは行列 $A$ の行ベクトルである。行列の行と列が双対の関係にあると指摘されることもある<sup>[4]</sup>。射影行列の導出と回帰係数の導出では問題設定も登場する変数の意味も全く異なるが、ここで見てきたように全く同じ考え方で解くことができる。不思議なものである。そのあたりの妙味を G.ストラングは参考文献[1]の中で巧みな記述で伝えている。一読の価値はあるが、行間に深淵な意味を込めたストラング独特のスタイルで返って混乱する人もいるかもしれない。しかし、それを読み解くのが至高の幸福なのだが。

![Fig3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3538461/a22134fd-ea43-dbad-8344-208cf88ee6b5.png)

# 参考文献
1. G. ストラング：線形代数イントロダクション 原著第４版. 近代科学社, 2015. 
2. 田中昌昭：射影行列のトレースは行列の階数に等しい. https://qiita.com/mtanaka-kumw/items/e938869178fecf0590cf, （2023.12.23 参照）
3. Wikipedia: 双対. [https://ja.wikipedia.org/wiki/双対](https://ja.wikipedia.org/wiki/双対),（2023.12.23 参照）
4. 森毅：なぜ双対空間か. 数学セミナー, **17**(8), 15-19, 1978.