世の中のあらゆる現象は、何らかの原因によって結果がもたらされていますよね。その因果関係には、とても分かりやすいものから、なかなか見つけ出せないものまでさまざまです。しかし、その原因を正確につきとめれば、当然、予測結果の精度も高くなるでしょう。そこで複数のデータの関係性を明らかにして予測精度を上げるのが、回帰分析です。
回帰分析は、ある数値データの説明変数が、別の数値データの目的変数にどれだけ影響を与えるかを予測する統計的手法です。例えば、人が風邪をひいたとき、薬を処方されただけ1日3回、5日分服用した場合と、まったく飲まなかった場合を比較すると、前者の方が回復が早まるのは明らかでしょう。この場合、目的変数は風邪が治るまでの時間、説明変数は薬を服用する回数になります。もちろん、説明変数(薬の服用数)が大きいほど、目的変数(治癒までの時間)は小さくなります。
この記事で回帰分析について学び、機械学習への理解を深めて今後のビジネスや研究に活用しましょう。
そこで今回は、回帰分析と機械学習の関係、回帰分析の種類、さらに回帰分析の評価法についてお伝えします。
回帰分析って何か
回帰分析をわかりやすく説明するために一例をあげましょう。
桶が儲かる原因として考えられるのは、「風が吹く」こと、「盲目になる人が増える」こと、「琵琶が多く必要なこと」など、さまざまです。これらの要因がどれだけ桶屋の売上に影響を与えたかを具体的に表す手法が回帰分析です。
回帰分析は、具体的には、予測対象となる現象(桶屋の売上高)を目的変数、その要因と考えられる要素(「大きな風が吹いた回数」など)を説明変数とし数理モデルで表記されます。説明変数の内容をどの様なものにするかはあくまで人間が考えるので、目的変数に影響を与えるかどうかは、一種の仮説にすぎません。しかも、説明変数が目的変数に影響を与えるすべての要因とも限りません。
しかし、説明変数の設定にあたってきちんとした分析をして、分析手法として回帰分析の精度が高まれば、説明変数を回帰分析の数理モデルに当てはめて算出される目的変数が、より現実にマッチしていることになります。そしてこの回帰分析で出した予測値を上手く活用すると、ビジネスや行政施策でも無駄が減らせたりして(在庫の過不足が減らせるなど)一定の成果が期待できます。
回帰分析と機械学習の関係
機械学習には、数多くのデータを学習させ、あらかじめ決められた目的を予測・分類させる教師あり学習と目的が決まっていない教師なし学習があります。実は、回帰分析もある説明変数を使って特定の目的変数を予測するため、統計的手法でありながらも機械学習の教師あり学習の一面をもち合わせます。つまり、回帰分析は機械学習のなかのアルゴリズムの一つでもあります。
単回帰分析とは
回帰分析のうち、説明変数が一つの場合を、単回帰分析といいます。その数式は、y=ax+bという形になります(説明変数がx、目的変数がy)。つまり、たった一つの要因が、ある結果にどれだけ影響を与えるかを示した分析手法です。薬を飲むことが、風邪が早く治ることにどれだけ影響を与えるか、という単純でわかりやすい因果関係を表すのに使われます。さらに具体的な例を示しましょう。
日当たり時間(時間) | ハイビスカスの咲いた数(個) |
8 | 60 |
4 | 28 |
1 | 11 |
これをエクセルを使って単回帰分析すると、y=7.054x+2.432 という結果になりました(数字は小数点第4位以下を切り捨て)。ちなみにこの単回帰分析モデルの決定係数(後述)は、0.991とかぎりなく1に近いため、当てはまり度合いが非常に高いことを意味します。つまり、このモデルを使えば、日当たり時間からおおよその花の咲き数を高い精度で予測できるということを示しています。
今回は話をわかりやすくするために仮で、しかも典型的なデータを3パターンしか使っていませんが、このデータ数を現実レベルで百、千、万、と増やしていけば、数式の係数や切片(定数項のことで、上記の例でいうと「2.432」の部分)の値、決定係数もすべて変化します。そうして導き出した回帰分析モデルでは、1日の平均日当たり時間を何時間にすれば、シーズン中に何個くらい花が咲くかが、理論上はさらに高い精度で予測できるようになります。
しかし、そのような単純な因果関係でも、何らかの理由で、例えば日当たり時間に対していくつ花が咲くかを客観的に明示しなければならない時には、役立つでしょう。
重回帰分析とは
重回帰分析は、説明変数が2つ以上の場合の回帰分析を意味します。例えば、さきほどのハイビスカスの咲いた数でいうと「日当たり時間」のみならず「水やりの回数」や「土の量」というように、説明変数を複数設定した場合の回帰分析がこれにあたります。
具体的に架空のデータを見ながら説明しましょう。以下が、説明変数を3つに増やした場合で「日当たり時間をx1」「水やり回数をx2」「土の量をx3」「咲いた花の数を目的変数y」とします。
日当たり時間(時間) | 水やり回数 | 土の量(リットル) | 咲いた花の数(個) |
8 | 2 | 5 | 68 |
4 | 1 | 3 | 25 |
1 | 0 | 1 | 10 |
7 | 1 | 2 | 45 |
5 | 2 | 3 | 48 |
2 | 3 | 5 | 45 |
1 | 1 | 2 | 14 |
このデータをエクセルで重回帰分析すると、y=5.016×1+9.900×2+1.259×3-1.560(数値は小数点第4位以下は切り捨て)となります。先ほどの単回帰分析同様、こちらの重回帰分析の決定係数も0.963と1に非常に近い値のため、当てはまり度合いが高いといえます。
単回帰分析は使われる例が少ないですが、こちらの重回帰分析については、ビジネスや研究の場で実際に数多く用いられます。その理由は、世の中の事象の多くが、単独ではなく複数の要因に影響をうけて引き起こされるからです。
よって、一般的には単回帰分析よりも重回帰分析の方が、現実に即した予測アルゴリズムと言えるでしょう。
回帰分析の評価方法
回帰分析モデルは、説明変数の内容や数によって、さまざまなパターンが考えられます。現実に活用するレベルまで精度を上げようと思えば、そのモデルにどれだけの信ぴょう性があるかを確かめなければなりません。これを回帰分析の評価といいます。
この評価で一定水準以上の結果が出れば、そのモデルを使って今後起こるある事象の結果について予測しても大きな外れや損失はほとんど起きないであろうと、判断できます。その評価方法として、具体的には「平均絶対誤差」「二条平均平方根誤差」「決定係数R2」などがあります。
平均絶対誤差は、MAEといわれ、実際値と回帰分析による予測値の絶対差を平均した数値で、小さいほど誤差も小さいのが特徴です。おもにサンプル全体の誤差をまんべんなく小さくしたい場合にこの評価法を採用します。
二条平均平方根誤差は、RMSEといわれ、実際値と予測値の誤差の2乗の平均の平方根をとった数値で、小さいほど誤差も小さいといえます。実際値と予測値の誤差を2乗する分、外れ値が大きく目立ちます。よって、大きな誤差を出すサンプルを極力なくしたい場合にこの評価法を採用します。
決定係数R2は、1から「(実測値-予測値)の2乗」を「(実際値-実際値の平均値)の2乗」で割った平均値を引いた数値で、その回帰分析モデルの当てはまりの度合いを示します。1に近いほど当てはまりが良いといえます。
さらに詳しく回帰分析を学べるおすすめ書籍
続いて、記事内で解説した回帰分析について、さらに体系的に詳しく学べる書籍をお伝えしましょう。
『7日間集中講義!Excel回帰分析入門:ツールで拡がるデータ解析&要因分析』米谷 学(著) オーム社
多くの方にとって身近なExcelを実際に使いながら回帰分析が学べる基本書です。これから本格的にデータ解析や統計学を学びたい方、文系でデータ分析に興味がある方におすすめです。回帰分析の基礎理論から始まり、単回帰分析、重回帰分析を体系的に説明してあります。さらに線形判別分析やロジスティック回帰分析まで、実例を出しながら解説しているので、イメージしやすくなる点もおすすめです。7日間で集中して読破すれば、Excelの使い方にも幅が生まれ、操作が不慣れな方もかなり馴染めるようになるでしょう。
『例題でよくわかる はじめての多変量解析』加藤 豊(著) 森北出版
回帰分析について基礎から学べますが、回帰分析を多変量解析の一部として扱っており、それ以外にもクラスター解析や主成分分析など、今後さらにデータ分析を学ぶうえで参考になる内容もともに学べるのが良いでしょう。しかも、各章ともまず基本問題を計算するところから始まり、その後詳しい理論の解説があり、さらに演習問題が続くので、実践的感覚をつかむのにも役立ちます。
『それ、根拠あるの?と言わせないデータ・統計分析ができる本』柏木吉基(著) 日本実業出版社
上司と部下が、ある国へ新規参入するため事業計画書を提出するまでをストーリーにした統計分析の基本書です。仮説から始まり、平均値や標準偏差など統計のキホンが開設され、回帰分析と話は移ります。データをいかに分析し、実効性のある形にしてプレゼンするか、というとても現実味のある実践書でもあります。日産自動車で実務経験のある著者が類似データの扱い方など、実践的データ活用のコツをたくさん披露しているので、理論というより、統計データの現実的意味や効力をリアルに感じながら学びたい方におすすめです。
さて今回は、回帰分析と機械学習の関係、回帰分析の種類、さらに回帰分析の評価法についてお伝えしました。
回帰分析は、説明変数が目的変数にどれだけ影響を与えるかを予測する手法で、具体的には、予測対象を目的変数、その要因と考えられる要素を説明変数とし数理モデルで表記されます。回帰分析は、ある説明変数から特定の目的変数を算出するため、機械学習の中でも教師あり学習にあたります。
回帰分析には、単回帰分析と重回帰分析があり、説明変数が一つの場合を、単回帰分析といいます。その数式は、y=ax+bという形になります(説明変数がx、目的変数がy)。一方、重回帰分析は、説明変数が2つ以上の場合の回帰分析を意味し、重回帰分析の方が、単回帰分析よりも実践の場で使われることが多いです。
回帰分析には、平均絶対誤差」「二乗平均平方根誤差」「決定係数R2」などの評価方法があり、これらを使って回帰分析の正確性を確かめてから実践に導入することを忘れてはなりません。
回帰分析をExcelを使いながら実技を交えて学びたい方には『7日間集中講義!Excel回帰分析入門:ツールで拡がるデータ解析&要因分析』がおすすめです。また、多変量分析という大枠の中で回帰分析を理解するには『例題でよくわかる はじめての多変量解析』が良いでしょう。
さらに、『それ、根拠あるの?と言わせないデータ・統計分析ができる本』は、データの力をどう実践に活かすかがよくわかるので、現場感覚を意識しながらリアルに回帰分析を学びたい方におすすめです。これらの本を使いながら回帰分析を行い、データ予測の精度を上げましょう。
【お知らせ】
当メディア(AIZINE)を運営しているAI(人工知能)/DX(デジタルトランスフォーメーション)開発会社お多福ラボでは「福をふりまく」をミッションに、スピード、提案内容、価格、全てにおいて期待を上回り、徹底的な顧客志向で小規模から大規模ソリューションまで幅広く対応しています。
御社の悩みを強みに変える仕組みづくりのお手伝いを致しますので、ぜひご相談ください。