最小二乗直線と線形回帰の完全ガイド:定義・式・前提条件・評価・実装テクニック
最小二乗直線とは — 概要
最小二乗直線(さいしょうにじょうちょくせん、least squares line)は、与えられた一組のデータ点に対して「誤差の二乗和」を最小にする直線を求める手法です。統計学やデータ解析、機械学習、信号処理など幅広い分野で基本となる回帰(regression)手法の一つで、特に説明変数が一つの単回帰や、説明変数が複数ある線形回帰(最小二乗法)として日常的に用いられます。
基本的な定義と式(単回帰)
観測点 (x_i, y_i)(i = 1, …, n)が与えられているとき、直線 y = β0 + β1 x に関する残差(実測値と予測値の差)は ε_i = y_i − (β0 + β1 x_i) です。最小二乗法は残差の二乗和 S(β0,β1) = Σ_i ε_i^2 = Σ_i [y_i − (β0 + β1 x_i)]^2 を最小化する β0, β1 を求めます。
これを偏微分して 0 にすると、解として次が得られます(標本平均を x̄, ȳ と表す):
- 傾き β1 = Σ_i (x_i − x̄)(y_i − ȳ) / Σ_i (x_i − x̄)^2
- 切片 β0 = ȳ − β1 x̄
つまり、傾きは x と y の共分散を x の分散で割ったもので、直感的には「x が 1 単位増加したときの y の期待変化量」を表します。
行列表示と多変量(一般)最小二乗
説明変数が複数ある場合は行列を用いると簡潔です。観測ベクトル y(n×1)と設計行列 X(n×p、各行が [1, x_{i1}, x_{i2}, …])を用いると、残差ベクトル ε = y − Xβ であり、目的は ||y − Xβ||^2 を最小化することです。正則条件のもとで最適解は
β̂ = (Xᵀ X)⁻¹ Xᵀ y
と与えられます。ここで Xᵀ X が正則でない場合(多重共線性や説明変数が過剰に相関している場合)は逆行列が存在せず、特異値分解(SVD)や正則化(リッジ回帰など)を用います。
統計的性質と前提条件(ガウス=マルコフの定理)
線形回帰モデル y = Xβ + ε を考え、誤差項 ε が E[ε] = 0, Var(ε) = σ^2 I(同分散・無相関) を満たすとき、最小二乗推定量 β̂ は「最良線形不偏推定量(BLUE: Best Linear Unbiased Estimator)」である、というのがガウス=マルコフの定理です。つまり、線形かつ不偏である推定量の中で分散が最小になります。
注意点:
- 正規性(ε が正規分布)を仮定する必要はないが、推定量の分布を用いた検定や信頼区間には正規性があると解析が簡単になる。
- 誤差が異分散(heteroscedastic)であれば通常の最小二乗は最適でなく、加重最小二乗(WLS)やロバスト推定を検討する。
- 説明変数が測定誤差を持つ場合は、通常の OLS がバイアスを生む(誤差は独立でない)。その場合は合計最小二乗(Total Least Squares)等を検討。
残差解析とモデル評価
最小二乗の適合度を評価するために以下の指標や手法が使われます。
- 決定係数 R² = 1 − SSE/SST(SSE: 残差平方和、SST: 全平方和)。0〜1 の範囲で高いほど説明力がある。ただし説明変数を増やすと R² は増えるため、自由度を補正した調整済み R² を使うことが多い。
- 残差プロット:残差 vs 予測値や残差の正規性プロットにより、モデル仮定(線形性・等分散・正規性)の検査。
- 影響度指標(レバレッジ、クックの距離):外れ値や影響力の大きい観測を特定。
- 標準誤差・t 検定・信頼区間:係数 β̂ の不確かさを評価。
変種と発展的手法
- 加重最小二乗(WLS):誤差の分散が観測ごとに異なる場合に、既知の分散の逆数を重みとして利用。
- 総最小二乗(TLS / Orthogonal Regression):説明変数にも誤差がある場合に誤差の直交距離を最小化。
- リッジ回帰(L2 正則化)、ラッソ(L1 正則化):多重共線性や過学習対策として係数にペナルティを課す手法。
- ロバスト回帰(Huber, RANSAC 等):外れ値の影響を軽減する手法。
- 逐次最小二乗やオンライン最小二乗:ストリーミングデータに対する逐次更新。
数値計算上の注意点
実装面では Xᵀ X を直接解くと数値不安定になる場合があります。特に説明変数間で高い相関があると Xᵀ X の条件数が大きくなり、丸め誤差で不安定になります。解決策として:
- QR 分解を用いた解法(安定で一般に推奨)
- 特異値分解(SVD)による最小二乗解(低ランク近似や特異値の閾値処理に便利)
- 正則化(リッジ):Xᵀ X に λI を加えることで条件数を改善
IT・データサイエンスにおける実用例
- ログ解析や性能モニタリング:時間に対するレスポンスタイムや負荷のトレンド推定。
- A/B テストの単純モデル:処理量と成果の関係を線形で近似。
- 機械学習の基礎モデル:線形回帰はフィーチャーの重み付けやベースラインモデルに活用。
- センサーデータのキャリブレーション:既知の基準値に対する補正直線の推定。
よくある誤解と注意点
- 「最小二乗直線=原因と結果の因果を示す」ではない。相関・近似であり、因果関係の証明には追加の設計や実験的確認が必要。
- 外れ値があると最小二乗推定は大きくゆがむ。外れ値検出・ロバスト法の利用が重要。
- モデルの当てはまりが良くても、過学習により将来データへの汎化性が低い場合がある(特に説明変数が多い場合)。
実装のヒント(ライブラリ利用)
主要な言語・ライブラリでは最小二乗・線形回帰の実装が充実しています。例:
- Python: numpy.linalg.lstsq、scikit-learn の LinearRegression(既定で最小二乗)、statsmodels(統計的検定や詳細な診断が可能)
- R: lm() 関数(標準的な線形回帰と詳細な診断を提供)
- 数値計算: LAPACK(QR、SVD 実装)を内部で利用して安定に解くのが一般的
まとめ
最小二乗直線はデータを直線で近似する際の基本かつ強力な手法です。単純な式に基づく一方で、統計的性質や前提条件、数値計算上の注意点、外れ値や異分散への対処などをきちんと理解して使うことが重要です。IT やデータサイエンスの現場では、トレンド把握やベースラインモデル、キャリブレーションなど様々な場面で活躍しますが、解釈や利用の際には仮定の適合性を確認することを忘れないでください。
参考文献
- Wikipedia: 最小二乗法(日本語)
- Wikipedia: Ordinary least squares (英語)
- Statlect: Least squares(理論解説)
- NIST: Linear Regression(入門資料)
- scikit-learn: Linear models(実装と使い方)
- Gauss–Markov theorem(教科書的解説)


