回帰分析

【計算例あり】重回帰の正規方程式|偏回帰係数と切片を求める全手順を完全図解

😣 こんな悩みはありませんか?
  • 「偏回帰係数って、どうやって計算するの?」
  • 「正規方程式って何?なんだか難しそう…」
  • 「切片β₀の求め方がわからない」
✅ この記事でわかること
  • 正規方程式の意味と導出の考え方
  • 具体的な数値を使った計算手順
  • 切片β₀と偏回帰係数β₁, β₂の求め方
  • Excelや電卓で実際に計算する方法

前回の記事で、偏回帰係数の「意味」は理解できたと思います。

では、その偏回帰係数はどうやって計算するのでしょうか?

答えは「正規方程式」を解くことです。

名前は難しそうですが、やっていることは中学校で習った「連立方程式」を解くだけです。

この記事では、具体的な数値を使って、一緒に手を動かしながら計算していきましょう。

📘 偏回帰係数の意味を先に理解したい方はこちら
【図解】偏回帰係数とは?|「他を固定したときの影響度」を完全理解 →

🎯 正規方程式とは?

まず、正規方程式が何なのかを理解しましょう。

📌 一言でいうと

📐 正規方程式とは?

「残差の2乗和を最小にする」という条件から導かれる、偏回帰係数を求めるための連立方程式です。

「残差の2乗和を最小にする」という考え方は、単回帰分析の「最小二乗法」と同じです。

🤔 なぜ「正規」という名前?

「正規方程式」の「正規」は、英語の "normal equation" の訳です。

ここでの "normal" は「正規分布」の意味ではなく、「直交する」という意味です。残差ベクトルが説明変数ベクトルに直交する、という幾何学的な性質から来ています。

💡 ポイント
名前の由来は気にしなくてOKです。「偏回帰係数を求めるための連立方程式」と覚えておけば十分です。

📝 正規方程式の形

説明変数が2つ(x₁, x₂)の場合、正規方程式は以下の3本の連立方程式になります。

【正規方程式(説明変数2つの場合)】

Σy = n·β₀ + β₁·Σx₁ + β₂·Σx₂

Σx₁y = β₀·Σx₁ + β₁·Σx₁² + β₂·Σx₁x₂

Σx₂y = β₀·Σx₂ + β₁·Σx₁x₂ + β₂·Σx₂²

未知数はβ₀(切片)、β₁(x₁の偏回帰係数)、β₂(x₂の偏回帰係数)の3つです。

方程式が3本、未知数が3つなので、この連立方程式を解けばβ₀, β₁, β₂が求まります

💡 記号の意味
Σy:yの合計
Σx₁:x₁の合計
Σx₁²:x₁の2乗の合計
Σx₁x₂:x₁とx₂の積の合計
Σx₁y:x₁とyの積の合計
n:データの個数

📊 具体例で計算してみよう

では、実際に数値を使って計算してみましょう。

📋 例題:製品の強度を予測する

ある工場で、製品の強度(y)が、温度(x₁)圧力(x₂)にどう影響されるかを調べました。

No.温度 x₁圧力 x₂強度 y
1115
2217
33210
44211
55314

このデータから、重回帰式 y = β₀ + β₁x₁ + β₂x₂ の係数を求めます。

🔢 Step 1:必要な統計量を計算する

正規方程式に代入するために、まず以下の統計量を計算します。

統計量計算結果
nデータの個数5
Σx₁1+2+3+4+515
Σx₂1+1+2+2+39
Σy5+7+10+11+1447
Σx₁²1+4+9+16+2555
Σx₂²1+1+4+4+919
Σx₁x₂1×1+2×1+3×2+4×2+5×332
Σx₁y1×5+2×7+3×10+4×11+5×14163
Σx₂y1×5+1×7+2×10+2×11+3×1496
💡 計算のコツ
Excelを使うなら、SUMPRODUCT関数が便利です。例えば Σx₁y は =SUMPRODUCT(x₁の範囲, yの範囲) で一発計算できます。
📘 平均値・分散の計算を復習したい方はこちら
第3回:平均値の奥深い世界 →

🔢 Step 2:正規方程式に代入する

計算した統計量を正規方程式に代入しましょう。

【正規方程式に代入】

47 = 5β₀ + 15β₁ + 9β₂

163 = 15β₀ + 55β₁ + 32β₂

96 = 9β₀ + 32β₁ + 19β₂

これで、β₀β₁β₂を求める3元1次連立方程式ができました。

🔢 Step 3:連立方程式を解く

連立方程式を解く方法はいくつかありますが、ここでは代入法で解いてみます。

Step 3-1:①式からβ₀を表す

①式を変形して、β₀を他の変数で表します。

47 = 5β₀ + 15β₁ + 9β₂

5β₀ = 47 − 15β₁ − 9β₂

β₀ = 9.4 − 3β₁ − 1.8β₂

Step 3-2:②式と③式に代入してβ₀を消去

β₀ = 9.4 − 3β₁ − 1.8β₂ を②式と③式に代入します。

②式に代入:

