La borne qui est vraiment atteinte
L’entropie n’est pas un résumé de distribution mais un plancher que le meilleur code atteint à la dernière décimale, le supplément payé pour la mauvaise distribution est exactement la perte que tout classifieur minimise déjà, et l’information mutuelle pose un plafond dur sur tout ce qui suit un capteur. Trois résultats, chacun d’une netteté inhabituelle.
Prérequis : Probability and Statistical Foundations
La plupart des bornes de l’apprentissage automatique sont lâches. On démontre qu’une erreur vaut au plus quelque chose, ce quelque chose est énorme, et l’intérêt du résultat tient à sa forme plus qu’à son chiffre.
La théorie de l’information fait exception, et c’est ce qui lui vaut quelques heures d’attention. Trois de ses quantités centrales sont des bornes atteintes, et chacune se révèle être une chose que vous utilisez déjà sans lui donner ce nom.
Un : la longueur minimale d’un code
Prenez quatre symboles de probabilités , , , . L’entropie vaut
Construisez maintenant le meilleur code préfixe en fusionnant à plusieurs reprises les deux symboles les moins probables. Les longueurs sortent à 1, 2, 3 et 3 bits, soit une moyenne de 1,7500 bit : l’entropie, à toutes les décimales. Un code de longueur fixe demanderait 2 bits, d’où une économie de 12,5 %.
L’égalité est exacte parce que chaque longueur idéale se trouve être ici un entier. Passez à la source et elle cesse de l’être : entropie 1,4905, meilleur code 1,5500. La longueur idéale d’un symbole de probabilité 0,6 est 0,737 bit, et aucun mot de code ne dure 0,737 bit.
Interactif : construisez le code, puis essayez de battre la borne
Le code est construit pour ce que vous réglez, il n’est pas recopié.
Les mots de code, et la longueur méritée par chaque symbole
- Entropie
- 1.7500
- Moyenne du code
- 1.7500
- Écart
- 0.0000
- Bits par symbole
- 1.7500
Le code atteint exactement l’entropie, sans reste. Cela arrive quand chaque probabilité est une puissance de deux : la longueur idéale log2(1/p) est alors un entier, et le code peut donner à chaque symbole précisément la longueur qu’il méritait. Écartez n’importe quel curseur d’une puissance de deux et un écart apparaît aussitôt.
La parade consiste à coder plusieurs symboles à la fois, pour partager l’erreur d’arrondi :
| taille du bloc | bits par symbole |
|---|---|
| 1 | 1,5500 |
| 2 | 1,5275 |
| 3 | 1,5026 |
| 4 | 1,4983 |
| la borne | 1,4905 |
On s’en approche par le haut, sans jamais la franchir. Notez ce qui ne se produit pas : les symboles sont indépendants, il n’y a donc aucune redondance entre eux à exploiter et l’entropie par symbole ne change jamais. Seule la granularité s’améliore.
La lecture pratique est celle qu’il faut garder. Si un compresseur bat l’entropie que vous avez calculée, le théorème n’est pas en difficulté : votre distribution était fausse. L’entropie est un énoncé sur un modèle, ce qui en fait un outil de modélisation plutôt qu’une propriété d’un fichier.
Deux : ce que coûte la mauvaise distribution
Vous ne connaissez jamais . Codez donc cette même source avec le code optimal d’une autre distribution , disons l’uniforme, et mesurez la facture :
Exactement deux bits par symbole, se scindant exactement en l’entropie de la source plus un supplément. Ce supplément est la divergence de Kullback-Leibler.
Regardez de quoi dépend chaque terme. est une propriété du monde : aucun modèle ne la change, et c’est le jumeau informationnel de l’erreur irréductible de la décomposition biais-variance. est entièrement votre modèle.
Minimiser l’entropie croisée sur des modèles revient donc à minimiser exactement la divergence à la vérité. Deux choses en découlent aussitôt : la perte ne peut jamais atteindre zéro sur une source bruitée, donc une perte d’entraînement qui tend vers zéro signale une mémorisation plutôt qu’un apprentissage ; et minimiser l’entropie croisée, c’est faire du maximum de vraisemblance dans d’autres unités.
Interactif : les bits que coûte un mauvais modèle
La source est fixe. Déplacez le modèle : le plancher, lui, ne bouge pas.
Où passent les bits : p(x) log2(1/q(x))
- H(p)
- 1.4905 bits
- H(p, q)
- 2.0000 bits
- KL(p || q)
- 0.5095 bits
- KL(q || p)
- 0.5952 bits
Vous payez 0.5095 bits par symbole de plus que ne l’exige la source, soit 6.4 % d’un octet jeté à chaque symbole, sans fin. L’essentiel vient de A : le modèle lui attribue un mot de code de 2.00 bits alors que la source continue de le produire, ce qui gaspille à lui seul 0.758 bits de la moyenne. Ce n’est pas le symbole que le modèle estime le plus mal : c’est celui qui est mal estimé et fréquent.
Ce n’est pas une distance
Prenez une source qui émet un symbole 98 % du temps.
| direction | bits |
|---|---|
| KL(source || uniforme) | 1,4235 |
| KL(uniforme || source) | 2,8540 |
Les deux mêmes distributions, et une direction coûte un peu plus du double de l’autre.
est dominée par les issues que produit et que juge improbables : la minimiser étale le modèle pour couvrir ce qui arrive. punit l’inverse, donc la minimiser fait s’engager le modèle sur une région. Le choix est une décision de modélisation, et c’est pourquoi les approches variationnelles qui prennent la seconde direction cherchent les modes.
Et elle n’est pas bornée
La perte sur un exemple vaut :
| probabilité donnée par le modèle à la vérité | perte |
|---|---|
| 0,5 | 1,00 bit |
| 0,1 | 3,32 bits |
| 0,01 | 6,64 bits |
| 0,001 | 9,97 bits |
Un modèle juste 95 % du temps mais certain sur les 5 % qu’il rate est bien plus mal noté qu’un modèle aussi souvent juste qui nuance. La justesse ne voit pas cette différence ; l’entropie croisée en est faite. Cela explique aussi une courbe de perte qui fait un pic sans que la justesse bouge : quelques exemples confidemment faux dominent le gradient.
Trois : ce qu’une variable dit d’une autre
La même machinerie, appliquée à une paire, répond du même chiffre à une question d’ingénierie et à une question de modélisation.
Pour un canal qui inverse chaque bit avec probabilité , la capacité vaut :
| probabilité d’inversion | bits transportés par usage |
|---|---|
| 0,00 | 1,0000 |
| 0,10 | 0,5310 |
| 0,25 | 0,1887 |
| 0,50 | 0,0000 |
À le canal a raison neuf fois sur dix et transporte à peine plus d’un demi-bit : justesse et information ne sont pas la même monnaie. À il ne transporte rien du tout, car la distribution de sortie est alors identique quoi que l’on envoie. À il revient à 0,5310 : un menteur constant vaut un témoin fiable.
La dépendance que la corrélation annonce nulle
Engendrez deux bits indépendants et prenez leur ou exclusif comme cible. Sur 200 000 tirages :
| mesure | valeur |
|---|---|
| corrélation d’une entrée avec la cible | +0,0016 |
| information mutuelle d’une entrée avec la cible | 0,0000 bit |
| information mutuelle de la paire avec la cible | 1,0000 bit |
Toutes les lectures sont justes. Aucune entrée seule ne dit quoi que ce soit, et l’information mutuelle, qui attraperait une dépendance de n’importe quelle forme et non seulement linéaire, le confirme. La paire détermine exactement la cible.
Donc tout filtrage de variables qui les classe une à une écarte les deux, sur un rapport parfaitement propre. Le cas n’a rien d’exotique : un médicament qui n’agit qu’en présence d’un gène, une panne qui ne survient que lorsque deux réglages divergent. La parade est de noter des sous-ensembles, ou de laisser un modèle qui représente les interactions les voir ensemble.
Une précaution : l’information mutuelle est plus difficile à estimer qu’une corrélation. Sur des variables continues elle dépend d’un découpage, et elle est biaisée vers le haut sur de petits échantillons, si bien qu’une valeur élevée sur peu de points peut n’être que l’estimateur qui parle.
Le plafond que rien ne relève
Mesurez le canal à 10 % et vous obtenez 0,5329 bit sur ce qui a été émis, ce qui rejoint la valeur théorique 0,5310. Effacez trois bits reçus sur dix en les mettant à 0 et mesurez de nouveau : 0,2763 bit.
C’est descendu, et aucun traitement ne peut le faire remonter. Pour toute chaîne ,
car est calculé à partir de et ne voit de que ce que a transmis. Les conséquences sont franches :
- les codes fonctionnent en ajoutant de la redondance avant la transmission ; aucun décodeur ne récupère ce que le canal a détruit
- aucun modèle, si profond soit-il, n’extrait sur l’étiquette plus que ses variables n’en portent : les couches sont des fonctions de couches et le plafond est fixé à l’entrée
- toute étape de prétraitement, de la quantification à la suppression d’une colonne, ne peut que perdre de l’information, ce qui peut être le bon compromis mais devrait être une décision et non une habitude de ménage
Le texte ci-dessus efface des bits ; la figure emploie plutôt un second canal à 10 % placé en série. Avec les deux probabilités d’inversion à 0,10, sa case Après traitement affiche 0,3199 bit plutôt que le 0,2763 ci-dessus, et les deux restent sous ce que le canal transportait. L’inégalité tient pour chaque choix ; le nombre dépend de celui que vous faites.
Interactif : ce qu’un canal transporte, et ce qu’il ne récupère jamais
Exact, depuis la loi jointe. Aucun échantillonnage nulle part.
- Bits par usage
- 0.5310
- Après traitement
- 0.3199
- Perdu au traitement
- 0.2111
- Inversion composée
- 0.1800
Un canal qui inverse avec la probabilité 0.10 a raison 90 % du temps et ne transporte pourtant que 0.5310 bits par usage. L’exactitude et l’information ne sont pas la même monnaie. Faites passer la sortie dans un second canal à 0.10 : l’inversion composée vaut 0.1800 et il reste 0.3199 bits. Cela a baissé, et cela baissera toujours.
Pourquoi cela revient sans cesse
La compression, les communications et les fonctions de perte de l’apprentissage automatique sont les trois mêmes quantités habillées différemment. L’entropie est le plancher. L’entropie croisée est ce que vous payez quand votre distribution est fausse, et son excédent sur le plancher est ce que votre optimiseur réduisait depuis le début. L’information mutuelle est ce qu’une variable dit d’une autre, et elle borne tout ce qui suit.
Aucune des trois n’est une heuristique, ce qui est assez rare dans ce domaine pour valoir l’après-midi nécessaire à les apprendre correctement.
Références et lectures complémentaires
- David J. C. MacKay, Information Theory, Inference, and Learning Algorithms, Cambridge University Press, 2003source ↗
- Thomas M. Cover, Joy A. Thomas, Elements of Information Theory, Wiley (2nd edition), 2006· Bibliothèque de référence Kudos AI
Les œuvres protégées par le droit d’auteur sont citées à titre de référence uniquement et ne sont pas hébergées ici ; veuillez consulter l’éditeur pour y accéder.