最小二乗法をきちんと理解して回帰分析をしよう

最小二乗法をきちんと理解して回帰分析をしよう
えびかずき
えびかずき

こんにちは、えびかずきです。
普段何気なく使っている最小二乗法ですが、

きちんと理解して使えているでしょうか?

少しでも不安に感じた方はこの記事を読んでみてください。

この記事はこんな人におすすめ:
・最小二乗法についてきちんと理解したい。
・エクセルの近似曲線が引かれる仕組みをしりたい。

この記事はこんな人にはおすすめでない:
・微分を理解していない

データのあふれる現代社会。

データ分析のプロでなくとも、オフィスで働いていたら自然とデータを処理する機会に直面してしまうことでしょう。

たとえばエクセルでデータをプロットして、近似曲線をソフトにおまかせでシャッと引くなんてことはよくありますよね。

ところでこの近似曲線、

最小二乗法を使って引かれているということは多くの方がご存知だと思いますが、

では具体的にどうやって回帰係数が算出されて、他の手法に比べてどんな特徴があるのかについてきちんと説明できる人は意外と少ないのではないでしょうか?

ということで今回は、最小二乗法の仕組みとその特徴について詳しくみていきたいと思います。

この記事で特に伝えたいことは、我々が使っている”通常の”最小二乗法は、いくつかある手法の一つに過ぎないということ。

そして、最小二乗法がいつでも最良の手法とは限らないということです。

では最小二乗法の仕組みから順を追って説明していきましょう。

最小二乗法とは

まず最小二乗法とは、そもそも回帰分析に使うデータ処理の手法のことで、一般には下図のように実データとの差の二乗の総和が最小となるように回帰直線を選ぶ手法のことを言います。

また、この回帰分析を特に通常の最小二乗回帰という意味で、OLS(Ordinary Least Squares regression)と呼ばれることもあります。

”通常の”というからには当然それ以外の最小二乗もあるわけで、

例えば係数に重みを付けたりだとか、二乗値を最小化するのは同じでも最小化する対象が異なっていたりと、実はいろいろあります。

ということでこれ以降、最小二乗法と言えば”通常の”最小二乗法(OLS)を意味することとします。

図1 最小二乗による回帰

さて、それでは回帰に関して具体的な話をしていきましょう。

最小二乗法の多くのケースでは、上図のようにyをxで表した2次元のプロットが使われます。

この時、モデルとなる関数は下のようになります。


\(y=α+βx\)


これに対する実データとのズレが最小になるように回帰係数のαとβをうまく選んでやるというのが、最小二乗法というわけです。

例えば、yとxのデータを準備して、エクセルの近似曲線で線形近似を選ぶと、このモデルで回帰線が引かれることになります。

さらに発展系として、説明変数が複数ある重回帰分析もありますが、基本的な原理は同じです。

最小二乗法が感覚とズレるケース

上で説明した”通常の”最小二乗法はいつでも最良の手法であると過信してはいけません。

例えば、下の例を見てみてください。

感覚的に回帰線がズレているように感じませんか?

上の例だとy=xの対角線が回帰線として正しいと感じる人が多いと思いますが、通常の最小二乗法を使うと、このようにズレてしまいます。

これは縦軸のy成分のみのズレを最小化するようにモデルが作られていることが原因です。

もっと本質的なことを言うと、これはそもそも”通常の”最小二乗法が、xには誤差が含まれないという前提の下に作られたモデルであるということが反映された結果です。

たとえば、回帰線との”距離”の二乗を最小化するモデルを使った場合、結果は以下のようになります。

この考え方は、主成分回帰という手法と同じ意味になります。

どうです、感覚的に正しそうな線が引かれていませんか?

決して感覚的に合っているモデルが正しいと主張したいわけではありませんが、使うモデルによって回帰の結果が変わることもあるので、注意が必要です。

要するにxに誤差がないというモデルで考えているならば、通常の最小二乗法で良いですが、当然それ以外のモデルもあります。

ということで、ここで伝えたかったことは、

”通常の”最小二乗法は、たくさんあるモデルのうちの一つに過ぎませんよということです。

どうやって回帰係数を算出するか

では上で示した回帰係数のαとβはどうやって決めれば良いでしょうか?

その方法は単純で、実データとの差の二乗の総和(残差平方和:S)が最小になるところを探せばいいわけですから、Sをαとβを変数とする関数で記述して、微分がゼロになるところを計算すればいいだけです。

まずSは、以下のように記述できます。

\(\displaystyle S=\sum_i^n{\left[y_i-(α+βx_i)\right]^2}\)

これをαとβで偏微分すると、

\(\displaystyle \dfrac{\partial S}{\partial α}=-2\sum_i^n{\left[y_i-(α+βx_i)\right]}\)

\(\displaystyle \dfrac{\partial S}{\partial β}=-2\sum_i^n{x_i\left[y_i-(α+βx_i)\right]}\)

となります。

この二式それぞれを0とおいて式を整理すると、

