判別分析 データ分析講座(その103)

更新日

投稿日

 

◆ ロジスティック回帰分析を含めた判別分析、正答率と検出率のどちらを重視?

 受注予測や離反予測など、判別分析の出番が意外と多いのがビジネスデータ分析の特徴です。受注や離反だけでなく、状態遷移(例:訪問→提案)の予測も判別分析の範疇(はんちゅう)です。昔から色々な判別分析の手法があります。

 共通しているのは、学習データで分類モデルを構築し、混合行列(confusion matrix)で評価するということです。この時、混合行列には幾つかの指標があり、どれを見ればいいのか迷う人も多いようです。

 今回は「ロジスティック回帰分析を含めた判別分析、正答率と検出率のどちらを重視しますか」というお話しです。

1. 判別分析

 判別分析とは、2つのカテゴリ(例:受注 or 失注)を予測する分類モデルを構築するものです。昔からあるのは、線形判別分析などの多変量解析やロジスティック回帰などの一般化線形モデル系のものです。

 20年ぐらい前から、サポートベクターマシーン(SVM)などのカーネル多変量解析系や決定木、ニューラルネットワークなどの機械学習系のものが使われ始めましたが、どの手法で分類モデルを構築しても得たい結果は同じです。

 どの手法で分類モデルを構築しても多くの場合、混合行列を使うようです。モデルの良し悪しを評価する際、必ずといっていいほど混合行列が登場してきます。

2. 混合行列

 混合行列とは予測と実測のマトリックスです。次のようになります。

データ分析

 分析ターゲットが通常は「1」になります(例:受注が分析ターゲットであれば受注が「1」、離脱がターゲットであれば離脱が「1」)。

 例えば、分析ターゲットが受注とし「1:受注、0:失注」とします。この時、実際に受注し分類モデルでも受注と予測された件数が「True Positive(TP)」に入ります。

 「TP」と「True Negative (TN)」が正答した件数です。全件数は、4つのセルの合計値「TP+FN+FP+TN」になります。

 この時、正答率は「(TP+TN)÷(TP+FN+FP+TN)」となります。

 通常考えると「正答率が高くなるような分類モデルがいいのではないか?」と考えがちです。しかし必ずしも正答率が高いモデルが実務上活用できるモデルとは限りません。

3. 4つの指標

 混合行列(confusion matrix)には、4つの指標が計算されます。

  • 正答率:(TP+TN)÷(TP+FN+FP+TN)
  • 検出率:TP÷(TP+FN)
  • 精度:TP÷(TP+FP)
  • 誤検出率:FP÷(FP+TN)

 正答率とは先ほど話した通り、正答した割合です。検出率とは実測が「1:受注」のケースを分類モデルがどれほどカバーしたのかを表したものです。実測が「1:受注」の件数は「TP+FN」です。このうちモデルが的中したのは「TP」です。したがって、検出率は「TP÷(TP+FN)」となります。実は正答率よりも検出率のほうが実務上、重要になってきます。どんなに正答率が良くても、検出率が悪いと使いものにならないからです。

4. 正答率90%で検出率0%の残念な分類モデル

 実際、私は正答率90%で検出率0%の残念な分類モデルを見たことがあります。

 検出率0%ということは、受注予測モデルであれば「実際は受注しているのに、受注していると予測されない」ということです。0%なので、一つも受注ではなく失注と予測されます。分析ターゲットが「離反」であれば、全く離反を予測しないことになります。どんなに正答率が高くても、分析ターゲットを検出できないようでは実務では使えません。実際何が起こっているのでしょうか?

5. 学習データが偏っている場合、要注意

 なぜ「正答率90%で検出率0%」などということが起こるのでしょうか?それは学習データが偏っている場合です。偏っているとは、先ほどの例で説明すると「1:受注」のデータが全体の10%で「0:失注」のデータが全体の90%のようなものです。この時、すべてを失注と予測するモデルを構築すれば、正答率は90%になります。このようなモデルを作るのは簡単ですが検出率は0%になります。

