はじめに
機械学習では、「売上はいくらになるか」を予測したい場合と、「このメールはスパムか」を判定したい場合で、扱う問題の種類が異なります。前者は主に回帰、後者は主に分類として扱います。
回帰と分類はどちらも、正解付きのデータから学ぶ教師あり学習でよく使われますが、違いの中心は何を予測するかです。この記事では、予測対象、用途、評価の考え方を比べながら、どちらを使うべきか判断できるように整理します。
回帰と分類の違い
回帰と分類の最も大きな違いは、モデルが予測する答え、つまり目的変数の種類です。回帰は連続した数値を予測し、分類はあらかじめ定めたカテゴリやラベルを予測します。
| 比較項目 | 回帰 | 分類 |
|---|---|---|
| 予測するもの | 連続した数値 | カテゴリ・ラベル |
| 出力例 | 売上300万円、気温25.4℃ | スパム/非スパム、正常/異常 |
| 代表的な用途 | 価格予測、需要予測、数値予測 | カテゴリ判定、画像分類、状態判定 |
| 評価の考え方 | 予測した数値と実際の数値のずれを見る | 予測したカテゴリと正解ラベルの一致などを見る |
| 学習方式 | 主に教師あり学習 | 主に教師あり学習 |
どちらも入力データと正解となる目的変数の関係を学習する点は共通しています。違うのは、正解として与える値が「数値の大きさ」なのか、「どのカテゴリに属するか」なのかという点です。
回帰とは
回帰は、入力データから連続した数値を予測する問題です。例えば、過去の売上や広告費などを使って来月の売上額を予測する、不動産の立地や築年数から価格を予測するといった用途があります。
結果が「100万円」「101万円」「102.5万円」のように数値として連続的に変化する場合は、回帰として扱うのが基本です。予測値と実際の値との差がどれくらいあるかを見ながら、モデルの性能を評価します。
回帰が向いている例
- 来月の売上額を予測する
- 住宅の販売価格を予測する
- 商品の需要量を予測する
- 気温や消費電力などの数値を予測する
分類とは
分類は、入力データからあらかじめ定めたカテゴリやラベルを予測する問題です。例えば、メールを「スパム/非スパム」に分ける、製品を「正常/不良」に判定するといった用途があります。
分類モデルによっては、最初に「スパムである確率80%」のような確率を出力し、その確率を基に最終的なカテゴリを決めます。そのため、途中で数値を出力するモデルでも、最終目的がカテゴリの判定であれば分類問題として扱います。
分類が向いている例
- メールがスパムかどうかを判定する
- 製品が正常か不良かを判定する
- 画像に写っている対象をカテゴリ分けする
- 顧客が解約するかどうかを予測する
回帰と分類をどう使い分けるか
使い分けでは、最初に予測したい目的変数が何かを確認します。金額、数量、温度のように連続した数値を予測したいなら回帰、商品カテゴリや状態、Yes/Noのようなラベルを予測したいなら分類が基本です。
同じデータを使っていても、目的によって問題の種類は変わります。例えば顧客データから「来月いくら購入するか」を予測するなら回帰、「来月解約するか」を予測するなら分類です。入力データの種類ではなく、何を答えとして求めるかで判断することが重要です。
回帰と分類はいずれも教師あり学習の代表的な問題です。教師あり学習と教師なし学習そのものの違いは、教師あり学習と教師なし学習の違いで整理しています。
回帰と分類で混同しやすいポイント
ロジスティック回帰は分類に使われる
「ロジスティック回帰」は名称に「回帰」とありますが、代表的な用途は分類です。入力データからあるカテゴリに属する確率を求め、その確率を基にカテゴリを判定します。
線形回帰とロジスティック回帰では目的も出力の考え方も異なります。詳しい違いは、線形回帰とロジスティック回帰の違いで確認できます。
クラスタリングは分類とは目的が異なる
クラスタリングもデータをグループに分けますが、あらかじめ正解ラベルを与えて既知のカテゴリを予測する分類とは目的が異なります。クラスタリングは、ラベルのないデータから似た特徴を持つグループを見つける教師なし学習の代表例です。
両者の違いを詳しく確認したい場合は、クラスター分析と分類モデルの違いを参照してください。
まとめ
回帰と分類は、どちらも機械学習でよく使われる教師あり学習の問題ですが、予測するものが異なります。回帰は連続した数値を予測し、分類はカテゴリやラベルを予測します。
使い分けるときは、入力データではなく「何を答えとして予測したいか」を基準にします。金額や数量なら回帰、状態やカテゴリなら分類と考えると、問題の種類を整理しやすくなります。