要旨
最小二乗法を解くとき、$A^\top A x=A^\top b$ という形に直してから解くことがある。本稿が問うのは、その書き換えで何が失われるのかである。答は、有効桁のちょうど半分であり、それは近似ではなく恒等式として失われるである。新しい数学定理も新しい法則も主張しない。
第一に、$\kappa_2(A^\top A)/\kappa_2(A)^2$ は、試したすべての行列で $\mathbf{1.0000000000}$ である(第2節)。
第二に、これが本稿の芯である。これは「たいてい二乗になる」ではなく、特異値の定義からの恒等式である(第3節)。
第三に、正方でも対称でもない行列でも成り立つ。$30\times11$ のヴァンデルモンドで比は $1.0000000000$(第2節)。
第四に、倍精度の有効桁は $15.9546$ 桁しかない。$n=8$ のヒルベルト行列では $\kappa(A^\top A)$ が $10^{20.3670}$ で、残る桁は $-4.4124$(第4節)。
第五に、悪化しない行列も存在する。直交行列では $\kappa=1$ のままである(第4節)。
第六に、分離子は「$A^\top A$ を作ったか、作らなかったか」である(第5節)。
射程(何を示さないか)
新しい数学定理も新しい法則も主張しない。条件数、特異値分解、正規方程式、ヒルベルト行列はいずれも標準的である。数値線形代数を作らない。使うのは一つの等式と、それを多倍長で確かめた表だけである。解法の優劣を裁定しない。QR 分解や特異値分解を「使うべきだ」とは書かない。何が失われるかだけを数で置く。後退誤差解析をしない。アルゴリズムごとの安定性の一般論には立ち入らない。触れるにとどめる。正則化を扱わない。リッジ回帰などで条件数を人為的に下げる話は入れない。$2$ ノルム以外を扱わない。条件数は $2$ ノルムで定義する。他のノルムでは二乗則は恒等式でなくなる。既刊との関係:論文326 は二乗三乗の「法則」が法則ではなく恒等式だと示した。本稿は同じ動作の数値計算版である。『法則』と呼ばれているものが定義から出ているなら、反例を探すのは筋違いになる。論文221 は最後の桁を一つ変えると固有値が $0.16$ 動くと示した。そこでは入力の摂動が答を動かし、本稿では書き換えが感度そのものを二乗する。論文329 は同じ点から発散と収束が出ると示した。そこでは近似の作り方が壊れ、ここでは計算の桁が尽きる。数値が信用できない理由は少なくとも三つある。論文95 は規約と事実を分けた。二乗則は事実ではなく、$\kappa$ の定義の帰結である。論文300 は同根か別根かは判定できると示した。本稿の二乗則と論文221 の摂動は、判定に掛ければ別根である。加えたのは比を多倍長で $10$ 桁まで出したこと、対称でない長方行列でも成り立つことを示して「対称だから」を潰したこと、失う桁を倍精度の桁数と並べて負の値まで書いたこと、分離子を「$A^\top A$ を作ったか」に置いたことである。
1. 記法と問い
設定:$m\times n$ の行列 $A$($m\ge n$)と $b$ に対し、$\|Ax-b\|_2$ を最小にする $x$ を求める。正規方程式に直すと
$$A^\top A\,x = A^\top b$$
となり、正方の対称行列を一つ解くだけになる。式は短くなり、実装も易しくなる。
観察 1.1 条件数 $\kappa_2(A)=\sigma_{\max}/\sigma_{\min}$ は、入力の相対誤差が答の相対誤差に何倍で届くかを測る。$\kappa$ が $10^k$ なら、答は約 $k$ 桁を失う。これは標準的な目安である。
観察 1.2 本稿の測り方を先に固定する。条件数は $2$ ノルム、計算は多倍長($160$ 桁)で行う。倍精度で測ると、測っている量そのものが倍精度の外に出るからである。
問い:$A$ から $A^\top A$ に書き換えたとき、条件数はどれだけ悪くなるのか。それは「たいてい」なのか、「常に」なのか。
2. 比は、試したすべてで $1.0000000000$ だった
検算 2.1:ヒルベルト行列 $H_n$($H_{ij}=1/(i+j-1)$)で $\kappa_2(A)$ と $\kappa_2(A^\top A)$ を多倍長で計算する(本稿で計算)。
| $n$ | $\kappa_2(A)$ | $\kappa_2(A^\top A)$ | 比 $\kappa_2(A^\top A)/\kappa_2(A)^2$ |
|---|---|---|---|
| $4$ | $1.551374\times10^{4}$ | $2.406761\times10^{8}$ | $\mathbf{1.0000000000}$ |
| $6$ | $1.495106\times10^{7}$ | $2.235342\times10^{14}$ | $\mathbf{1.0000000000}$ |
| $8$ | $1.525758\times10^{10}$ | $2.327936\times10^{20}$ | $\mathbf{1.0000000000}$ |
| $12$ | $1.713229\times10^{16}$ | $2.935153\times10^{32}$ | $\mathbf{1.0000000000}$ |
観察 2.2 自己検査、$\kappa_2(H_5)=4.766073\times10^{5}$ で、教科書に載る値 約 $4.77\times10^{5}$ と一致する。道具が正しく動いていることを、独立に知られている一件で確かめてから表を読む。
観察 2.3 ヒルベルト行列は対称である。対称なら $A^\top A=A^2$ なので、比が $1$ になるのは当たり前に見える。この表だけでは、二乗則が対称性から来ているのか、もっと一般のことなのかが分からない。
検算 2.4:そこで、対称でも正方でもない行列で確かめる。$[0,1]$ の $30$ 個の等間隔点から作ったヴァンデルモンド行列($30$ 行 $\times$ 次数$+1$ 列)である。これは最小二乗の多項式当てはめで実際に現れる設計行列そのものである(本稿で計算)。
| 次数 | $\kappa_2(A)$ | $\kappa_2(A^\top A)$ | 比 |
|---|---|---|---|
| $4$ | $6.163814\times10^{2}$ | $3.799260\times10^{5}$ | $\mathbf{1.0000000000}$ |
| $6$ | $1.887237\times10^{4}$ | $3.561662\times10^{8}$ | $\mathbf{1.0000000000}$ |
| $8$ | $6.080104\times10^{5}$ | $3.696767\times10^{11}$ | $\mathbf{1.0000000000}$ |
| $10$ | $2.067173\times10^{7}$ | $4.273202\times10^{14}$ | $\mathbf{1.0000000000}$ |
観察 2.5 対称性を外しても比は $1$ のままである。$30\times11$ という縦長の、対称でも正方でもない行列で、「対称だから二乗になる」という説明は、これで消える。
3. 芯:これは恒等式であって、経験則ではない
設定:なぜ常に $1$ になるのかは、特異値分解を書けば一行で見える。
観察 3.1 $A=U\Sigma V^\top$ とすると $A^\top A=V\Sigma^2V^\top$ である。すなわち$A^\top A$ の特異値は、$A$ の特異値をそれぞれ二乗したものである。したがって
$$\kappa_2(A^\top A)=\frac{\sigma_{\max}^2}{\sigma_{\min}^2}
=\left(\frac{\sigma_{\max}}{\sigma_{\min}}\right)^{\!2}=\kappa_2(A)^2 .$$
観察 3.2 これが本稿の芯である。右辺と左辺は、同じものを二通りに書いただけである。$A$ の性質でも、問題の性質でも、行列の埋まり方の性質でもない。$\kappa_2$ の定義と、$A^\top A$ の特異値の定義から出ている。
観察 3.3 ここが実務上の分かれ目である。もしこれが経験則なら、「二乗にならない行列を探す」ことに意味がある。恒等式なら、探しても無い。$A^\top A$ を作ることを避ける以外に、逃げ道は無い。
観察 3.4 論文326 と同じ動作である。326 は「二乗三乗の法則」が幾何の恒等式であって法則ではないと書いた。そこでも、反例を探すのは筋違いだった。『法則』と呼ばれているものが定義から出ているなら、破る対象が存在しない。
観察 3.5 正直に書くべき点、恒等式なのは $2$ ノルムのときである。$1$ ノルムや $\infty$ ノルムで条件数を定義すると、$\kappa(A^\top A)$ は $\kappa(A)^2$ とちょうど一致しない。本稿の主張は $2$ ノルムの内側でだけ厳密である。
4. 何桁が失われるか
設定:倍精度の仮数は $53$ ビットである。十進に直すと $53\log_{10}2=\mathbf{15.9546}$ 桁で、これが持っている桁の全部である。
検算 4.1:$\kappa_2(A^\top A)$ の桁数を引いて、残る桁を出す(本稿で計算)。
| $n$(ヒルベルト) | $\log_{10}\kappa_2(A^\top A)$ | 残る桁 |
|---|---|---|
| $4$ | $8.3814$ | $7.5732$ |
| $6$ | $14.3493$ | $1.6052$ |
| $8$ | $20.3670$ | $\mathbf{-4.4124}$ |
| $12$ | $32.4676$ | $\mathbf{-16.5130}$ |
観察 4.2 $n=8$ で残る桁が負になる。負の桁数に意味は無い。意味があるのは「一桁も残らない」ということで、$n=8$ の正規方程式の解は、倍精度では有効数字を一つも持たない。
観察 4.3 $A$ のままなら $n=8$ で $10.1835$ 桁で、$5.7711$ 桁が残る。同じ問題、同じ精度、同じ計算機で、書き方を変えただけで、答が有効数字を持つか持たないかが変わる。
観察 4.4 境目は $n=6$ と $n=8$ の間にある。$n=6$ では $1.6052$ 桁が残り、辛うじて意味のある答が出る。$n$ を二つ増やしただけで、残る桁が $6.0176$ 桁減る。ヒルベルト行列の条件数が指数的に増えるからである。
観察 4.5 悪化しない行列も存在する。直交行列では $\sigma$ がすべて $1$ なので $\kappa_2=1$ であり、$A^\top A=I$ で条件数はやはり $1$ である。二乗しても $1$ は $1$ のままである。『$A^\top A$ を作ると必ず悪くなる』も、正確には言い過ぎである。
観察 4.6 観察 4.5 は、逃げ道の在処を教えている。悪くならないのは $\kappa$ が $1$ に近いときだけで、QR 分解や特異値分解が $A$ を直交行列に分けてから解くのは、まさにその領域に入るためである。本稿は「そうすべきだ」とは書かない。ただ、避けられる損失であることは数が示している。
5. 分離子:$A^\top A$ を作ったか、作らなかったか
観察 5.1 分離子、解く過程のどこかで $A^\top A$ を明示的に作ったか、作らずに $A$ のまま扱ったか。
| 扱う行列 | 条件数 | $n=8$ で残る桁 | |
|---|---|---|---|
| 正規方程式 | $A^\top A$ | $\kappa_2(A)^2$ | $-4.4124$ |
| $A$ のまま解く | $A$ | $\kappa_2(A)$ | $5.7711$ |
観察 5.2 分離子は、行列の側にはない。同じ $A$、同じ $b$、同じ答を求めているのに、差を作っているのは、途中で何を組み立てたかである。問題ではなく、手続きが感度を決めている。
観察 5.3 損失は、数値誤差が「入る」から起きるのではない。$A^\top A$ を厳密に作っても、条件数はきっちり二乗される。丸めが一度も起きなくても、その行列は $\kappa^2$ を持っている。失われるのは計算の途中ではなく、問題の書き換えの時点である。
観察 5.4 正直に書くべき点、$\kappa$ が小さければ、正規方程式で何の問題も起きない。$\kappa_2(A)=10^3$ なら二乗しても $10^6$ で、$15.9546$ 桁のうち $9.9546$ 桁が残る。本稿は「正規方程式を使うな」とは言わない。使ってよい範囲が $\kappa$ の平方根で決まる、と言っている。
観察 5.5 論文221 との位置関係。221 は入力の最後の桁を変えると固有値が $0.16$ 動くと書いた。そこでの原因は入力の摂動である。本稿では入力は動かさず、式の書き方だけを変えて感度を二乗している。論文300 の基準に当てれば、二つは別根である。
観察 5.6 最後に一つ、正規方程式は、式を短くするために作られた。$m\times n$ の長方形が $n\times n$ の正方形になり、対称正定値になり、コレスキー分解が使える。見た目の簡潔さと引き換えに、有効桁のちょうど半分を払っている。そして払っていることは、式の上には書かれていない。
6. 点呼と結び
- 比は $\mathbf{1.0000000000}$(検算2.1):ヒルベルト $n=4,6,8,12$。
- $\kappa_2(H_5)=4.766073\times10^{5}$(観察2.2):教科書値と一致。
- $30\times11$ の長方行列でも $1$(検算2.4):対称性は効いていない。
- $A^\top A$ の特異値は $\sigma^2$(観察3.1):比は定義から出る。
- 恒等式なので反例は無い(観察3.3):探しても見つからない。
- $2$ ノルムでだけ厳密(観察3.5):他のノルムでは一致しない。
- 倍精度は $15.9546$ 桁(第4節):仮数 $53$ ビット。
- $n=8$ で残る桁 $-4.4124$(検算4.1):一桁も残らない。
- $A$ のままなら $5.7711$ 桁残る(観察4.3):同じ問題、同じ計算機。
- 直交行列では悪化しない(観察4.5):$1$ を二乗しても $1$。
結び:最小二乗を正規方程式 $A^\top Ax=A^\top b$ に直すと、条件数はちょうど二乗される。ヒルベルト行列でも、対称でも正方でもない $30\times11$ のヴァンデルモンド行列でも、$\kappa_2(A^\top A)/\kappa_2(A)^2$ は多倍長で $\mathbf{1.0000000000}$ である。そしてこれは経験則ではない。$A=U\Sigma V^\top$ なら $A^\top A=V\Sigma^2V^\top$ であり、$A^\top A$ の特異値は $A$ の特異値の二乗そのものだからである。$A$ の性質でも問題の性質でもなく、$\kappa_2$ の定義の帰結である。だから「二乗にならない行列」を探すことに意味は無い。論文326 が二乗三乗の法則について書いたのと同じで、定義から出ているものには破る対象が存在しない。ただし恒等式なのは $2$ ノルムの内側である。代償は桁で数えられる。倍精度の有効桁は仮数 $53$ ビット、すなわち $\mathbf{15.9546}$ 桁しかない。$n=8$ のヒルベルト行列では $\kappa_2(A^\top A)=10^{20.3670}$ で、残る桁は $\mathbf{-4.4124}$、一桁も残らない。同じ問題を $A$ のまま扱えば $5.7711$ 桁が残る。ただし常に悪化するのでもない。直交行列では $\kappa_2=1$ で、二乗しても $1$ のままである。$\kappa$ が小さいうちは正規方程式で何の問題も起きない。分けるものは一つ、解く過程のどこかで $A^\top A$ を明示的に作ったか、作らずに $A$ のまま扱ったか。同じ $A$、同じ $b$、同じ答を求めていて、差を作っているのは途中で何を組み立てたかである。丸めが一度も起きなくても、その行列はすでに $\kappa^2$ を持っている。失われるのは計算の途中ではなく、問題を書き換えた時点である。最後に一つ、正規方程式は式を短くするために作られた。長方形が正方形になり、対称正定値になり、扱いが易しくなる。その簡潔さと引き換えに有効桁のちょうど半分を払っており、払っていることは式の上には書かれていない。
参考文献
- Gauss, C. F. (1809). Theoria Motus Corporum Coelestium in Sectionibus Conicis Solem Ambientium. Hamburg: Perthes und Besser.
- Hilbert, D. (1894). Ein Beitrag zur Theorie des Legendre’schen Polynoms. Acta Mathematica, 18.
- Turing, A. M. (1948). Rounding-Off Errors in Matrix Processes. Quarterly Journal of Mechanics and Applied Mathematics, 1(1).
- Golub, G. H., Van Loan, C. F. (2013). Matrix Computations, 4th edition. Baltimore: Johns Hopkins University Press.
- Higham, N. J. (2002). Accuracy and Stability of Numerical Algorithms, 2nd edition. Philadelphia: SIAM.
- 山岸勇輝 (2026). 規約と事実を分ける [論文95]. Zenodo. 10.5281/zenodo.21758621
- 山岸勇輝 (2026). 最後の桁を一つ変えると、固有値が 0.16 動く [論文221]. Zenodo. 10.5281/zenodo.22120012
- 山岸勇輝 (2026). 三百本目の点呼、同根か別根かは、判定できる [論文300]. Zenodo. 10.5281/zenodo.22171914
- 山岸勇輝 (2026). 二乗三乗の「法則」は、法則ではなく恒等式である [論文326]. Zenodo. 10.5281/zenodo.22209992
- 山岸勇輝 (2026). 同じ点を使って、片方は千倍に発散し、片方は千分の一に収束する [論文329]. Zenodo. 10.5281/zenodo.22681343
作成にあたって:本稿の着想と内容は、著者自身の考察に基づくものです。文章の構成整理や英訳、数式の確認には AI(大規模言語モデル)の助力を得ました。最終的な内容の解釈や誤りがあれば、それらはすべて著者の責に帰します。お気づきの点があれば、ご教示いただければ幸いです。
書誌
山岸勇輝(2026)「条件数が二乗になるのは、近似ではなく恒等式である」[論文330]. Zenodo.
DOI: 10.5281/zenodo.22681423
日付の証拠(OpenTimestamps):日本語版の .ots・英語版の .ots・SHA256SUMS
予備の置き場所(ミラー。中身は上と同じです):PDF 日本語・PDF English・SHA256SUMS
住所:https://www.yamagishiyuuki.com/yoi/330・DOI 10.5281/zenodo.22681423・CC BY 4.0・プレプリント(査読を経ていません)・ORCID 0009-0006-8587-3450
引用するとき
山岸勇輝 (2026). 条件数が二乗になるのは、近似ではなく恒等式である [論文330]. YOI: https://www.yamagishiyuuki.com/yoi/330 ・ DOI: 10.5281/zenodo.22681423
Yamagishi, Y. (2026). That the Condition Number Squares Is an Identity, Not an Approximation [Paper 330]. YOI: https://www.yamagishiyuuki.com/yoi/330; DOI: 10.5281/zenodo.22681423
@misc{yamagishi2026yoi330,
author = {Yamagishi, Yuuki},
title = {That the Condition Number Squares Is an Identity, Not an Approximation},
year = {2026},
howpublished = {YOI: https://www.yamagishiyuuki.com/yoi/330},
doi = {10.5281/zenodo.22681423},
note = {Preprint, edition 1}
}
指紋(SHA-256)と確かめ方
d70363fedd21e12a5035173befd0787b07cc7c51069307da807cc9fb2aaea5d6 yamagishi_yoi330_v1_jp.pdffb49693ec9b72c7c29095235d1deda2c4298cb6915b30b9072c1b41c916ae5d0 yamagishi_yoi330_v1_en.pdfPDF と .ots を同じ場所に保存し、opentimestamps.org に .ots、続けて PDF を落とすと、記録された日時が表示されます。PDF が 1 バイトでも変わっていれば通りません。