it

線形回帰とは?意味と仕組みをわかりやすく解説!(線形回帰モデル・回帰分析・最小二乗法・機械学習・予測など)

当サイトでは記事内に広告を含みます

データ分析や機械学習の入門で必ずと言っていいほど登場する「線形回帰」。

「回帰分析とどう違うのか」「最小二乗法って何なのか」「機械学習とどう関係するのか」といった疑問を持つ方も多いでしょう。

本記事では、線形回帰の意味・仕組み・モデルの作り方から、最小二乗法・機械学習における位置づけ・予測への活用まで、わかりやすく解説していきます。

数式が苦手な方でも理解できるよう、具体例や図解を交えながら丁寧に説明しますので、ぜひ最後までご覧ください。

線形回帰とは?その意味と基本的な仕組み

それではまず、線形回帰の基本的な意味と仕組みについて解説していきます。

線形回帰(Linear Regression)とは、データの関係を直線(線形関数)で近似し、予測や分析を行う手法のことです。

たとえば、「気温と売上の関係」「勉強時間と試験スコアの関係」「住宅面積と価格の関係」など、2つ以上の変数の間にある傾向を直線で表現します。

最もシンプルな線形回帰(単回帰)のモデルは次のように表されます。

【単回帰モデルの基本式】

y = ax + b

y:目的変数(予測したい値)

x:説明変数(予測に使うデータ)

a:回帰係数(直線の傾き)

b:切片(y軸との交点)

線形回帰の目標は、実際のデータに最もよく当てはまる直線を求めることです。

この「最もよく当てはまる直線」を求める方法が、後述する「最小二乗法」です。

線形回帰は統計学・機械学習・データサイエンスの基礎として広く使われており、その理解は応用的な手法を学ぶ上でも非常に重要でしょう。

単回帰と重回帰の違い

線形回帰には「単回帰(単純線形回帰)」と「重回帰(重線形回帰)」の2種類があります。

単回帰は、説明変数(x)が1つだけの場合に使われるモデルです。

たとえば「勉強時間(x)だけで試験スコア(y)を予測する」場合が単回帰にあたります。

一方、重回帰は説明変数が複数ある場合に使われます。

【重回帰モデルの基本式】

y = a₁x₁ + a₂x₂ + … + aₙxₙ + b

(複数の説明変数 x₁, x₂, …, xₙ を使用)

たとえば「勉強時間・睡眠時間・過去の成績」の3つの変数から試験スコアを予測する場合は重回帰を用います。

重回帰は単回帰よりも精度が高くなりやすい反面、変数間の多重共線性(相関が高い変数同士が混在する問題)に注意が必要です。

実際のデータ分析では、重回帰が使われるケースの方が多いでしょう。

回帰分析との関係

「回帰分析」と「線形回帰」は混同されやすい言葉ですが、両者の関係を整理しておきましょう。

回帰分析とは、変数間の関係をモデル化し、予測や因果関係の解明を行う統計的手法の総称です。

線形回帰はその中で「直線(線形モデル)」を使う手法を指します。

回帰分析にはほかにも、ロジスティック回帰・多項式回帰・リッジ回帰・ラッソ回帰などさまざまな種類があります。

つまり、線形回帰は回帰分析の一種であり、最もシンプルかつ基本的な手法と言えるでしょう。

回帰分析を学ぶ際には、まず線形回帰をしっかりと理解することが重要です。

線形回帰モデルの前提条件

線形回帰モデルを正しく使うためには、いくつかの前提条件があります。

主な前提条件を以下にまとめます。

前提条件 内容
線形性 目的変数と説明変数の間に線形関係がある
独立性 各データポイントが互いに独立している
等分散性 残差の分散が一定である
正規性 残差が正規分布に従う
多重共線性なし 説明変数間に強い相関がない(重回帰の場合)

これらの前提条件が満たされない場合、線形回帰モデルの予測精度や解釈が信頼できなくなる可能性があります。

分析を行う際には、データの可視化や残差プロットなどで前提条件を確認する習慣をつけておくと良いでしょう。

最小二乗法とは?線形回帰での役割

続いては、線形回帰モデルのパラメータを決定するための「最小二乗法」について確認していきます。

最小二乗法(Ordinary Least Squares, OLS)とは、予測値と実際の値の差(残差)の二乗和を最小化することで、最適な直線を求める方法です。

なぜ「差の二乗」を使うのかというと、プラスとマイナスの残差が打ち消し合うのを防ぎ、すべての誤差を正の値として扱うためです。

残差と二乗誤差の考え方

残差とは、実際の値(y)と予測値(ŷ)の差(y – ŷ)のことです。

最小二乗法では、この残差の二乗和(RSS: Residual Sum of Squares)を最小化します。

【残差二乗和の式】

RSS = Σ(yᵢ – ŷᵢ)²

