G-meanとは

G-meanは、機械学習における分類モデルの性能評価指標の一つであり、特に不均衡データセット(Imbalanced Dataset)に対する少数クラスと多数クラスの識別能力のバランスを評価する指標のことであり、各クラスの正解率(リコールまたは感度)の幾何平均として計算され、モデルが全てのクラスを公平に扱っているかを示すための値のことです。

G-meanの概要と評価指標における役割

G-mean(Geometric Mean、幾何平均)は、データセットのクラス分布が不均衡である場合に、分類モデルの全体的な性能を評価するために用いられる重要な指標です。

不均衡データセットでは、多数クラス(Majority Class)のサンプルが圧倒的に多いため、単純な正解率(Accuracy)だけを評価指標として用いると、モデルが少数クラス(Minority Class)を完全に無視して全て多数クラスに分類したとしても、高い正解率が算出されてしまうという問題があります。

G-meanは、この問題を回避するために、各クラスの正解率(リコール、または感度)を用いて計算されます。リコールは、「実際にそのクラスであるサンプルを、モデルがどれだけ正しくそのクラスだと分類できたか」を示すため、特にサンプル数の少ない少数クラスの識別能力を反映します。

主な目的は、モデルが少数クラスを正しく識別する能力(リコール)を、多数クラスのリコールを犠牲にすることなく、適切に維持しているか、すなわち分類器のパフォーマンスが全てのクラスでバランス良く保たれているかを単一の数値で示すことです。

G-meanの計算方法と解釈

G-meanは、各クラスのリコール(感度)の値を掛け合わせ、その積の幾何平均を計算することで求められます。

1. リコール(感度)の定義

まず、二値分類(陽性クラスと陰性クラス)を例にとると、リコール(感度)は以下のように定義されます。

  • 陽性クラスのリコール(感度): $TP / (TP + FN)$
  • 陰性クラスのリコール(特異度): $TN / (TN + FP)$

ここで、$TP$は真陽性、$FN$は偽陰性、$TN$は真陰性、$FP$は偽陽性です。

2. G-meanの計算式

二値分類において、G-meanは以下の計算式で定義されます。

G\text{-mean} = \sqrt{\text{Sensitivity} \times \text{Specificity}}

多クラス分類の場合は、各クラス $i$ のリコール($R_i$)を使用して一般化されます。

G\text{-mean} = \sqrt[N]{\prod_{i=1}^{N} R_i}

ここで、$N$ はクラスの総数です。

3. G-meanの解釈

  • 値の範囲: G-meanの値は $0$ から $1$ の間をとります。
  • バランスの評価: G-meanが高い値(1.0に近い)を示すほど、モデルは全てのクラスに対して高い識別能力を持ち、バランスが取れていることを意味します。
  • 低いG-mean: もし、多数クラスのリコールが高くても、少数クラスのリコールが極端に低い場合(例:$0.95 \times 0.05$)、G-meanの値は著しく低下します。これにより、モデルが不均衡データに対して不適切な学習をしていることを明確に示唆します。

したがって、不均衡データに対するモデルの最適化を行う際には、単純な正解率ではなく、このG-meanを最大化することが、より実用的な目標となります。

関連用語

不均衡データセット | 今更聞けないIT用語集
機械学習 | 今更聞けないIT用語集
AIソリューション

お問い合わせ

システム開発・アプリ開発に関するご相談がございましたら、APPSWINGBYまでお気軽にご連絡ください。

APPSWINGBYの

ソリューション

APPSWINGBYのセキュリティサービスについて、詳しくは以下のメニューからお進みください。

システム開発

クラウドネイティブ技術とアジャイル手法を駆使し、市場投入スピード(Time-to-Market)を最大化。「進化し続けるアプリケーション」を開発します。初期リリースを最速化し、拡張性と柔軟性を備えた、ビジネスの成長に追従できるアプリケーションを開発します。

DX・AI戦略支援

「何から手を付けるべきか分からない」「AIを導入したいが、費用対効果が見えない」といった経営課題に対し、技術とビジネスの両面から解を導き出します。 絵に描いた餅で終わる戦略ではなく、エンジニアリングの実装能力に基づいた、「実現可能で、勝てる技術戦略」を策定します。


リファクタリング・リアーキテクチャ

「システムが古くて改修できない」「障害が頻発する」といった技術的負債を解消します。既存資産の徹底的な診断に基づき、コードのクリーン化(リファクタリング)や、クラウドへの移行(リアーキテクチャ)を行い、システムの寿命を延ばしコストを最適化します。