163 = 15(9.4 − 3β₁ − 1.8β₂) + 55β₁ + 32β₂
163 = 141 − 45β₁ − 27β₂ + 55β₁ + 32β₂
163 = 141 + 10β₁ + 5β₂
22 = 10β₁ + 5β₂ ... ②'

③式に代入:

96 = 9(9.4 − 3β₁ − 1.8β₂) + 32β₁ + 19β₂
96 = 84.6 − 27β₁ − 16.2β₂ + 32β₁ + 19β₂
96 = 84.6 + 5β₁ + 2.8β₂
11.4 = 5β₁ + 2.8β₂ ... ③'

Step 3-3:2元連立方程式を解く

これで β₁ と β₂ の2元連立方程式になりました。

②' : 22 = 10β₁ + 5β₂
③' : 11.4 = 5β₁ + 2.8β₂

③'を2倍して②'から引きます。

②' − 2×③' :
22 − 22.8 = (10β₁ − 10β₁) + (5β₂ − 5.6β₂)
−0.8 = −0.6β₂

β₂ = 1.333...(約 4/3)

β₂ を②'に代入してβ₁を求めます。

22 = 10β₁ + 5 × 1.333
22 = 10β₁ + 6.667
10β₁ = 15.333

β₁ = 1.533...(約 23/15)

最後に、β₁とβ₂を①'に代入してβ₀を求めます。

β₀ = 9.4 − 3 × 1.533 − 1.8 × 1.333
β₀ = 9.4 − 4.6 − 2.4

β₀ = 2.4

🎉 Step 4:結果をまとめる

これで、すべての係数が求まりました!

📐 求まった重回帰式
y = 2.4 + 1.53x₁ + 1.33x₂

(小数点以下2桁に丸めた値)

📝 係数の解釈

係数解釈
β₀(切片)2.4温度=0、圧力=0のときの強度(ベースライン)
β₁(温度)1.53圧力を固定して温度が1上がると、強度が1.53上がる
β₂(圧力)1.33温度を固定して圧力が1上がると、強度が1.33上がる
📘 偏回帰係数の解釈をもっと詳しく知りたい方はこちら
【図解】偏回帰係数とは?|「他を固定したときの影響度」を完全理解 →

✅ 検算してみよう

求めた式が正しいか、元のデータで検算してみましょう。

No.x₁x₂実測値 y予測値 ŷ残差
11155.27−0.27
22176.80+0.20
332109.67+0.33
4421111.20−0.20
5531414.07−0.07

残差(実測値−予測値)が小さく、よく当てはまっていることがわかります。

💡 検算のポイント
残差の合計は理論上ゼロになるはずです(−0.27+0.20+0.33−0.20−0.07 ≈ 0)。これも正しく計算できた証拠です。

🔧 実務での計算方法

実際の仕事や研究では、手計算ではなくツールを使うのが一般的です。

📊 Excelの場合

Excelの「データ分析」→「回帰分析」を使えば、一発で偏回帰係数が求まります。

  • 「データ」タブ →「データ分析」→「回帰分析」を選択
  • Y範囲(目的変数)とX範囲(説明変数)を指定
  • 「OK」を押すと、係数・決定係数・検定結果などが一括出力

🐍 Pythonの場合

Pythonなら、scikit-learnstatsmodelsライブラリで簡単に計算できます。

from sklearn.linear_model import LinearRegression
import numpy as np

X = np.array([[1,1], [2,1], [3,2], [4,2], [5,3]])
y = np.array([5, 7, 10, 11, 14])

model = LinearRegression()
model.fit(X, y)

print("切片:", model.intercept_)      # β₀
print("係数:", model.coef_)           # β₁, β₂
⚠️ 注意
ツールを使うにしても、「何を計算しているのか」を理解していることが大切です。この記事で学んだ手計算の流れを知っていれば、ツールの出力結果も正しく解釈できます。
📗 決定係数で「当てはまりの良さ」を評価したい方はこちら
決定係数(R²)の正体|「あてはまりの良さ」を視覚的に理解する →

📋 まとめ

この記事では、重回帰分析で偏回帰係数を求める「正規方程式」を、具体的な数値例で解説しました。

✅ この記事のポイント
  • 正規方程式は、偏回帰係数を求めるための連立方程式
  • 説明変数が2つなら、3本の連立方程式を解く
  • 手順は①統計量を計算 → ②代入 → ③連立方程式を解く
  • 実務ではExcelやPythonで簡単に計算できる
  • 検算で残差の合計がゼロになるか確認

正規方程式の計算は、中学校の連立方程式と同じです。難しく考えず、順番に消去していけば必ず解けます

次は、求めた重回帰式が「統計的に意味があるか」を検定する方法を学びましょう。

📚 次に読むべき記事

📘 【計算例あり】重回帰の平方和の分解|SR, Se, ST を求める →

分散分析の準備:回帰・残差・全体の平方和を計算する

📖 重回帰分析の全体像を確認したい方へ

正規方程式は重回帰分析の一部です。全体の流れを確認しましょう。

📊 重回帰分析とは?(超入門)→
🔥 単回帰分析の最小二乗法を復習したい方はこちら
【統計学】最小二乗法とは?回帰直線を引く仕組みを「バネの力」で図解 →

タグ

-回帰分析
-