G検定

読者の疑問に答える!線形回帰分析の「線形」はどういう意味?

回帰分析とは、ビジネスにおいて最も多く使われているデータ分析手法の1つです。そのシンプルさ、分析結果の説明のしやすさなどが人気の理由です。回帰分析の中で特に主流なのが線形回帰です。線形回帰では、予測したい量を、データにある他の変数から成り立つ直線モデルを使って定量的に説明します。

回帰分析で使われるモデル(回帰方程式)として、数学的に扱いやすい多項式がよく使われます。

この記事では、線形回帰について簡単に説明した後に、線形回帰と非線形回帰はどう違うのかについて説明します。

線形回帰とは

線形回帰とは、1つ以上の説明変数を使用して、連続値である目的関数を予測するための手法です。「目的変数」とは、予測したい値のことです。「説明変数」とは予測の手掛かりとなる変数(特徴量)のことです。線形回帰には単回帰分析(Simple regression analysis)重回帰分析(Multiple regression analysis)があります。

 

単回帰分析

単回帰分析とは説明変数が1つだけある線形回帰問題です。単回帰分析モデルを表す線形式は以下です。

ここで、Xは説明変数、Yは目的変数、aとbは回帰係数です。中学の数学で学ぶ一次関数と同様に、aを「傾き」、bを「切片」や「オフセット」と呼ぶことがあります。傾きaは説明変数の予測したい量への「影響度」を表し、その絶対値が大きければ大きいほど、Xが増減した際にYが「引きずられて変化」する程度が大きくなります。

下図は単回帰分析の模式図です。ここではデータ点(X,Y)が二次元に散布しており、この分布に上記の線形式を当てはめ、分布を良い具合に表現できる傾きaと切片bを定めることで、単回帰モデルを導出します。決定後のモデルは回帰方程式と呼ばれ、将来予測に使うことができます。回帰直線の式に将来のデータXの値を代入すれば、予測値Yが得られます。

出典:ディープラーニングG検定(ジェネラリスト)最強の合格テキスト[明瞭解説+良質問題]

 

重回帰分析

重回帰分析とは複数の説明変数から目的変数を予測する線形回帰です。重回帰分析モデルを表す式は以下です。

ここで、ai(i=1,2,…,n)は偏回帰係数と呼ばれ、各説明変数の予測したい量への影響度を表します。言い換えると、注目の変数以外の変数を固定し、その変数だけを動かしたときに得られる目的変数の変化量です。偏回帰係数の大小を比較することで、どの変数が予測に重要かを推測できます。

 

線形回帰と非線型回帰との違いは?

先ほど述べた「単回帰分析」と「重回帰分析」は、線形回帰のモデルで説明されます。なぜなら、説明変数Xと目的変数Yの間に線形な関係を仮定した分析モデルであるからです。(式1) や(式2) では、目的変数 Y は説明変数 X1, X2, …, Xn の線形結合として表されます。また、XとYの関係性を表す関数をグラフにすると直線になります。直線的な関係であることは、説明変数の変化に合わせて Y が変化する割合が常に一定であることと等価です。

対照的に、非線形回帰では、非線形関数を使って説明変数Xと目的変数Yの間の関係性を表します。例えば、対数関数や平方根などは非直線(非線形)の関数です。ロジスティック回帰は、この非線形回帰の代表的な分析手法の1つです。

弊執の以下の書籍(G検定の「緑本」)では、ロジスティック回帰を「非線形」と表現しています。

ディープラーニングG検定(ジェネラリスト)最強の合格テキスト[明瞭解説+良質問題]

書籍から以下のコラムを引用します。説明変数Xと目的変数Yを結ぶロジスティック回帰の関数の形に注目してください。

読者からの「非線型」への疑問に答える!

書籍の読者の方から「線形 vs 非線型」の考え方について質問を受けましたので、以下でそのやりとりを記述します。

読者
読者
本書でロジスティック回帰を「非線形」と表現しているのはなぜでしょうか?
yan
yan
単回帰分析や重回帰分析と比較するとわかりやすいですが、ロジスティック回帰分析では、y(目的変数)がx(説明変数)の線形結合として表されないからです。指数関数が絡んでいます。
読者
読者
ロジスティック回帰は「一般化線形モデル」と呼ばれることがあるので「線形」とするのが正しいという認識なのですが…
yan
yan
「一般化線形モデル」とは y = f(x) のこと、つまりyがxの関数として表せることが定義だと私は理解しています。
読者
読者
では、確認しますと、説明変数と目的変数のグラフが直線じゃないから非線形という解釈で合っていますしょうか?
yan
yan
ざっというとその理解で大丈夫です! 線形結合は y = a1*x1 + a2*x2 + …. + an*xn (aは係数、xは説明変数,複数可) のような関数で表されるもの、逆にいうとそれ以外は非線型関数と思ってよいです。
読者
読者
私は線形予測子(シグモイド関数だとeの指数の部分)で重みと説明変数の関係が線形なら、説明変数と目的変数が線形ではない(例えばy=ax^2)としても一般化線形モデルだと考えていたのですが、そうではなくy=f(x)が直線なら線形、それ以外なら非線形と考えるということでしょうか?
yan
yan
私もそうですが、世の中の大部分はそのような理解で通じると思われます。ただし、言葉の解釈には曖昧性が存在します。

 

ロジスティックを「非線形」と紹介している例:
http://i.cla.kobe-u.ac.jp/murao/class/2014-SeminarB2/9_NonlinearRegression.pdf…

ロジスティックはあくまで「線形または準線形」と紹介している例:
https://home.hiroshima-u.ac.jp/tkurita/lecture/statface/node15.html

 

この読者の方は、G検定やその対策本に現れる知識を鵜呑み・丸暗記するではなく疑問を積極的に持たれる姿が印象的でした。
素晴らしいですね!

同じ疑問を持っていらっしゃる方の参考になればと願っています。

 

今回も最後まで読んでいただき、ありがとうございました。次回もお会いしましょう。

執筆担当:ヤン ジャクリン(分析官・講師)

yan
データ分析官・データサイエンス講座の講師