1 混同行列の概要
1.1 定義と表の構造
1.1.1 行・列が表す意味
混同行列は、分類器の出力結果を「予測したクラス」と「実際のクラス」の対応として整理した表である。典型的には、行(または縦方向)に実際クラスを配置し、列(または横方向)に予測クラスを配置する。これにより、各行の分布は「その実際クラスに属する対象が、どの予測クラスに割り当てられたか」を表し、対角より外側の要素は誤った割り当てに該当する。
1.1.2 要素の解釈(件数・確率・比率)
表の各セルには、実際クラスに属するサンプルのうち、対応する予測クラスに分類された回数(件数)が格納されることが多い。場合によっては、行ごとに正規化して割合(比率)を示したり、全体で正規化して確率のように扱ったりする。件数はデータ量の影響を受ける一方、比率はクラスごとの傾向を見やすくするため、クラス不均衡がある場面では解釈の焦点が変わる。
1.1.3 対角成分と誤分類成分
対角成分は、実際クラスと予測クラスが一致した割合(または件数)を示す。これに対し、対角成分以外は誤分類成分であり、「実際にはAであるのにBと予測された」といった取り違えを具体的に確認できる。対角の大きさだけでなく、どの非対角セルが大きいかを観察することで、特定クラス同士の混同が体系的に起きているかを把握しやすい。
1.2 対象分野と利用場面
1.2.1 機械学習の分類評価
機械学習の分類問題では、正解率(精度)のような単一指標では見えにくい誤りの内訳を知るために混同行列が用いられる。特に、多クラス分類では「どのクラスが別のクラスに吸い寄せられるか」が可視化されるため、学習データの偏り、特徴量の不足、ラベル品質の問題などの診断に役立つ。モデル改善の優先順位を決めるための材料として利用されることが多い。
1.2.2 医療・品質管理・検知などの実務
医療では、疾患の種類ごとの見逃しや誤診のパターンを整理する用途がある。品質管理では、規格適合と不適合の判定における誤りの出方を把握し、再発防止や検査条件の見直しにつなげられる。検知(異常検知やスパム検知など)でも、誤検知と見逃しのバランスを評価する際に混同行列の構造が理解の助けになる。実務では、コスト(誤りの重さ)に応じた判断へ接続する点が重要となる。
1.3 混同行列と関連概念
1.3.1 分類レポートとの違い
分類レポートは、各クラスについて適合率や再現率などの指標をまとめて提示することが多い。一方で混同行列は、クラス間の取り違えそのものを表の形で示すため、どの誤りがどの誤り相手に向かっているかを直接確認できる。指標は要約として有用であるが、根本原因の手がかりは混同行列の非対角要素から得やすい場合がある。目的に応じて両者を併用するのが一般的である。
1.3.2 予測ラベルと正解ラベルの前提
混同行列を作成するには、予測ラベルと正解ラベルの対応づけが前提となる。ラベル集合の取り扱い(あるクラスがテストに存在しない場合、あるいは学習時のクラス定義と評価時のラベル体系が一致していない場合)によって、表の形や解釈が変化する。さらに、確率出力を持つモデルで閾値を用いる場合、予測ラベルの決め方が混同行列の内容を左右するため、評価条件の明示が必要になる。
2 二値分類における混同行列
2.1 基本の4区分
2.1.1 真陽性(TP)
真陽性(TP)は、実際には正である対象が、予測でも正と判定された件数(または割合)を指す。たとえば医療検査なら「病気である人を陽性と判定した」ことに対応する。TPが大きいほど、その正クラスに対する検出性能は高い可能性があるが、誤って正としたケースの扱い(後述のFP)も同時に考える必要がある。
2.1.2 偽陽性(FP)
偽陽性(FP)は、実際には負である対象が、予測では正と判定された件数(または割合)である。検査文脈では「病気ではない人を陽性と判定した」ことに相当する。FPは不要な対応(追加検査、介入、警告など)を増やす要因になり得るため、実務上の許容度は場面により大きく異なる。
2.2 真陰性(TN)と偽陰性(FN)
2.2.1 正しく除外できた割合
真陰性(TN)は、実際に負である対象が、予測でも負と判定された件数(または割合)を表す。これは誤って正側に振れてしまうことを抑えられているかの側面を示し、同時に、負側の取りこぼしがどれほど少ないかにも間接的に関連する。TNは見た目には「正の検出とは別」と誤解されがちだが、指標全体のバランスには寄与する。
2.2.2 見逃しの影響の捉え方
偽陰性(FN)は、実際には正である対象が、予測では負と判定された件数(または割合)である。検査では「病気である人を陰性と判定した」に該当し、見逃しのリスクを具体化する。FNの大きさは、回復可能性の低下や後々のコスト増など、現場では深刻な影響と結びつくことがあるため、評価の中心に置かれることが多い。
2.3 指標との対応
2.3.1 適合率と再現率
二値分類では、混同行列の4区分から適合率と再現率が導かれる。適合率(precision)は「予測した正のうち、実際にも正だった割合」に相当し、FPの多さが下げる方向に働く。再現率(recall)は「実際の正のうち、予測でも正とできた割合」を意味し、FNの多さが下げる。これらは、検出の厳しさと見逃しの少なさという異なる観点を分解して理解するために役立つ。
2.3.2 精度・特異性・F値
精度(accuracy)は全体の正誤一致割合であり、TNやTPが大きいほど高くなる。ただしクラス不均衡では見かけの良さにつながることがあるため注意が必要である。特異性(specificity)は「実際の負のうち、予測で負とできた割合」で、FPを抑える性能を示す。F値(F1など)は、適合率と再現率の調和平均として定義され、両者のバランスを一つの数値にまとめる。どの指標を重視するかは、誤りのコスト設計に依存する。
3 多クラス分類における混同行列
3.1 クラス数が増える場合の意味
3.1.1 対角成分の解釈
多クラスでは対角成分が「各クラスごとの正解率の概略」に相当するが、クラスごとのデータ量が異なると、対角の見え方は素直に比較できない。件数ベースの表では、多いクラスが大きな値として目立つ。割合ベースでは、そのクラスに属するサンプルの中でどれだけ正しく識別できたかが見やすくなる。したがって、対角成分の読み取りは正規化の方法に強く結びつく。
3.1.2 クラス間の取り違えパターン
非対角成分は、クラス間の混同構造を表す。たとえばAがBに流れやすい場合、特徴空間で両者が近くなっている、ラベルの定義が曖昧である、あるいはデータ収集の条件が似ているといった要因が考えられる。混同行列を眺める際には、「どの列(予測側)が過剰に選ばれているか」や「どの行(実際側)がどの候補に割り当てられているか」を同時に確認すると、誤りの方向性が明確になる。
3.2 集約指標の考え方
3.2.1 マイクロ平均・マクロ平均
多クラスにおいては、各クラスの適合率や再現率を集約して単一値にする場合がある。マイクロ平均は、全クラスの区分を合算した上で指標を計算するため、データ数の多いクラスの影響を受けやすい。マクロ平均は、クラスごとに指標を計算して単純に平均するため、少数クラスにも同程度の重みが与えられる。評価したい性質により適切な集約方法が変わる。
3.2.2 重み付き平均とクラス不均衡
重み付き平均は、クラスごとの指標に対して何らかの重み(たとえばクラスの出現頻度)を掛けて集約する。これにより、不均衡なデータに対して過度に少数クラスを優先したり、逆に無視したりすることを調整できる。実務では、モデルの目的が「全体最適」なのか「特定の弱いクラスを改善」なのかによって、重みの設計が重要になる。
3.3 層化・階層ラベルへの拡張
3.3.1 階層分類での誤り表現
階層ラベル(例:大分類と小分類を持つ)では、同じ階層内の誤りと、異なる階層間での誤りの重さを区別したい場合がある。混同行列を単純に小分類どうしで作ると、上位カテゴリの誤りと下位のズレが同列に見えることがある。そこで階層を考慮した集約や、部分的な一致を許容する評価設計が用いられる。
3.3.2 部分一致の扱い
部分一致とは、完全には一致しないが、ある程度の近さ(たとえば親カテゴリが同じなど)がある場合に誤りの評価を緩める考え方である。混同行列の枠組みを拡張して、部分一致を別のカウントとして扱ったり、階層距離を用いて点数に反映したりする。どこまでを部分一致として許容するかは、タスク要件と利用者の期待に依存するため、評価の定義を明確にする必要がある。
4 混同行列の作成と実践的な注意点
4.1 データ前処理とラベル設計
4.1.1 クラス定義の一貫性
混同行列の信頼性は、クラス定義の一貫性に左右される。学習時に使ったラベル体系と、評価時に用いるクラス名や分類ルールが一致していないと、対角の意味が崩れて解釈ができなくなる。加えて、類似クラスの区別基準が曖昧だと、ラベル付けそのものの揺れが非対角成分として現れるため、事前にラベル品質の確認を行うことが望ましい。
4.1.2 学習時・評価時のルール
評価では、学習時と同じ前処理(欠損処理、正規化、カテゴリ符号化など)と、同じ出力形式(決め方のルール)が保たれている必要がある。特に確率出力モデルでは、閾値や最大確率の選択規則(argmax)が混同行列に直接影響する。さらに、テストデータの分割方法が適切でないと、見かけの性能が上振れし、混同行列の読み取りも誤った方向に導かれる。
4.2 評価手順と検証方法
4.2.1 学習データとテストデータ
混同行列は通常、テストデータに対する予測結果から作成する。学習データ上の混同行列は過学習を反映しやすく、一般化能力の評価には適さない場合が多い。したがって、学習・検証・テストの役割分担を明確にし、混同行列をどのデータ区画で算出したかを記録することが実務では重要になる。
4.2.2 クロスバリデーションでの扱い
クロスバリデーションでは、複数の分割で混同行列を算出し、集約することで安定した見通しが得られる。単純に各分割の件数を合算して表を作る方法や、割合の平均として扱う方法があるが、どの集約を選ぶかで比率の性質が変化する。分割ごとに大きなばらつきが見られる場合は、データの多様性不足や前処理の不整合など、別の検討が必要になる。
4.3 可視化と読み取りのコツ
4.3.1 正規化(割合化)による比較
正規化は、クラス間比較の公平性を高めるために有効である。行ごとに割合化すれば「その実際クラス内での成功率・失敗率」の構図が見え、列ごとに正規化すれば「その予測ラベルにどれだけ実際が一致しているか」が読みやすくなる。件数ベースと割合ベースを併用すると、データ量の影響と識別力の影響を分離して理解できる。
4.3.2 ヒートマップ表示の見方
ヒートマップではセルの色の濃淡で大きさを表現するため、対角成分の集中度や、特定の非対角セルの突出が直感的に把握できる。読み取りでは、色だけに依存せず目盛りや正規化条件を確認することが重要である。さらに、凡例(カラーバー)と軸ラベルの対応を正しく理解していないと、誤った解釈に結びつくため注意を要する。
4.4 よくある誤解と対策
4.4.1 件数と割合の取り違え
件数と割合は、クラス不均衡の有無により意味が変わる。件数ベースで対角が大きいことは、必ずしも識別性能が高いことを意味しない場合がある。一方、割合ベースでは少数クラスでの変動が大きく見えることがあるため、元データの分布を参照しながら解釈するのが適切である。表の作り方を明記し、比較するときは同じ正規化方式を揃えることが対策になる。
4.4.2 クラス不均衡による見かけの良さ
不均衡があると、支配的なクラスを当てるだけで精度が高く見えることがある。このとき混同行列では、対角が一部のクラスでだけ大きくなり、他のクラスの非対角成分が広がる形として現れることが多い。全体指標だけで判断せず、少数クラスの再現や適合の状態を確認することで、改善の方向性が見えやすくなる。
4.4.3 分類閾値の影響(確率出力の場合)
確率出力を用いる二値分類や多クラスの一部設定では、閾値を変えるとTP・FP・FN・TNの構成が変化し、混同行列の形も再配置される。閾値を高くすれば誤検知が減る傾向がある一方、見逃しが増えることがある。したがって、混同行列を評価する際には閾値条件や意思決定基準を併記し、必要なら複数閾値での比較を行うことが望ましい。