機械学習の勉強を始めると耳にするのが「回帰(Regression)」と「分類(Classification)」というワード。
「なんとなく分かるけど、結局何が違うの?」
「どんな時にどっちを使えばいいの?」
「難しそうな数式がいっぱい出てくるし…」
そう感じている人も少なくないはずです。でも安心してください!この記事を読めば、回帰と分類の違いはもちろん、それぞれのモデルの種類や具体的な使い方まで、しっかり理解できますよ。
こんな方に読んでほしい記事です!
- データサイエンティスト検定(DS検定)の学習を始めたばかりの方
- 機械学習の基礎をしっかり理解したいと思っている方
- 「回帰」と「分類」の違いがイマイチ掴めない方
- どんな場面でどの機械学習モデルを使えばいいか知りたい方
目次
回帰と分類、何が違うの?
まずは、機械学習の基本となる「回帰」と「分類」の大きな違いから見ていきましょう。
回帰(Regression):未来の「数値」を予測する!
回帰とは、入力データから「連続的な数値」を予測する手法のこと。まるで、天気予報士が明日の気温を予測するようなイメージです。
具体例をいくつか挙げてみましょう。
- 家賃の予測:部屋の広さや駅からの距離といったデータから、適正な家賃を数値として予測します。
- 気温の予測:過去の気温や湿度、気圧などのデータから、明日の気温を数値で予測します。
- 売上の予測:これまでの販売データやプロモーション効果などから、来月の売上を金額という数値で予測します。
分類(Classification):データを「グループ分け」する!
一方、分類は、与えられたデータがどの「カテゴリ(種類)」に属するかを予測する手法です。これは、荷物を仕分けするような作業に似ています。
こちらも具体例を見てみましょう。
- スパムメール判定:メールの内容を解析して、「スパム」か「通常のメール」かという2つのカテゴリに分類します。
- 手書き文字認識:手書きされた文字が、「0」「1」「2」…「9」のどの数字のカテゴリに当たるかを識別します。
- 病気の診断:患者さんの検査データから、「陽性」か「陰性」かという2つのカテゴリに分類します。
「回帰モデル」の種類と用途
数値を予測する「回帰」では、どんなモデル(手法)が使われるのでしょうか?主要なものを表にまとめました。
モデル(手法) | 数式 / 関数 | 用途 | 具体例 |
---|---|---|---|
線形回帰 | \[y = ax + b\] | 単純な数値予測に。データが直線的な関係にある場合。 | 家賃の予測、気温の予測、売上予測 |
多項式回帰 | \[y = ax^2 + bx + c\] など | 曲線的な数値予測に。データが曲線的な関係にある場合。 | 自動車の燃費予測、成長曲線の予測 |
決定木回帰 | ルールベース(条件分岐) | 特定のルールに基づいて数値を予測したい場合。 | 気温の変化から電気使用量を予測 |
ランダムフォレスト回帰 | ルールベース(複数の決定木の集合) | 高精度な数値予測に。複雑なデータでも高い精度が出やすい。 | 株価の変動予測、広告のクリック率予測 |
K近傍法(KNN)回帰 | 距離関数(ユークリッド距離など) | 似たデータを使って数値を予測したい場合。 | 温度データから降水量を予測 |
SVM回帰 | カーネル関数(線形, RBF など) | データのパターンを学習して数値を予測。少量のデータでも有効な場合がある。 | スポーツ選手の成績予測 |
ニューラルネットワーク回帰 | ReLU, シグモイド など | ディープラーニングによる高精度な数値予測。画像や音声など複雑なデータに強い。 | 画像データから年齢を推定、商品の需要予測 |
「分類モデル」の種類と用途
次に、カテゴリを判定する「分類」で使われる主なモデルを見ていきましょう。
モデル(手法) | 数式 / 関数 | 用途 | 具体例 |
---|---|---|---|
ロジスティック回帰 | シグモイド関数 \[\sigma(x) = \frac{1}{1 + e^{-x}}\] | 2つのカテゴリに分類したい場合(はい/いいえ、陽性/陰性など)。 | スパムメール判定、病気診断(陽性 / 陰性) |
ソフトマックス回帰 | ソフトマックス関数 \[\sigma_i(x) = \frac{e^{x_i}}{\sum_{j} e^{x_j}}\] | 3つ以上のカテゴリに分類したい場合。 | 手書き文字認識(0~9)、映画ジャンル分類 |
決定木分類 | ルールベース(条件分岐) | 分かりやすいルールで分類したい場合。 | クレジットカードの不正利用判定 |
ランダムフォレスト分類 | ルールベース(複数の決定木の集合) | 高精度な分類に。複雑なデータでも高い精度が出やすい。 | 犬 or 猫の画像分類、顧客のリピート予測 |
K近傍法(KNN)分類 | 距離関数(ユークリッド距離など) | 似たデータを使ってカテゴリを判定したい場合。 | ユーザーの好みに合った映画推薦 |
SVM(サポートベクターマシン) | カーネル関数(線形, RBF など) | 高次元のデータでも分類したい場合。境界線を明確にしたい時に有効。 | 顔認識、感情分析(ポジティブ / ネガティブ) |
ニューラルネットワーク分類 | ReLU, ソフトマックス など | ディープラーニングによる高精度な分類。画像や音声など複雑なデータに強い。 | 音声認識、画像のラベル付け |
結局、どうやって選ぶのが正解?
回帰と分類、どちらを使うかは、「何を予測したいのか?」によって決まります。
「数値を予測したい」なら → 回帰モデルを選びましょう!
家賃、株価、気温、売上など、連続的な数値を予測したい場合は回帰モデルが適しています。
- 例:来月の売上を予測したい → まずは線形回帰を試してみましょう。
- 例:もっと複雑なデータの関係性があるなら → 多項式回帰やニューラルネットワーク回帰を検討してみましょう。
「カテゴリを判定したい」なら → 分類モデルを選びましょう!
「AかBか」「スパムかそうでないか」「犬か猫か」といった、グループ分けや判別を行いたい場合は分類モデルが適しています。
- 例:メールがスパムかどうかを判定したい → ロジスティック回帰を検討してみましょう。
- 例:手書きの文字がどの数字か知りたい → ソフトマックス回帰やニューラルネットワーク分類が有力ですよ。
まとめ
DS検定の学習でも、実務でも、この「回帰」と「分類」の理解は欠かせません。
- 回帰(Regression)は、「数値を予測する」のが得意(例:家賃、気温、売上)。
- 分類(Classification)は、「カテゴリを判定する」のが得意(例:スパム or 非スパム、猫 or 犬)。
- ちなみに、ランダムフォレストは、その特性から分類にも回帰にも使える汎用性の高いモデルなんですよ。これは覚えておいて損はないです。
データ分析の目的が「数値の予測」なのか「カテゴリの判定」なのかをしっかり見極めて、適切な機械学習モデルを選べるようになれば、あなたのデータ分析スキルは格段に向上するでしょう。DS検定合格に向けて、着実にステップアップしていってくださいね。