6. ウエイトバックとは

 少しテクニカルな話題になります。学習データが偏っている場合、ウエイトバック(※1)をしてからモデル構築をします。特別な理由がない限り、そうしたほうが無難です。特別な場合とは、データの偏り自体がモデル構築上重要な場合です。

 実は、従...

 

◆ ロジスティック回帰分析を含めた判別分析、正答率と検出率のどちらを重視?

 受注予測や離反予測など、判別分析の出番が意外と多いのがビジネスデータ分析の特徴です。受注や離反だけでなく、状態遷移(例:訪問→提案)の予測も判別分析の範疇(はんちゅう)です。昔から色々な判別分析の手法があります。

 共通しているのは、学習データで分類モデルを構築し、混合行列(confusion matrix)で評価するということです。この時、混合行列には幾つかの指標があり、どれを見ればいいのか迷う人も多いようです。

 今回は「ロジスティック回帰分析を含めた判別分析、正答率と検出率のどちらを重視しますか」というお話しです。

1. 判別分析

 判別分析とは、2つのカテゴリ(例:受注 or 失注)を予測する分類モデルを構築するものです。昔からあるのは、線形判別分析などの多変量解析やロジスティック回帰などの一般化線形モデル系のものです。

 20年ぐらい前から、サポートベクターマシーン(SVM)などのカーネル多変量解析系や決定木、ニューラルネットワークなどの機械学習系のものが使われ始めましたが、どの手法で分類モデルを構築しても得たい結果は同じです。

 どの手法で分類モデルを構築しても多くの場合、混合行列を使うようです。モデルの良し悪しを評価する際、必ずといっていいほど混合行列が登場してきます。

2. 混合行列

 混合行列とは予測と実測のマトリックスです。次のようになります。

データ分析

 分析ターゲットが通常は「1」になります(例:受注が分析ターゲットであれば受注が「1」、離脱がターゲットであれば離脱が「1」)。

 例えば、分析ターゲットが受注とし「1:受注、0:失注」とします。この時、実際に受注し分類モデルでも受注と予測された件数が「True Positive(TP)」に入ります。

 「TP」と「True Negative (TN)」が正答した件数です。全件数は、4つのセルの合計値「TP+FN+FP+TN」になります。

 この時、正答率は「(TP+TN)÷(TP+FN+FP+TN)」となります。

 通常考えると「正答率が高くなるような分類モデルがいいのではないか?」と考えがちです。しかし必ずしも正答率が高いモデルが実務上活用できるモデルとは限りません。

3. 4つの指標

 混合行列(confusion matrix)には、4つの指標が計算されます。

  • 正答率:(TP+TN)÷(TP+FN+FP+TN)
  • 検出率:TP÷(TP+FN)
  • 精度:TP÷(TP+FP)
  • 誤検出率:FP÷(FP+TN)

 正答率とは先ほど話した通り、正答した割合です。検出率とは実測が「1:受注」のケースを分類モデルがどれほどカバーしたのかを表したものです。実測が「1:受注」の件数は「TP+FN」です。このうちモデルが的中したのは「TP」です。したがって、検出率は「TP÷(TP+FN)」となります。実は正答率よりも検出率のほうが実務上、重要になってきます。どんなに正答率が良くても、検出率が悪いと使いものにならないからです。

4. 正答率90%で検出率0%の残念な分類モデル

 実際、私は正答率90%で検出率0%の残念な分類モデルを見たことがあります。

 検出率0%ということは、受注予測モデルであれば「実際は受注しているのに、受注していると予測されない」ということです。0%なので、一つも受注ではなく失注と予測されます。分析ターゲットが「離反」であれば、全く離反を予測しないことになります。どんなに正答率が高くても、分析ターゲットを検出できないようでは実務では使えません。実際何が起こっているのでしょうか?

5. 学習データが偏っている場合、要注意

 なぜ「正答率90%で検出率0%」などということが起こるのでしょうか?それは学習データが偏っている場合です。偏っているとは、先ほどの例で説明すると「1:受注」のデータが全体の10%で「0:失注」のデータが全体の90%のようなものです。この時、すべてを失注と予測するモデルを構築すれば、正答率は90%になります。このようなモデルを作るのは簡単ですが検出率は0%になります。

