dark knowledge

Dark knowledge betegner den ekstra information, der ligger i en lærerende models bløde sandsynlighedsfordelinger, og som overføres til en elevmodel under viden destillation.

Kort fortalt

Den skjulte viden i en models sandsynlighedsfordelinger, der gør elevmodellen klogere.

Kategori
begreb
Niveau
øvet
Udtale
/dɑːk ˈnɒlɪdʒ/

Betydninger

1
  1. 1

    Den implicitte information, der findes i en klassifikationsmodels bløde sandsynlighedsfordelinger ud over de hårde forudsigelser, typisk karakteriseret ved relative sandsynligheder for forkerte klasser. Ved destillation af viden overføres denne mørke viden til en mindre model ved at matche de bløde sandsynligheder.

    • Ved at anvende en høj temperatur i softmax-funktionen afsløres dark knowledge gennem de bløde sandsynligheder.Distilling the Knowledge in a Neural Network, Hinton et al., 2015

Hvornår bruges det

Dark knowledge bruges i viden destillation, hvor en lille elevmodel lærer af en stor lærermodels bløde etiketter, hvilket giver adgang til nuance og relativ usikkerhed mellem klasser.

Kodeeksempel

import torch
import torch.nn.functional as F

def soften_logits(logits, temperature):
    return F.softmax(logits / temperature, dim=-1)

Funktion til at beregne bløde sandsynligheder med temperaturparameter, som afslører dark knowledge.

Oprindelse

Udtrykket blev populariseret af Geoffrey Hinton og medforfattere i artiklen 'Distilling the Knowledge in a Neural Network' (2015), hvor de beskrev, hvordan den bløde sandsynlighedsfordeling indeholder 'dark knowledge'.

Kilder

1
  • Distilling the Knowledge in a Neural Network, Hinton et al., 2015