レッスン1 / 3問目

『重回帰分析の概要』

重回帰分析の概要

このレッスンから、重回帰分析を学習していきましょう。
ここでは、重回帰分析について単回帰分析と比較をしながら、大まかな概要を説明していきます。

前回までの、単回帰分析では、「広告宣伝費」から「来店者数」を予測しました。
ここでの「広告宣伝費」のように、入力値となる値を入力変数と呼びます。

単回帰分析では、入力変数が1つだけでしたが、
この入力変数が複数になったものが重回帰分析です。

例えば、「広告宣伝費」「従業員数」「気温」などの複数の項目から、「売上」を予測する場合に重回帰分析を用います。

単回帰

重回帰

実務で分析を行う際は、重回帰分析を用いることの方が多いです。
なぜかというと、通常のビジネスにおける予測対象(売上など)には、複数の要因があることがほとんどであるためです。

例えば、「不動産の価格」を予測する場合、「面積」という一つの項目から「不動産価格」を予測しようとしても、
実際の不動産価格は「立地」や「築年数」など、他様々な要因により決定されるため、正しい予測をすることができません。

そのため、重回帰分析を用いて、複数の要因を考慮した分析を行う必要があります。

全体像の把握

重回帰分析は、機械学習の中の、教師あり学習、回帰に属します。

おさらいですが、教師あり学習には値を予測する「回帰問題」と、値を分類する「分類問題」があります。

本レッスンでは値を予測する「回帰問題」を扱います。

重回帰分析の流れ

では、重回帰分析について見ていきましょう。
ここでは、重回帰分析について全体の流れを解説します。


今回は例題として、下記「不動産価格」のデータを使用します。

上記データにおいて「面積」「築年数」「駅からの距離」という3つの入力変数から「価格」を予測する機械学習モデルを作成することが目的となります。

単回帰分析との違いは、入力変数が「面積」「築年数」「駅からの距離」と、3つある点です。

入力変数が複数ある場合には、どの項目がどれだけ価格に影響を与えているのかという点が重要となります。

今回のデータであれば、「面積」「築年数」「駅からの距離」のうち、どの項目がどれだけ価格に影響を与えているかということです。

この「影響度」の指標として、 重みという概念が登場します。

重回帰分析の予測では、以下のように「面積」「築年数」「駅からの距離」それぞれの項目に重みを掛けることにより値を予測します。

価格 = (面積 × 重み1) + (築年数 × 重み2) + (距離 × 重み3)

つまり、「重み」がパラメーターであり、
この「重み」を求めることが重回帰分析の目的となります。

また、「面積」「築年数」「駅からの距離」これらは単位が異なります。
面積は「㎡」、築年数は「年」、駅からの距離は「分」が単位となるため、単純に計算することはできません。
重みはこれら単位の違いを調整する役割もあります。

学習の仕方について見ていこう

では次は、データからどのようにして学習をするのか見ていきましょう。

下記データを学習する例を見ていきます。(先頭の3件のみを例に見ていきます。)

この場合、まず以下のように「面積」「築年数」「駅からの距離」に重みを掛けた値の和を予測値とします。
(重みを「w」(weight)、予測値を「 y ^」で表記します。)

y ^1= (68×w1)+ (41×w2)+ (7×w3)

y ^2= (56×w1)+ (24×w2)+ (6×w3)

y ^3= (70×w1)+ (38×w2)+ (7×w3)

(実際には、上記の式に「バイアス」という、どのデータにも入る一定の値が入ります。)

上記の式において、w1w3最も適切となる値を求めることが重回帰分析での目的です。

この「最も適切となる値」とは、実際の「価格」から予測値を引いた値の合計が最も小さくなる点です。

つまり、以下の式(損失関数)の値が最も小さくなる点を求めることにより、適切な重みが求まります。

L= (2580- y ^1)2+ (2680- y ^2)2+ (3480- y ^3)2

上記の損失関数は単回帰分析で使用した「二乗誤差」です。

このように損失関数を最小化することにより「w1」「w2」「w3」の適切な値を求めます。
そして、求めた「w1」「w2」「w3」を用いて、不動産の価格を予測することができます。


では、これで重回帰分析の概要についての説明は以上となります。

このレッスンでは、簡単に重回帰分析の全体像について説明しました。
ここで見た計算を行うために、数学の「線形代数」「微分」などを使用します。

次のレッスンから重回帰分析の数学について解説していきます。
ここでは、重回帰分析の全体像を押さえておきましょう。


このレッスンは演習課題はありません。
判定ボタンを押して次のレッスンに進んでください。

Last updated:2020/1/24

main.py
設定
g
n
i
d
a
o
L