---
title: #50 Section６ 分類（３）モデルの評価・比較
tags: 
author: [猫のタロー](https://www.docswell.com/user/Cat_Taro)
site: [Docswell](https://www.docswell.com/)
thumbnail: https://bcdn.docswell.com/page/GE891Q557D.jpg?width=480
description: PyCaretのcompare_models関数は、全アルゴリズムを自動で訓練し、交差検証に基づいた性能一覧を即座に生成します。評価の土台となるのは、予測と実測の結果を2×2で整理した混同行列です。  主な指標の意味は以下の通りです。  ●正解率（Accuracy）: 全体の的中率。 ●AUC: ROC曲線下の面積。1.0に近いほど高性能（0.8以上が「良い」目安）。 ●再現率（Recall）: 実際の陽性を漏らさず捉えた割合。 ●適合率（Precision）: 陽性と予測した中の正確性。 ●F1スコア: 再現率と適合率のバランス（調和平均）。 ●Kappa/MCC: 一致度や不均衡データへの適応力。  正解率だけでは、データの偏りがある場合に「陽性を見逃す」などのリスクを正しく評価できません。ビジネスの目的に応じ、「見逃しを減らす」か「空振りを防ぐ」かを見極めるために、これらの指標を多角的に活用することが不可欠です。
published: February 05, 26
canonical: https://www.docswell.com/s/Cat_Taro/K6EW18-2026-02-05-184051
---
# Page. 1

![Page Image](https://bcdn.docswell.com/page/GE891Q557D.jpg)

4th STEP 機械学習
前処理
Section ６
分 類（３）
モデルの評価・比較
Setup
Compare Models
Analyze Model
データサイエンス チュートリアル
Prediction
Save Model
1


# Page. 2

![Page Image](https://bcdn.docswell.com/page/LELWQXY3JR.jpg)

4th STEP 機械学習 Section６ 分類（３）モデルの評価・比較
compare_models関数
『compare_models』関数は、ライブラリで使用可能なすべてのアルゴリズム（PyCaretでは『モデル』と言います）を交差
検証を用いて訓練し、評価指標を算出して性能を評価します。この関数の出力は、交差検証での平均スコアを含む評価指
標一覧（次スライド参照）で、様々なアルゴリズムの性能を比較できます。
関数型API
オブジェクト指向API
データサイエンス チュートリアル
2


# Page. 3

![Page Image](https://bcdn.docswell.com/page/4JM91LNMEW.jpg)

4th STEP 機械学習 Section６ 分類（３）モデルの評価・比較
compare_models 関数の出力
『compare_models』関
数の出力は、各モデルの評価
指標の一覧表です。
モデルの名称
モデルの略称
正解率
真陽性率
Area Under the
Curve
適合率
評価指標は、537行×9列の訓練デー
タ（デフォルトで70％）を用いて、モデ
ルを作成し、231行×9列（デフォルト
で30％）のテストデータに適合させた
結果
モデル
モデルの学習と評価にかかった合計時間（秒）
マシューズ相関係数
性能評価
カッパ係数
※ 正解率（Accuracy）
で降順に表示されます！
F1-score
モデル
【参考】 PyCaretの初心者向けまとめ
（分類編）
https://qiita.com/shuhigashi/ite
ms/cb6816a1da1d347bbdc2
データサイエンス チュートリアル
3


# Page. 4

![Page Image](https://bcdn.docswell.com/page/PJRGLKDLE9.jpg)

4th STEP 機械学習 Section６ 分類（３）モデルの評価・比較
評価指標の元になる混同行列
混同行列(Confusion Matrix)とは、下記のように二項分類
の結果をまとめた2×2の行列です。
混同行列を基に、 『compare_models』関数の出力と
なる性能評価を表す下記の評価指標が算出されます。
検 査（予 測）
Positive
Negative
陽性
陰性
診 断（結 果）
陽性
Positive
真陽性
True Positive
(TP)
偽陽性
False
Positive
(FP)
陰性
Negative
偽陰性
False
Negative
(FN)
真陰性
True
Negative
(TN)
正解率
Accuracy
Area Under the Curve
AUC
真陽性率 Recall
適合率
Prec.
F1-score
F1
カッパ係数 Kappa
マシューズ相関係数
データサイエンス チュートリアル
MCC
4


# Page. 5

![Page Image](https://bcdn.docswell.com/page/PEXXWL26EX.jpg)

4th STEP 機械学習 Section６ 分類（３）モデルの評価・比較
① 正解率 Accuracy
陽性
Positive
陰性
Negative
Positive
検 査（予 測）
真陽性
True Positive
(TP)
偽陰性
False
Negative
(FN)
Negative
正解率（Accuracy）は、予測結果が実際に当たっていた割合。
偽陽性
False
Positive
(FP)
真陰性
True
Negative
(TN)
全 体
データサイエンス チュートリアル
陽性
陰性
TP ＋ TN
診 断（結 果）
ピンクの部分の和、すなわち、検査で陽性かつ診断でも陽性（TP）
と検査で陰性かつ診断でも陰性（TN）の和を分子に、分母に全体
の和を算出した比率。
5


# Page. 6

![Page Image](https://bcdn.docswell.com/page/3EKWVLMGED.jpg)

4th STEP 機械学習 Section６ 分類（３）モデルの評価・比較
② AUC（Area Under the Curve）
ちなみに、下図のグラフは、横軸を混同行列の「偽陽性率（FP
率）」、縦軸を「真陽性率（TP率）」にして、数値をプロットし
たもので、ROC曲線と呼ばれます。ROC曲線が、対角線より左
上にあればあるほど予測性能が高いということができます。
評価指標
また、グラフの右下に書かれている赤枠で囲んだところは、それぞ
れのAUCが書かれています。
それを見ると、クラス「0」とクラス「1」それぞれのROC曲線は、
AUCが0.86であり、両クラスに対して同程度の性能を示してい
ることがわかります。マイクロ平均とマクロ平均は、二項分類には
あまり関係がありませんので、説明は割愛します。各データを3以
上のカテゴリーに分類する場合（多項分類）のAUCの算出方
法の違いによるものだと思っておいてください。詳しくは、下記を参
照してください。
真陽性率（TP率）
AUC（Area Under the Curve）とは、主に二値分類問題
に対する評価指標の一つで、「ROC曲線の下の面積」を意味
します。
https://di-acc2.com/analytics/ai/10801/
データサイエンス チュートリアル
偽陽性率（FP率）
6


# Page. 7

![Page Image](https://bcdn.docswell.com/page/L731M3Y5J5.jpg)

4th STEP 機械学習 Section６ 分類（３）モデルの評価・比較
② AUC（Area Under the Curve）
ACUに関しては、おおまかに下記のような判断をします。
0.9～1.0： 非常によい（excellent）
0.8～0.9： よい（good）
0.7～0.8： まあまあ（fair）
0.6～0.7： よくない（poor）
0.5～0.6： 失敗（fail）
真陽性率（TP率）
この指標は、0.0（＝0％）～1.0（＝100％）の範囲の
値を取り、1.0に近いほどモデルの予測性能が高いことを示し
ます。
ざっくりとROC曲線が、対角線より左上にあればあるほど予測
性能が高いと直感的に判断することができます。
【出典】 AUC（Area Under the ROC Curve：ROC曲線の下の面積）とは？
【参考】 ROC 曲線と AUC についてわかりやすく解説してみた
データサイエンス チュートリアル
偽陽性率（FP率）
7


# Page. 8

![Page Image](https://bcdn.docswell.com/page/87DX645YEG.jpg)

4th STEP 機械学習 Section６ 分類（３）モデルの評価・比較
② AUC（Area Under the Curve）
ROC曲線を見ることで、曲線の形状からも直感的にモデルの
性能が読み取れます。
真陽性率（TP率）
●ROC曲線が対角線に近い直線になる場合→モデルはデータをほとんど学習
できておらず、性能は偶然と同程度
●ROC曲線が左上に大きく張り出す場合→モデルは非常に高い性能を持って
いると考えられます
●ROC曲線が対角線よりも左上に位置する場合→モデルはランダムな予測よ
りも優れていると考えられます。AUCが0.7から0.9の範囲にある場合、モデルは
実用的な性能を持っていると言えます。
●ROC曲線が特定の部分で急激に立ち上がる、または平坦になる場合→モデ
ルが特定の状況下でのみ高い性能を発揮する、または特定の状況下で性能が
著しく低下することを示唆しています。
偽陽性率（FP率）
二項分類とは異なり、多クラス分類では複数のクラスが存在するため、ROC
曲線を単純に描画することができません。そこで、多クラス分類のROC曲線
を評価するために、「macro-average」と「micro-average」という二つの
平均化手法が用いられます。ここでは、無視しておきましょう。
データサイエンス チュートリアル
8


# Page. 9

![Page Image](https://bcdn.docswell.com/page/VJPPYMG2J8.jpg)

4th STEP 機械学習 Section６ 分類（３）モデルの評価・比較
③ 真陽性率（再現率） Recall
陽性
Positive
陰性
Negative
Positive
真陽性
True Positive
(TP)
偽陰性
False
Negative
(FN)
Negative
検 査（予 測）
偽陽性
False
Positive
(FP)
真陰性
True
Negative
(TN)
TP
TP + FN
データサイエンス チュートリアル
陽性
陰性
ピンクの部分の和、すなわち、検査で陽性かつ診断でも陽性
（TP）を分子に、分母に診断で陽性だった人数を算出した比率
を算出したもの。
診 断（結 果）
真陽性率 (Recall)は、実際に陽性であるもののうち、正しく陽性
であると予測できた割合。再現率とも言います。
9


# Page. 10

![Page Image](https://bcdn.docswell.com/page/2EV2G96XEQ.jpg)

4th STEP 機械学習 Section６ 分類（３）モデルの評価・比較
④ 適合率 Prec.
陽性
Positive
陰性
Negative
Positive
真陽性
True Positive
(TP)
偽陰性
False
Negative
(FN)
Negative
検 査（予 測）
偽陽性
False
Positive
(FP)
真陰性
True
Negative
(TN)
TP
TP + FP
データサイエンス チュートリアル
陽性
陰性
ピンクの部分の和、すなわち、検査で陽性かつ診断でも陽性
（TP）を分子に、分母に検査で陽性だった人数を算出した比率
を算出したもの。
診 断（結 果）
適合率（Precision／略してPrec.）は、陽性であると予測した
もののうち、実際に陽性だった割合を表します。
10


# Page. 11

![Page Image](https://bcdn.docswell.com/page/57GR8ZNREL.jpg)

4th STEP 機械学習 Section６ 分類（３）モデルの評価・比較
⑤ F1-score
F1-scoreは、 『compare_models』関数の出力では
『F1』と表示されています。真陽性率 (Recall)と適合率
（Precision／略してPrec.）の両方を加味した評価を表し
ます。
(1)にH=F1、n=2、x₁=Precision、x₂=Recallを代入する
と、
具体的には、適合率と真陽性率の調和平均がF1-scoreです。
分母の分数を通分し、分数の割り算を掛け算に変換すると、
下記のようになります。
調和平均は、往復で異なる速度で移動した場合の平均速
度、複数の商品の平均購入レート、株価収益率などの平均を
計算する際に用いられます。
求め方は、データがn個あり、それぞれの値をx₁, x₂, ..., xnとす
ると、調和平均Hは以下の式で表されます。
H = n / (1/x₁ + 1/x₂ + ... + 1/xn)
F1 = 2 / (1/Precision + 1/Recall)
F1 = 2 * (Precision * Recall) /
(Precision + Recall)
F1-scoreは、このように求められたものです。
………(１)
調和平均に関しては、速度の平均値を求める例がわかりやすい！下記のページを参照してみましょう。
https://atmarkit.itmedia.co.jp/ait/articles/2311/22/news040.html
データサイエンス チュートリアル
11


# Page. 12

![Page Image](https://bcdn.docswell.com/page/4EQV9LQYJP.jpg)

4th STEP 機械学習 Section６ 分類（３）モデルの評価・比較
⑥ カッパ係数 ＆ マシューズ相関係数
カッパ係数 Kappa
マシューズ相関係数 MCC
ある現象を2人の観察者が観察した場合の結果がどの程度
一致しているかを表す統計量。
マシューズ相関係数（MCC）は、機械学習における二項分
類の性能を評価するための指標。 -1から+1までの値をとり、
+1は完全な予測、0はランダムな予測、-1は完全な逆予測
0から1までの値をとり、値が大きいほど一致度が高いといえる。 を表します。
0.6以上であれば、観察者間の一致度
特に、クラスの分布が不均衡なデータセット（一方のクラス
（reproducibility）が十分高いと判断されます。
が極端に少ないなど）において、モデルの性能を正確に評価
するのに適しています。
ちなみに、MCCは以下の式で計算されます。
MCC = (TP × TN - FP × FN) /
√((TP + FP) × (TP + FN) × (TN
+ FP) × (TN + FN))
ちなみに、カッパ係数は次の式で算出されます。
カッパ係数 = (観察された一致度－偶然に
よる一致度) / (1－偶然による一致度)
データサイエンス チュートリアル
12


# Page. 13

![Page Image](https://bcdn.docswell.com/page/KJ4MXDNZE1.jpg)

4th STEP 機械学習 Section６ 分類（３）モデルの評価・比較
なぜ複数の評価指標を求めるのか？
120人の患者の検査結果と診断結果が①の混合行列のよ
うなとき、正解率は0.88と高いように思いますが、混合行列
は真陰性が非常に多く、偏ったものになっています。
もし、②のように、真陽性の患者がすべて偽陽性の患者に
なってしまったら、すなわち、検査で陽性の患者がすべて陰性
と診断されてしまったら、正解率はどうなるでしょうか？
①
正解率＝0.88
②から導き出される正解率、真陽性率、適合率をご覧ください。
正解率は①とほぼ変わりませんが、他の評価指標である真陽
性率、適合率は、非常に低いものとなります。
正答率は直感的で簡単に算出できますが、性能評価は複数
の数値で判断しましょう。
②
正解率＝0.88
真陽性率＝0.33
真陽性率＝0
適合率＝0.5
適合率＝0
よくわかりやすく解説している下記のページを参照してみましょう。
https://note.com/noa813/n/nef0692042cdf
データサイエンス チュートリアル
13