= Σ(yᵢ – (axᵢ + b))²

(すべてのデータポイントについて残差の二乗を合計する)

RSSを最小にするパラメータ a と b を求めることで、データに最もよく当てはまる直線が得られます。

最小二乗法はシンプルかつ強力な手法であり、線形回帰の基礎として広く使われています。

最小二乗法によるパラメータの求め方

最小二乗法では、微分を使ってRSSを最小化するパラメータを求めます。

単回帰の場合、回帰係数 a と切片 b は次の式で求められます。

【最小二乗法による回帰係数・切片の計算式】

a = Σ(xᵢ – x̄)(yᵢ – ȳ) / Σ(xᵢ – x̄)²

b = ȳ – a × x̄

(x̄, ȳ はそれぞれ x, y の平均値)

これらの式はExcelやPythonなどのツールで簡単に計算できます。

Excelでは SLOPE 関数と INTERCEPT 関数、PythonではsciPyやscikit-learnのライブラリを使って計算するのが一般的でしょう。

決定係数R²とモデルの評価

線形回帰モデルの性能を評価する指標として、「決定係数(R²)」がよく使われます。

R²は0から1の値をとり、1に近いほどモデルがデータをよく説明できていることを示します。

【決定係数の式】

R² = 1 – RSS / TSS

TSS = Σ(yᵢ – ȳ)²(全変動)

RSS = Σ(yᵢ – ŷᵢ)²(残差変動)

たとえば R² = 0.85 であれば、「モデルがデータの変動の85%を説明できている」と解釈します。

ただし、R²が高くても過学習(特定のデータに過度に適合してしまう状態)の可能性があるため、訓練データとテストデータに分けて評価することが重要です。

機械学習における線形回帰の位置づけ

続いては、機械学習の文脈での線形回帰の役割と活用について確認していきます。

機械学習では、線形回帰は「教師あり学習」の中の「回帰問題」を解くための最も基本的なアルゴリズムです。

線形回帰は機械学習の入門アルゴリズムとして広く使われており、データサイエンティストやエンジニアが最初に学ぶべき手法のひとつです。

シンプルな構造でありながら、多くの実務問題に応用できる強力なツールでもあります。

機械学習での線形回帰の学習プロセス

機械学習における線形回帰の学習プロセスは次のような流れになります。

まず、訓練データ(特徴量と正解ラベルのペア)を用意します。

次に、損失関数(多くの場合、残差の二乗和または平均二乗誤差)を定義します。

そして、最適化アルゴリズム(最小二乗法や勾配降下法)を使って損失関数を最小化するパラメータを求めます。

最後に、テストデータで予測性能を評価します。

勾配降下法は、データ量が膨大な場合に最小二乗法の代わりに使われる最適化手法で、パラメータを少しずつ更新することで最適解に近づけていきます。

リッジ回帰・ラッソ回帰との違い

線形回帰の発展形として、リッジ回帰とラッソ回帰があります。

これらは過学習を防ぐために正則化という手法を追加した線形回帰モデルです。

手法 正則化の種類 特徴
線形回帰 なし シンプル、過学習のリスクあり
リッジ回帰 L2正則化 係数を小さく抑える、過学習防止
ラッソ回帰 L1正則化 不要な特徴量の係数をゼロにする、特徴選択
エラスティックネット L1+L2 リッジとラッソの両方の利点を持つ

特徴量の数が多い場合や、多重共線性が懸念される場合には、リッジ回帰やラッソ回帰を使うことで安定したモデルを構築できるでしょう。

線形回帰の実際の応用事例

線形回帰は実務の様々な場面で活用されています。

不動産分野では、住宅の面積・築年数・立地などから価格を予測するモデルに使われています。

金融分野では、株価の予測・リスク評価・信用スコアリングなどに線形回帰が用いられます。

マーケティングでは、広告費と売上の関係を分析し、最適な予算配分を決定するために活用されるでしょう。

医療・ヘルスケアでは、患者の年齢・体重・血圧などから疾患リスクを予測するモデルに応用されています。

このように、線形回帰はシンプルながら実用的な予測ツールとして、多くの業界で幅広く活用されています。

まとめ

本記事では、線形回帰の意味・仕組み・モデルの種類・最小二乗法・機械学習での位置づけ・実際の応用事例について詳しく解説してきました。

線形回帰とは、データの関係を直線で近似し予測や分析を行う手法であり、最小二乗法によって最適なパラメータが求められます。

単回帰と重回帰の使い分け、決定係数によるモデル評価、リッジ・ラッソ回帰への発展など、線形回帰は奥深い手法でもあります。

機械学習やデータ分析を学ぶ際には、まず線形回帰をしっかりと理解することが非常に重要です。

本記事の内容を参考に、実際のデータを使って線形回帰モデルを作ってみることで、理解がさらに深まるでしょう。