回帰:機械学習で予測してみよう

AIの初心者
先生、「回帰」って難しそうなんですけど、簡単に説明してもらえますか?

AI専門家
そうだなあ。例えば、家の広さと値段の関係を考えてみよう。家が広いほど値段も高くなる傾向があるよね? 「回帰」とは、この「家の広さ」のような情報から「値段」を予測する手法のことなんだ。

AIの初心者
なるほど。でも、値段以外にも、日当たりとか、駅からの距離とか、色々な要素が関係しているような気がします。

AI専門家
その通り!家の広さ「だけ」で値段を予測するのを「単回帰分析」、家の広さ、日当たり、駅からの距離など「複数」の要素から値段を予測するのを「重回帰分析」と言うんだよ。要素がたくさんある方が、より正確な予測ができることが多いんだ。
回帰とは。
人工知能の分野でよく使われる「回帰」という言葉について説明します。回帰とは、数値がどれくらいになるのかを予測する問題のことです。例えば、物の値段や気温といった、連続的に変化する数値を予測します。似た言葉に「分類」がありますが、こちらはグループ分けのような、決まった種類の中からどれに当てはまるのかを予測するのに対し、回帰は連続的に変化する数値を扱います。回帰の問題を解くための方法として、回帰分析というものがあり、その種類には単回帰分析と重回帰分析があります。予測の手がかりとなる要素が一つの場合は単回帰分析を、複数ある場合は重回帰分析を使います。さらに、線形回帰と多項式回帰といった種類もあり、多項式回帰を使うと、より複雑な特徴を見つけることができます。
回帰とは

回帰とは、機械学習という分野でよく使われる手法で、過去の情報をもとに未来の値を予想することを指します。特に、数値のように連続的に変化する値を予想する際に役立ちます。例えば、これまでの商品の売上実績から、これからの売上がどれくらいになるのかを予測したり、気温の変化から電力需要を予測したりするといった場面で使われています。
過去のある時点での情報から、未来のある時点での値を予測するため、時間の流れに沿った変化を捉えることが重要になります。例えば、過去数年間の売上データを分析することで、売上の季節変動や長期的な傾向を把握し、将来の売上を予測することができます。また、気温と電力需要の関係性を分析することで、気温の変化に応じて電力需要がどのように変化するのかを予測し、電力供給の計画に役立てることができます。
回帰は、数値以外の分類を予測する手法とは異なり、連続的な値の変化を捉え、将来の傾向を予測することに重点を置いています。例えば、犬か猫かを判別するような分類タスクとは違い、売上の金額や気温のように連続的に変化する値を予測します。
天気予報や株価予測など、私たちの日常生活にも深く関わっており、データに基づいた意思決定を支援する重要な役割を担っています。天気予報では、過去の気象データや気圧配置から今後の気温や降水確率を予測し、私たちの生活に役立つ情報を提供しています。株価予測では、過去の株価の変動や企業の業績から将来の株価を予測し、投資判断の材料として活用されています。このように、回帰は様々な分野で活用され、私たちの生活をより豊かにするために役立っています。
| 項目 | 説明 | 例 |
|---|---|---|
| 定義 | 過去の情報をもとに未来の値を予想する機械学習の手法。特に、数値のように連続的に変化する値を予想する際に役立つ。 | – |
| 目的 | 時間の流れに沿った変化を捉え、将来の傾向を予測する。 | 過去の売上データから将来の売上を予測、気温の変化から電力需要を予測 |
| 特徴 | 数値以外の分類を予測する手法とは異なり、連続的な値の変化を捉え、将来の傾向を予測することに重点を置く。 | 売上金額や気温のような連続的に変化する値を予測 (犬か猫かの判別のような分類タスクとは異なる) |
| 応用例 | 天気予報、株価予測など、日常生活にも深く関わっており、データに基づいた意思決定を支援する。 | 天気予報:過去の気象データから今後の気温や降水確率を予測 株価予測:過去の株価変動や企業業績から将来の株価を予測 |
回帰分析の種類

