線形判別分析の概要
一連の予測子変数があり、 応答変数を2 つのクラスのいずれかに分類したい場合、通常はロジスティック回帰を使用します。
たとえば、次のシナリオではロジスティック回帰を使用できます。
- 信用スコアと銀行残高を使用して、特定の顧客がローンを滞納するかどうかを予測したいと考えています。 (応答変数 = 「デフォルト」または「デフォルトなし」)
ただし、応答変数に 3 つ以上の可能なクラスがある場合は、通常、線形判別分析(LDA とも呼ばれる) として知られる方法を使用することを好みます。
たとえば、次のシナリオで LDA を使用できます。
- 試合ごとのポイントと試合ごとのリバウンドを使用して、特定の高校バスケットボール選手が 3 つの学校 (ディビジョン 1、ディビジョン 2、またはディビジョン 3) のいずれかに合格するかどうかを予測したいと考えています。
LDA モデルとロジスティック回帰モデルの両方が分類に使用されますが、複数のクラスの予測を行う場合には、LDA の方がロジスティック回帰よりもはるかに安定しているため、応答変数が 3 つ以上かかる場合に使用するアルゴリズムとして推奨されます。クラス。
また、LDA は、ロジスティック回帰と比較してサンプル サイズが小さい場合に最適に機能するため、大きなサンプルを収集できない場合に推奨される方法になります。
LDA モデルの作成方法
LDA は、特定のデータセットに対して次の仮定を行います。
(1)各予測変数の値は正規分布します。つまり、特定の予測子の値の分布を視覚化するヒストグラムを作成すると、大まかに「釣鐘型」になります。
(2)各予測変数は同じ分散を持ちます。現実世界のデータではこれが当てはまることはほとんどありません。そのため、通常、実際に LDA モデルをフィッティングする前に、同じ平均と分散になるように各変数をスケーリングします。
これらの仮説が検証されると、LDA は次の値を推定します。
- μ k : k 番目のクラスのすべてのトレーニング観測値の平均。
- σ 2 : kクラスのそれぞれのサンプル分散の加重平均。
- π k : k番目のクラスに属するトレーニング観測の割合。
次に、LDA はこれらの数値を次の式に代入し、各観測値 X = x を、式が最大値を生成するクラスに割り当てます。
d k (x) = x * (μ k /σ 2 ) – (μ k 2 /2σ 2 ) + log(π k )
LDA の名前に「linear」が付いていることに注意してください。これは、上記の関数によって生成される値が x の線形関数の結果から得られるためです。
LDA 用のデータを準備する方法
LDA モデルをデータに適用する前に、データが次の要件を満たしていることを確認してください。
1. 応答変数はカテゴリカルです。 LDA モデルは、分類問題、つまり応答変数をクラスまたはカテゴリに配置できる問題に使用するように設計されています。
2. 予測変数は正規分布に従います。まず、各予測子変数がほぼ正規分布していることを確認します。そうでない場合は、 まずデータを変換して分布をより正規化することを選択できます。
3. 各予測変数は同じ分散を持ちます。前述したように、LDA は各予測変数が同じ分散を持つことを前提としています。実際にはこれが当てはまることはほとんどないため、平均が 0、標準偏差が 1 になるようにデータセット内の各変数をスケーリングすることをお勧めします。
4. 極端な外れ値を考慮する。 LDA を適用する前に、データセット内に極端な外れ値がないか必ず確認してください。通常、 箱ひげ図または散布図を使用するだけで、外れ値を視覚的に確認できます。
線形判別分析の使用例
LDA モデルは、現実のさまざまな領域に適用されます。ここではいくつかの例を示します。
1. マーケティング。小売企業は多くの場合、LDA を使用して買い物客をいくつかのカテゴリのいずれかに分類します。たとえば、収入、年間支出総額、世帯人数などの予測変数を使用して、特定の購入者が低支出、中支出、高支出のいずれになるかを予測する LDA モデルを作成できます。
2.医療。病院や医学研究チームは、特定の異常細胞グループが軽度、中等度、または重度の疾患を引き起こす可能性が高いかどうかを予測するために LDA をよく使用します。
3. 製品開発。企業は、LDA モデルを作成して、性別、年収、類似製品の使用頻度などのさまざまな予測変数に基づいて、特定の消費者が自社の製品を毎日、毎週、毎月、または毎年使用するかどうかを予測できます。
4. エコロジー。研究者は LDA モデルを作成し、サイズ、年間汚染、損失などのさまざまな予測変数に基づいて、特定のサンゴ礁の全体的な健全性が良好、中程度、不良、または絶滅の危機に瀕しているかを予測できます。年齢。
R と Python の LDA
次のチュートリアルでは、R と Python で線形判別分析を実行する方法について段階的な例を示します。