判別分析 データ分析講座(その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. 回収された標本を母集団の構成に合わせて集計する方法

   続きを読むには・・・


この記事の著者

高橋 威知郎

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

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


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

もっと見る
プロダクト・データサイエンス:データ分析講座(その321)3つのDS業務タイプ

  商品やサービスなどを開発して販売することで収益を得るビジネスモデルは非常に多いですが、例えば、車を開発しディーラー経由で販売する、クラ...

  商品やサービスなどを開発して販売することで収益を得るビジネスモデルは非常に多いですが、例えば、車を開発しディーラー経由で販売する、クラ...


データ分析・活用のアプローチとは データ分析講座(その112)

◆ なぜ今、データサイエンスが必要なのか?  データサイエンスという用語は、数十年前からありました。2000年代初期のころ、私が所属していたコンサル...

◆ なぜ今、データサイエンスが必要なのか?  データサイエンスという用語は、数十年前からありました。2000年代初期のころ、私が所属していたコンサル...


見える化だけで成果を出すのは指標設計しだい データ分析講座(その241)

  ◆【特集】 連載記事紹介:連載記事のタイトルをまとめて紹介、各タイトルから詳細解説に直リンク!!   成果のでるデータ活...

  ◆【特集】 連載記事紹介:連載記事のタイトルをまとめて紹介、各タイトルから詳細解説に直リンク!!   成果のでるデータ活...


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

もっと見る
‐社内の問題克服による開発活動‐  製品・技術開発力強化策の事例(その14)

 前回の事例その13に続いて解説します。社内における様々な問題を高いレベルで深く追及して解決することが、競争力のある技術を育成し、売れる製品を生み出す事に...

 前回の事例その13に続いて解説します。社内における様々な問題を高いレベルで深く追及して解決することが、競争力のある技術を育成し、売れる製品を生み出す事に...


中小製造業のウェブ戦略

 中小製造業がウェブサイトを立ち上げる際、その目的として「自社の信用力を高めるための会社概要的な役割」と考える経営者も少なくない。しかし、当社のクライアン...

 中小製造業がウェブサイトを立ち上げる際、その目的として「自社の信用力を高めるための会社概要的な役割」と考える経営者も少なくない。しかし、当社のクライアン...


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

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

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