回帰分析 ステップ0
06 02, 2010
個人用。
回帰分析とは何かという事を、まずは簡単な単回帰分析で説明していきます。
よくあげられる例としては「身長と体重」の話があると思います。大雑把にいって、「身長が高ければその分体重も大きい」と考えられます。しかし、わざわざ「大雑把」だと断りを入れたように、実際に道を歩いている人にアンケートを取ってみれば、必ずしもそうなってはいないということがすぐに(というかやらなくても)わかるでしょう。実際には、下記図1のように、身長と体重の間には完全な相関関係はありません。

図1. まじ適当
ここで、便利な関数を想定しましょう。どんなものかというと、「身長を入力するとそれに応じた体重を出力してくれる関数」です。しかし、そんなものが本当に作れるのでしょうか?答えはノーです。すぐにわかるように、例えば同じ身長でもさまざまな体重の人がいますし、170cmの人より175cmの人の方が(身長が高いからと言って)体重が多いとは言えないので、そんな便利な関数は作ることができません。
なら、こうしてはどうでしょうか。つまり、「たくさんの人にアンケートをとってデータを集めたあと、それをグラフに(図1のように)プロットし、それらの点のちょうど真ん中を通るような直線 y=ax+b を、その理想的な関数とする」のです。ちょうど、下の図2の赤線ような感じです。

図2.さっきのをちょっと書き換えただけ
どうでしょうか。これならたしかに(超大雑把ですが)入力した身長に対応する体重を出力することができます。近似、という言い方でピンと来る人もいるかも知れません。ここでいう体重を、こういう分野では「目的変数(Y)」、身長を「説明変数(X)」と呼びます(たぶん)。「身長で体重を説明できる」って事だと思います。このように、1つの変数で1つの変数を説明する事を単回帰分析と呼びます。説明変数が2つ以上に増えると重回帰分析です。身長の他に年齢を入れてみるとか。「身長と年齢と、他は何が増やせるかな・・・」と考えてみると、実は説明変数は目的変数の原因であると言うことができます。
以上が「回帰分析とは何か」という話です。つまり、ある変数とその原因となっている変数とを簡単な関数で関係づけてあげる、ということです。たぶん。実際に何かで実験する時は、今回の例のように「なんとなく相関ありそうだけど実際はバラバラなもの」がいいんじゃないですかね。完全に相関無いと近似しにくくてつまんないし。
実際にこの直線の式をアンケートで集めたデータから導く方法として、最小二乗法を使ったものが有名(というかそれしか知らない)ですが、それはまた今度。でいいのかな。ちなみに、今回は直線で近似しようという事になりましたが、実際には直線に限らず放物線(2次関数)に近似したりすることもあります。それは、データを実際にプロットして概形を見てから決めるといいんじゃないですかね。
回帰分析とは何かという事を、まずは簡単な単回帰分析で説明していきます。
よくあげられる例としては「身長と体重」の話があると思います。大雑把にいって、「身長が高ければその分体重も大きい」と考えられます。しかし、わざわざ「大雑把」だと断りを入れたように、実際に道を歩いている人にアンケートを取ってみれば、必ずしもそうなってはいないということがすぐに(というかやらなくても)わかるでしょう。実際には、下記図1のように、身長と体重の間には完全な相関関係はありません。

図1. まじ適当
ここで、便利な関数を想定しましょう。どんなものかというと、「身長を入力するとそれに応じた体重を出力してくれる関数」です。しかし、そんなものが本当に作れるのでしょうか?答えはノーです。すぐにわかるように、例えば同じ身長でもさまざまな体重の人がいますし、170cmの人より175cmの人の方が(身長が高いからと言って)体重が多いとは言えないので、そんな便利な関数は作ることができません。
なら、こうしてはどうでしょうか。つまり、「たくさんの人にアンケートをとってデータを集めたあと、それをグラフに(図1のように)プロットし、それらの点のちょうど真ん中を通るような直線 y=ax+b を、その理想的な関数とする」のです。ちょうど、下の図2の赤線ような感じです。

図2.さっきのをちょっと書き換えただけ
どうでしょうか。これならたしかに(超大雑把ですが)入力した身長に対応する体重を出力することができます。近似、という言い方でピンと来る人もいるかも知れません。ここでいう体重を、こういう分野では「目的変数(Y)」、身長を「説明変数(X)」と呼びます(たぶん)。「身長で体重を説明できる」って事だと思います。このように、1つの変数で1つの変数を説明する事を単回帰分析と呼びます。説明変数が2つ以上に増えると重回帰分析です。身長の他に年齢を入れてみるとか。「身長と年齢と、他は何が増やせるかな・・・」と考えてみると、実は説明変数は目的変数の原因であると言うことができます。
以上が「回帰分析とは何か」という話です。つまり、ある変数とその原因となっている変数とを簡単な関数で関係づけてあげる、ということです。たぶん。実際に何かで実験する時は、今回の例のように「なんとなく相関ありそうだけど実際はバラバラなもの」がいいんじゃないですかね。完全に相関無いと近似しにくくてつまんないし。
実際にこの直線の式をアンケートで集めたデータから導く方法として、最小二乗法を使ったものが有名(というかそれしか知らない)ですが、それはまた今度。でいいのかな。ちなみに、今回は直線で近似しようという事になりましたが、実際には直線に限らず放物線(2次関数)に近似したりすることもあります。それは、データを実際にプロットして概形を見てから決めるといいんじゃないですかね。
スポンサーサイト