Sobes.tech
Middle — Senior

Kas võib kasutada rist-entropy kahe klassi jaoks ja miks see ei ole soovitatav?

sobes.tech AI

Vastus AI-lt

Ristkriitne entropia on laialdaselt kasutatav kaotusefunktsioon klassifitseerimisülesannete jaoks, sealhulgas binaarset (kaks klassi) klassifitseerimist. Teoreetiliselt sobib ristkriitne entropia kahe klassi jaoks, kuna see mõõdab tõelise ja ennustatud jaotuse vahelist erinevust.

Kuid binaarset klassifikatsiooni kasutades kasutatakse sageli spetsialiseeritud vormi: binaarset ristkriitset entropiat, mis on optimeeritud kahe klassi jaoks ja arvestab tõenäosuste ja märkide omadusi.

Miks ei soovitata kasutada tavalist (mitmeklassilist) ristkriitset entropiat kahe klassi jaoks:

  • See nõuab märkide esitlust ühe-kuum vektorina, mis on kahe klassi jaoks üleliigne.
  • See võib põhjustada liigseid arvutusi ja keerulisemaks muuta mudelit.
  • Binaarne ristkriitne entropia on lihtsam ja tõhusam, kuna see töötab ühe arvuga — positiivse klassi kuuluvuse tõenäosusega.

Näide binaarsest ristkriitse entropiast PyTorchis:

import torch
import torch.nn as nn

criterion = nn.BCELoss()  # binaarne ristkriitne entropia
outputs = torch.sigmoid(logits)  # mudeli väljundid
loss = criterion(outputs, targets)

Seetõttu on kahe klassi puhul soovitatav kasutada binaarset ristkriitset entropiat üldise asemel, et parandada õppimise tõhusust ja täpsust.