Taak 6

Laten we een multi-label classificatieprobleem beschouwen. Voor elke klasse \(c\) vertegenwoordigt \(TP_c\) de instanties die in klasse \(c\) zitten en correct als behorend tot \(c\) zijn geïdentificeerd; \(TN_c\) vertegenwoordigt de instanties die niet in klasse \(c\) zitten en correct als niet behorend tot \(c\) zijn geïdentificeerd; \(FP_c\) vertegenwoordigt de instanties die niet in klasse \(c\) zitten maar onjuist als behorend tot \(c\) zijn gelabeld; \(FN_c\) vertegenwoordigt de instanties die in klasse \(c\) zitten maar onjuist als niet behorend tot \(c\) zijn gelabeld.

We hebben de volgende metriek:

  • per-klasse recall:
    \[
    \mathrm{Recall}_c = \frac{TP_c}{TP_c+FN_c}=P(\mathrm{pred} = c\mid\mathrm{true}=c);
    \]
  • per-klasse precision:
    \[
    \mathrm{Precision}_c = \frac{TP_c}{TP_c+FP_c}=P(\mathrm{true}=c\mid\mathrm{pred} =c);
    \]
  • per-klasse specificiteit:
    \[
    \mathrm{Spec}_c = \frac{TN_c}{TN_c+FP_c}=P(\mathrm{pred}\neq c\mid\mathrm{true}\neq c);
    \]
  • voor elke klasse-afhankelijke foutmetriek \(M_c\) is de macro-gemiddelde foutmetriek het rekenkundig gemiddelde van de klassespecifieke scores
    \[
    \mathrm{Macro}-M=\frac{\sum_c M_c}{\textrm{aantal klassen}};
    \]
  • voor een verdeling \(\pi=(\pi_c)\) van de labels is de accuracy:
    \[
    \mathrm{acc}(\pi)=\sum_c\pi_c\mathrm{Recall}_c;
    \]
  • als \(C = (C_{ij})\) een kostenmatrix is waarbij \(C_{ij} = \mathrm{Cost}(\mathrm{pred} = j\mid\mathrm{true} = i)\), dan is de verwachte kost
    \[
    \mathbb{E}_\pi(C) = \sum_{i,j}\pi_i P(\mathrm{pred} = j\mid\mathrm{true} = i)C_{ij}.
    \]

    Je mag aannemen dat elke klasse niet-nul ondersteuning heeft en dat de classifier zowel correcte als incorrecte voorspellingen doet voor elke klasse (niet-degeneratie).
  1. Laten we aannemen dat je een binaire classifier hebt, met klassen \(0\) en \(1\). Bewijs dat, als
    \[
    \mathrm{accuracy}=\mathrm{precision}_1=\mathrm{recall}_1,
    \]

    de ondersteuning van de twee klassen gelijk moet zijn.

[5 punten]

Voor de resterende onderdelen kun je de volgende context aannemen.

Context

Een triagesysteem voor de volksgezondheid classificeert binnenkomende berichten in één van drie klassen:
\[
U = \text{Urgent}, \quad
S = \text{Semi-urgent}, \quad
N = \text{Niet-urgent}.
\]

De trainingsdataset werd bewust verrijkt met urgente en semi-urgente gevallen.
Op de trainingsset produceerde de classifier de volgende verwarringsmatrix
(rijen komen overeen met het ware label, kolommen met het voorspelde label):

Waar \(\backslash\) Voorspeld \(U\) \(S\) \(N\) Totaal
\(U\) 200 30 20 250
\(S\) 30 270 50 350
\(N\) 10 30 360 400

De bijbehorende training-labelverdeling is
\[
\pi_{\text{train}} =
\big(P(U)=0.25,\; P(S)=0.35,\; P(N)=0.40\big).
\]

Bij deployment is de labelverdeling in de echte wereld anders:
\[
\pi_{\text{dep}} =
\big(P(U)=0.05,\; P(S)=0.15,\; P(N)=0.80\big).
\]

Je mag aannemen dat het conditionele gedrag van de classifier stabiel is:
\[
P_{\text{train}}(\mathrm{pred} = j \mid \mathrm{true} = i) = P_{\text{dep}}(\mathrm{pred} = j \mid \mathrm{true} = i)
\quad \text{voor alle } i,j \in \{U,S,N\}.
\]

We krijgen de volgende kostenmatrix
(kosten van het voorspellen van het kolomlabel wanneer het ware label het rijlabel is):

\[
C(\mathrm{pred} = j \mid \mathrm{true} = i) =
\begin{array}{c|ccc}
& U & S & N \\ \hline
U & 0 & 20 & 100 \\
S & 5 & 0 & 10 \\
N & 1 & 1 & 0
\end{array}
\]

  1. Bereken \(\mathrm{Precision}_U\) onder zowel \(\pi_{\text{train}}\) als \(\pi_{\text{dep}}\).
    Leg uit waarom precision verandert onder distributieverschuiving terwijl recall dat niet doet.

[5 punten]

  1. Beschouw twee strategieën voor het kiezen van de decision rule bij deployment:
    1. het maximaliseren van training-accuracy;
    2. het minimaliseren van de verwachte deployment-kost.

Leg uit waarom strategie (1) kan leiden tot een hogere verwachte kost bij deployment dan strategie (2).

[3 punten]

[Totaal 13 punten]