\(\displaystyle n\hat α+\hat β\sum_i^n{x_i}=\sum_i^n{y_i}\)

\(\displaystyle \hatα\sum_i^n{x_i}+\hatβ\sum_i^n{x_i^2}=\sum_i^n{x_iy_i}\)

なおここでは、最小二乗で最適化された係数という意味でαとβにハットを付与している

となる。

よって、この連立方程式を解いて得たαとβが回帰係数となります。
(ちなみにこの連立方程式は正規方程式と呼ばれることもある。)

あとはゴリゴリと式変形をすれば、以下の式に整理できます。

\(\displaystyle \hat β=\dfrac{\sum_i^n{(y_i-\overline y)(x_i-\overline x)}}{\sum_i^n{(x_i-\overline x)^2}}=\dfrac{s_{xy}}{s_{xx}}=r_{xy}\dfrac{\sqrt{s_{yy}}}{\sqrt{s_{xx}}}=r_{xy}\dfrac{s_{y}}{s_{x}}\)

\(\hat α=\overline y-\hat β\overline x\)

\(s_{xx}とs_{yy}は分散,s_{xy}は共分散,s_xとs_yは標準偏差,rは相関係数を表す\)

よってこの式からわかるように、回帰係数αとβを得たいならば、

相関係数と標準偏差がわかれば良いということになります。

つまりエクセルの近似曲線で線形近似を行うと、内部で自動的にこれらの演算が行われて回帰係数が算出されているというわけである。


もし自分の手で式変形を確認したい場合は、下のことに注意するとスムーズにいくと思います。

\(\overline x = \dfrac{1}{n}\sum_i^n{x_i}\)

\(\overline y = \dfrac{1}{n}\sum_i^n{y_i}\)


R2乗値とは何か?

回帰係数の算出方法が理解できたところで、R2乗値について説明しておこうと思います。

R2乗値と言えば、エクセルで近似曲線を引いた時、下図のように表示されるアレですね。

この数値が大きいほど、良い近似となっているということは多くの方がご存知だと思います。

しかしこれは具体的にどうやって計算するのでしょう?

答えは、回帰係数の算出の時に登場した相関係数が関わっています。

要するにR2乗値というのは、単に相関係数を2乗した値なのです。

とここで、相関係数がどんなものだったかを思い出してみましょう。

xとyの相関係数rは、以下で定義される量で、-1~1の値をとります。

ちなみにピアソンの積率相関係数と呼ばれることもあります。

\(r_{xy}=\dfrac{s_{xy}}{s_xs_y}\)

\(s_{xy}は共分散,s_xとs_yは標準偏差を表す\)

もっと具体的に書き下すと、

\(\displaystyle r_{xy}=\dfrac{\dfrac{1}{n}\sum_i^n{(x_i-\overline x)(y_i-\overline y)}}{\sqrt{\dfrac{1}{n}\sum_i^n(x_i-\overline x)}\sqrt{\dfrac{1}{n}\sum_i^n(y_i-\overline y)}}\)

となります。

実はこの相関係数、xとyをグラフにプロットした時の対称性と深い関係があります。

下はWikipediaに紹介されている説明図ですが、ばらつきが直線に近いほどその絶対値が大きくなります。

そして、傾きが正だと相関係数も正、逆に傾きが負だと相関係数は負となります。

ではR2乗値に話を戻しましょう。

R2乗値は相関係数を2乗したものでした。

とすれば、その値は0~1の間の値をとり、R2乗値が1に近いほど点のばらつきは直線に近いということになります。

ということで、R2乗値が大きいほど点のばらつきが小さく、直線でよく近似できると言えるわけです。

さらに深く分析する

回帰分析の結果を考察する数値はR2乗値だけではありません。

統計学的には、最小二乗法は以下のようにεという正規分布に従う誤差項をおいた回帰モデルが使われることが多いです。

\(y=α+βx+ε\)

このモデルよって、統計的に詳しくデータを解析することができます。

例えば、

記事の冒頭で紹介した、「図1 最小二乗による回帰」のデータを、エクセルのデータ分析機能を使って回帰分析した結果が以下です。

エクセルデータ分析による回帰分析結果

これは誤差項が正規分布に基づいているという仮定の下、仮設検定を行った結果が示されています。

今回はちょっと力尽きちゃったので、この内容の説明はまた気が向いたらリライトで追記します。

ということで、ここで言いたかったことは最小二乗法は意外と奥が深いですよと言うことです。

まとめ

今回は、最小二乗法をきちんと理解して回帰分析をしようということで、最小二乗法について詳しく説明しました。

ここで説明した”通常の”最小二乗法はエクセルの近似曲線にも使われていることから多くの人が使っている手法だと思います。

しかしその原理や特徴きちんと理解しておかなければ、正しい考察ができませんので気をつけましょう。

参考

記事作成にあたって、以下の情報を参考にしました。

参考URL

回帰と相関,知っているようで知らない,その本質:Excel の回帰分析を例として

参考書籍

統計カテゴリの最新記事