6. ウエイトバックとは

 少しテクニカルな話題になります。学習データが偏っている場合、ウエイトバック(※1)をしてからモデル構築をします。特別な理由がない限り、そうしたほうが無難です。特別な場合とは、データの偏り自体がモデル構築上重要な場合です。

 実は、従来の線形判別分析であれば「1:受注」と「0:失注」の事前確率の設定を同じにすれば済みます。事前確率をサンプルサイズに設定すると、正答率が高く検出率の低い分類モデルになってしまいます。分析ツールによっては、デフォルトで「1:受注」と「0:失注」の事前確率が同じという設定になっています。

 この「1:受注」と「0:失注」の事前確率の設定を同じにすることと同様の効果をウエイトバックをすることで得られます。

 ウエイトバックとは各ケース(データ行)に重みを付けることです。「1:受注」と「0:失注」のケース数が同じになるように重みを付けます。

 この時、サンプルサイズが重みによって変わってしまうため、統計学的な検定などに関しては注意が必要になります。分析ツールの結果を鵜呑みにできないからです。通常は手計算に近い形で検定などを実施することになると思います。

 ※1. 回収された標本を母集団の構成に合わせて集計する方法

   続きを読むには・・・


この記事の著者

高橋 威知郎

データネクロマンサー/データ分析・活用コンサルタント (埋もれたデータに花を咲かせる、データ分析界の花咲じじい。それほど年齢は重ねてないけど)

データネクロマンサー/データ分析・活用コンサルタント (埋もれたデータに花を咲かせる、データ分析界の花咲じじい。それほど年齢は重ねてないけど)


「情報マネジメント一般」の他のキーワード解説記事

もっと見る
データサイエンス波及の5つのポイント データ分析講座(その122)

◆ データサイエンス、小さく始め大きく波及  データサイエンス・ 機械学習・ AIと、夢を大きく持つことはいいことですが、足下無視で進めることはでき...

◆ データサイエンス、小さく始め大きく波及  データサイエンス・ 機械学習・ AIと、夢を大きく持つことはいいことですが、足下無視で進めることはでき...


前年踏襲という意味不明なロジックとは データ分析講座(その206)

  予算などの計画値を考えるとき、前年同又は前年比1.1倍みたいな立て方があります。 例えば…… 前年...

  予算などの計画値を考えるとき、前年同又は前年比1.1倍みたいな立て方があります。 例えば…… 前年...


営業に「行くべき顧客」とは データ分析講座(その37)

◆ 営業が「行きたがる顧客」ではなく「行くべき顧客」を、ちょっとしたデータで明らかにする方法  どの企業にでもあるのが、過去の取引データです。いつど...

◆ 営業が「行きたがる顧客」ではなく「行くべき顧客」を、ちょっとしたデータで明らかにする方法  どの企業にでもあるのが、過去の取引データです。いつど...


「情報マネジメント一般」の活用事例

もっと見る
人的資源マネジメント:製品開発の滞留を引き起こすファイルとは(その2)

 今回は、PDM/PLMに代表される製品開発業務のIT化をどのように考え、進めるのがよいのかについて解説します。    前回まで続けていたテ...

 今回は、PDM/PLMに代表される製品開発業務のIT化をどのように考え、進めるのがよいのかについて解説します。    前回まで続けていたテ...


‐情報収集で配慮すべき事項(第1回)‐  製品・技術開発力強化策の事例(その9)

 前回の事例その8に続いて解説します。ある目的で情報収集を開始する時には、始めに開発方針を明らかにして、目的意識を持って行動する必要があります。目的を明確...

 前回の事例その8に続いて解説します。ある目的で情報収集を開始する時には、始めに開発方針を明らかにして、目的意識を持って行動する必要があります。目的を明確...


‐情報収集で配慮すべき事項(第2回)‐  製品・技術開発力強化策の事例(その10)

 前回の事例その9に続いて解説します。ある目的で情報収集を開始する時には、始めに開発方針を明らかにして、目的意識を持って行動する必要があります。目的を明確...

 前回の事例その9に続いて解説します。ある目的で情報収集を開始する時には、始めに開発方針を明らかにして、目的意識を持って行動する必要があります。目的を明確...