Sie können nicht und Sie nicht. Stellen Sie sich vor, Sie haben eine Zufallsvariable für die Wahrscheinlichkeitsverteilung Q. Aber Ihr Freund Bob glaubt, dass das Ergebnis von der Wahrscheinlichkeitsverteilung P herrührt. Er hat eine optimale Codierung konstruiert, die die Anzahl der erwarteten Bits minimiert, die er verwenden muss, um Ihnen die Wahrscheinlichkeitsverteilung mitzuteilen Ergebnis. Da er die Codierung jedoch aus P und nicht aus Q erstellt hat, sind seine Codes länger als erforderlich. KL-Divergenz messen, wie lange die Codes sein werden.
Nehmen wir an, er hat eine Münze und möchte Ihnen die Reihenfolge der Ergebnisse mitteilen, die er erzielt. Da Kopf und Schwanz gleich wahrscheinlich sind, gibt er ihnen beide 1-Bit-Codes. 0 für Kopf, 1 für Schwanz. Wenn er Schwanz Schwanz Kopf Schwanz bekommt, kann er 1 1 0 1 senden. Wenn nun seine Münze auf dem Rand landet, kann er es Ihnen unmöglich sagen! Kein Code, den er dir schickt, würde funktionieren. Zu diesem Zeitpunkt bricht die KL-Divergenz zusammen.
Da die KL-Divergenz zusammenbricht, müssen Sie entweder ein anderes Maß oder andere Wahrscheinlichkeitsverteilungen verwenden. Was Sie wirklich tun sollten, hängt davon ab, was Sie wollen. Warum vergleichen Sie Wahrscheinlichkeitsverteilungen? Woher kommen Ihre Wahrscheinlichkeitsverteilungen, werden sie aus Daten geschätzt?
Sie sagen, Ihre Wahrscheinlichkeitsverteilungen stammen irgendwie aus Dokumenten in natürlicher Sprache, und Sie möchten Paare von Kategorien vergleichen.
Zunächst würde ich ein Maß für die Symmetrie empfehlen. Für diese Anwendung klingt es, als wäre A B ähnlich, als wäre B A ähnlich.
Haben Sie das Cosinus-Ähnlichkeitsmaß ausprobiert? Es ist in NLP ziemlich verbreitet.
Wenn Sie bei KL bleiben möchten, können Sie eine Wahrscheinlichkeitsfunktion aus beiden Dokumenten abschätzen und dann sehen, wie viele zusätzliche Bits Sie durchschnittlich für beide Dokumente benötigen würden. Das heißt (P || (P + Q) / 2 + Q || (P + Q) / 2) / 2