回帰分析は、ある数値から別の数値を予測するための統計手法であり、いくつかの種類があります。まず、説明する数値の個数に着目すると、単回帰分析と重回帰分析に分けられます。単回帰分析は、一つの説明する数値から予測したい数値を予測する方法です。例えば、商品の値段から売れる個数を予測する場合などに用います。売れる個数を予測する際に、商品の値段だけを考慮するということです。一方、重回帰分析は、複数の説明する数値を用いて予測したい数値を予測する方法です。例えば、売れる個数を予測する際に、商品の値段だけでなく、商品の色や大きさなども考慮に入れることができます。複数の要素を考慮することで、より正確な予測ができます。
さらに、予測する形に着目すると、線形回帰と多項式回帰に分けられます。線形回帰は、説明する数値と予測したい数値の関係を直線で表す方法です。例えば、商品の値段が上がると売れる個数が一定の割合で減ると考える場合に用います。この方法は、結果が分かりやすいという利点があります。直線をグラフに描くことで、関係性を視覚的に捉えることができます。一方、多項式回帰は、説明する数値と予測したい数値の関係を曲線で表す方法です。例えば、商品の値段がある程度までは上がると売れる個数が増えるが、ある価格を超えると売れる個数が減ると考える場合に用います。この方法は、より複雑な関係性を捉えることができます。直線では表せない、より現実に近い関係性を表現することができます。
このように、説明する数値の個数や予測する形によって、回帰分析には様々な種類があります。これらの手法を適切に使い分けることで、様々な数値データに合わせたより精度の高い予測が可能になります。状況に応じて最適な手法を選ぶことが重要です。
| 説明変数の数 | 予測の形状 | 手法 | 説明 | 例 |
|---|---|---|---|---|
| 1つ | 直線 | 単回帰分析 | 1つの説明変数から目的変数を予測 | 商品の値段から売れる個数を予測 |
| 複数 | 直線 | 重回帰分析 | 複数の説明変数から目的変数を予測 | 商品の値段、色、大きさから売れる個数を予測 |
| 1つ | 曲線 | 多項式回帰分析 | 説明変数と目的変数の関係を曲線で表現 | 商品の値段がある程度までは上がると売れる個数が増えるが、ある価格を超えると売れる個数が減る |
| 複数 | 曲線 | 多項式重回帰分析 | 複数の説明変数と目的変数の関係を曲線で表現 | 複数の要因が複雑に絡み合って売れる個数が変化する |
線形回帰

線形回帰は、統計学における基本的な予測手法であり、様々な分野で広く活用されています。これは、ある変数(説明変数)の変化に基づいて、別の変数(目的変数)の値を予測することを目的としています。線形回帰の核心は、二つの変数の関係性を直線で表現することにあります。
この直線は、「目的変数 = 傾き × 説明変数 + 切片」という方程式で表されます。ここで、「傾き」は説明変数が一つ変化した時に、目的変数がどれだけ変化するかを示す値です。例えば、傾きが2であれば、説明変数が1増えるごとに、目的変数は2増えることを意味します。また、「切片」は説明変数がゼロのときの目的変数の値を表します。
線形回帰を行うためには、過去のデータを用いて最適な傾きと切片を求めます。この過程は、観測されたデータと予測値の誤差を最小化するように行われます。具体的には、最小二乗法などの手法が用いられます。最適な傾きと切片が求まれば、その値を用いて直線の方程式を作成し、将来の値を予測することが可能となります。
線形回帰の利点は、計算が比較的容易で、結果の解釈がしやすいという点です。傾きと切片を見るだけで、二つの変数の関係性を理解することができます。しかし、現実世界のデータは必ずしも直線的な関係で表現できるとは限りません。データの分布が曲線状である場合、線形回帰を適用すると予測精度が低下する可能性があります。このような場合には、より複雑なモデルを用いる必要があります。

多項式回帰

多項式回帰とは、複雑なデータの関連性をより精密に捉えるための予測手法です。基本的な線形回帰では、データの関係性を直線で表現しますが、現実のデータは必ずしも直線的な関係性を持っているとは限りません。例えば、時間の経過に伴う製品の売上高は、最初はゆるやかに上昇し、ピークを迎えた後に下降するといった曲線を描くことがあります。このような場合、直線で近似する線形回帰では、データの持つ真の関係性を十分に捉えきれません。
そこで、多項式回帰が登場します。多項式回帰は、説明変数(例えば、時間)の次数を上げて、曲線的な関係を表現します。二乗の項(時間の二乗)を追加すれば放物線、三乗の項(時間の三乗)を追加すればより複雑な曲線を描くことができ、データの曲線的な傾向を捉えることができます。次数を上げることで、より柔軟にデータに適合するモデルを作ることが可能になります。
次数を高く設定すればするほど、モデルはデータに密着します。しかし、あまりに次数を高くしすぎると、過学習と呼ばれる問題が発生します。過学習とは、学習データに過剰に適合しすぎてしまい、学習データには高い精度を示す一方、新しいデータに対する予測精度が低下する現象です。例えるなら、複雑な曲線でデータの点を全て繋いでしまうようなイメージです。全ての点を通る曲線は、一見完璧な近似に見えますが、新しいデータ点がその曲線から外れてしまう可能性が高くなります。
そのため、多項式回帰では適切な次数の設定が非常に重要になります。次数が低すぎるとデータの特徴を捉えきれず、高すぎると過学習を起こしてしまいます。最適な次数は、データの特性や分析の目的によって異なり、試行錯誤を通じて最適な値を見つける必要があります。データを適切に分割し、一部のデータでモデルを学習させ、残りのデータでモデルの性能を検証するといった方法が有効です。
| 多項式回帰の目的 | 説明 |
|---|---|
| 複雑なデータの関連性の把握 | 線形回帰では捉えきれない、曲線的なデータの関係性を表現するために使用されます。 |
| 説明変数の次数と曲線 | 説明変数の次数を上げることで、放物線やより複雑な曲線を表現し、データの曲線的な傾向を捉えます。 |
| 次数の設定と過学習 | 次数が高いほどデータに密着しますが、高すぎると過学習(学習データに過剰適合し、新しいデータへの予測精度が低下)が発生します。 |
| 適切な次数の重要性 | 次数が低すぎるとデータの特徴を捉えきれず、高すぎると過学習を起こすため、データの特性や分析の目的に応じて適切な次数を設定する必要があります。適切な次数は試行錯誤を通じて見つけ、データ分割によるモデル学習と性能検証が有効です。 |
回帰の評価指標

ものの見通しを数量で表す分析手法である回帰分析において、モデルの良し悪しを判断する評価指標は複数存在します。これらの指標を使い分けることで、分析の目的に合った適切なモデルを選択できます。代表的な評価指標として、平均二乗誤差と決定係数について説明します。
平均二乗誤差は、予測値と実際の値のずれを二乗して平均化したものです。この値が小さいほど、予測値と実際の値のずれが小さく、モデルの精度が高いことを示します。例えば、ある商品の売れ行きを予測するモデルで、平均二乗誤差が小さいほど、実際の売れ行きに近い予測ができていると判断できます。計算式は、全てのデータにおける予測値と実測値の差を二乗し、その合計をデータの数で割ることで求められます。
一方、決定係数は、モデルがどれくらいデータのばらつきを説明できているかを示す指標です。0から1までの値を取り、1に近いほどモデルがデータのばらつきをよく説明できている、つまり精度の高いモデルであると解釈できます。例えば、商品の価格と売れ行きとの関係を分析する際に、決定係数が1に近いほど、価格の変化によって売れ行きの変化がうまく説明できていることを示します。計算方法は、全体のばらつきから、モデルで説明できないばらつきを引いた値を、全体のばらつきで割ることで求められます。
平均二乗誤差は、具体的な予測の誤差の大きさを把握するのに適しています。例えば、在庫管理のモデルでは、誤差の大きさを金額に換算することで、過剰在庫や品切れによる損失を金額で評価できます。一方、決定係数は、モデルがデータの全体像をどの程度捉えているかを把握するのに適しています。例えば、売上予測モデルでは、どの要因が売上に大きく影響しているかを分析する際に役立ちます。このように、それぞれの指標の特徴を理解し、分析の目的に合わせて使い分けることが重要です。
| 評価指標 | 説明 | 値の意味 | 計算方法 | 用途 |
|---|---|---|---|---|
| 平均二乗誤差 | 予測値と実際の値のずれを二乗して平均化したもの | 小さいほど予測精度が高い | (予測値 – 実測値)^2 の合計 / データ数 | 具体的な予測誤差の把握 (例: 在庫管理) |
| 決定係数 | モデルがデータのばらつきを説明できている割合 | 1に近いほどモデルの精度が高い | (全体のばらつき – モデルで説明できないばらつき) / 全体のばらつき | モデルがデータの全体像を捉えているかどうかの把握 (例: 売上予測) |
