Information, Calcul, Communication Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne fait partie de son cours d’introduction à l’information, à la communication, et au calcul. Il s’inscrit dans le 2e module de ce cours qui porte sur les notions d’échantillonnage et de reconstruction de signaux puis introduit les notions d’entropie et de compression de l’information. Information, Calcul, Communication 2. Information & Communication – Leçon 3: Entropie Clip 2: Illustration O. Lévêque, commentaire: P. Janson
Plan de la leçon Introduction à la compression Notion d’entropie Calcul d’entropie Compression sans perte Algorithme de Shannon-Fano Dans le 2e clip de cette leçon nous allons introduire la notion d’entropie qui joue un rôle fondamental dans le codage et la compression de données.
Entropie – 1er exemple Considérons une séquence de 16 lettres: A B C D E F G H I J K L M N O P Jeu n° 1 Deviner quelle lettre une personne a choisie au hasard en posant un nombre minimum de questions auxquelles la personne ne peut répondre que par oui ou par non Solution 4 questions sont nécessaires et cela quelle que soit la lettre à trouver (selon l’algorithme de dichotomie vu dans le vidéoclip 1.1.5. de ce cours) On dit alors que l'entropie de cette séquence de 16 lettres est égale à 4 => NB en passant: 4 = log2(16), autrement dit 16 (possibilités) => 24 (questions binaires) Pour saisir cette notion d’entropie, considérons la séquence des 16 1eres lettres de l’alphabet, de A à P 1 Imaginons alors un 1er jeu: Il s’agit de deviner quelle lettre une personne a choisie au hasard en posant un nombre minimum de questions auxquelles la personne ne peut répondre que par oui ou par non 2 Vu qu’il y a 16 choix possibles (et pour rappel 16 = 24) 4 questions sont nécessaires et suffisantes, quelle que soit la lettre à trouver. Pour s’en convaincre il suffit d’appliquer l’algorithme de dichotomie vu dans un des clips de la 1e leçon de ce cours. Une 1e définition de l'entropie de cette séquence de 16 lettres est donc le nombre minimal de questions binaires nécessaires et suffisantes pour deviner la lettre choisie, … 3 … soit 4, c.à.d. la puissance à laquelle il faut élever 2 (le nombre de réponses binaires possibles) pour identifier une lettre parmi 16, parce que 4 = log2(16), autrement dit 16 possibilités => 24 (questions binaires).
Entropie – 2e exemple Considérons une autre séquence de 16 lettres (sans compter les espaces) I L F A I T B E A U A I B I Z A Jeu n° 2 Le jeu est le même que le 1er NB La personne choisit la position de la lettre au hasard, de manière uniforme On ne doit deviner que la lettre elle-même, pas sa position Question Combien de questions binaires (oui/non) sont nécessaires en moyenne pour deviner la lettre? Mais ce n’est pas toute l’histoire … la notion d’entropie dépend non seulement du nombre mais aussi de la diversité des lettres à deviner. Considérons p.ex. une autre séquence de 16 lettres (sans compter les espaces): I L F A I T B E A U A I B I Z A 1 Le jeu est le même que dans le 1er cas … 2 … mais on ne doit deviner que la lettre choisie et pas sa position dans la phrase 3 Combien de questions binaires (oui/non) sont nécessaires en moyenne pour deviner la lettre choisie dans ce cas de figure un peu différent?
Entropie – 2e exemple – Solution I L F A I T B E A U A I B I Z A Solution Classer les lettres dans l’ordre décroissant du nombre d’apparitions L’approche est alors la même que précédemment On sépare l’ensemble des lettres en deux parties égales en termes de nombre d’apparitions La 1e question est dans ce cas: est-ce que la lettre est un I ou un A? Si la réponse est oui la question n°2 est: est-ce que la lettre est un I ? Si la réponse est non la question n°2 est: est-ce que la lettre est un B, un L ou un F ? ... etc. La stratégie nécessaire dans ce jeu un peu plus subtil requiert plusieurs étapes. 1 La 1e étape consiste à par classer toutes les lettres possibles dans l’ordre décroissant du nombre d’apparitions comme dans la table suivante: 2 Le I et le A apparaissent donc 4x chacun, le B 2x, et les autres lettres une seule fois. 3 L’approche est alors la même que précédemment. On sépare l’ensemble des lettres en deux parties égales en termes de leur nombre d’apparitions. Toutes les étapes restantes consistent à poser successivement des questions divisant en parts aussi égales que possible les nombres d’apparitions des lettres restantes. 4 La 1e question est donc dans ce cas: est-ce que la lettre est un I ou un A? 5 Si la réponse est oui la question n°2 est: est-ce que la lettre est un I ? 6 Si la réponse est non la question n°2 est: est-ce que la lettre est un B, un L ou un F ? ... etc. Lettre I A B L F T E U Z Nombre d’apparitions 4 2 1
Entropie – 2e exemple – Arbre des questions I ou A ? I ? I ! A ! B, L, ou F ? B ? B ! L ? L ! F ! T ou E ? T ? T ! E ! U ? U ! Z ! oui non Cette stratégie mène donc à construire un arbre de questions tel que celui représenté ici. Si les 2 1es réponses sont OUI, elles suffisent à identifier la lettre choisie: I. Si la 1e réponse est OUI mais la 2e NON, cela suffit à identifier la lettre A. Si la 1e réponse était NON, il faut creuser plus profondément. Une succession de 3, voire 4 questions seront nécessaires (et suffisantes) pour identifier la lettre choisie. oui non oui non oui non oui non oui non oui non oui non
Entropie – 2e exemple – Valeur I L F A I T B E A U A I B I Z A De l’arbre des questions précédent on déduit que pour deviner une lettre qui apparaît 4 fois sur 16 (i.e. 1/4), on a besoin de 2 questions en observant que 2 = log2(4) 2 fois sur 16 (i.e. 1/8), on a besoin de 3 questions en observant que 3 = log2(8) 1 fois sur 16 (i.e. 1/16), on a besoin de 4 questions en observant que 4 = log2(16) En résumé, pour deviner une lettre qui apparaît avec une probabilité p on a besoin de log2(1/p) questions 1 De l’arbre des questions précédent on déduit que pour deviner une lettre qui apparaît 2 4 fois sur 16 (i.e. 1/4), on a besoin de 2 questions en observant que 2 = log2(4) 3 2 fois sur 16 (i.e. 1/8), on a besoin de 3 questions en observant que 3 = log2(8) 4 1 fois sur 16 (i.e. 1/16), on a besoin de 4 questions en observant que 4 = log2(16) 5 En résumé, pour deviner une lettre qui apparaît avec une probabilité p on a besoin de log2(1/p) questions.
Entropie – 2e exemple – Valeur I L F A I T B E A U A I B I Z A => Le nombre de questions nécessaires dans ce cas peut se résumer par la table En d’autres termes le nombre de questions nécessaires est en moyenne 2∗4 16 ∗2+ 1∗2 16 ∗3+ 6∗1 16 ∗4= 16+6+24 16 = 46 16 =2.875 On dit dans ce cas que l’entropie de cette séquence de 16 lettres vaut 2.875 Lettre I A B L F T E U Z Nombre d’apparitions 4 2 1 Nombre de questions 3 1 Le nombre de questions nécessaires dans cet exemple peut donc se résumer par la table suivante: 2 questions pour I et A, 3 questions pour B, et 4 pour toutes les autres lettres. 2 En d’autres termes le nombre de questions nécessaires en moyenne est de 2∗4 16 ∗2+ 1∗2 16 ∗3+ 6∗1 16 ∗4= 16+6+24 16 = 46 16 =2.875 3 On dit dans ce cas que l’entropie de cette séquence de 16 lettres vaut 2.875
Entropie – 3e exemple Considérons encore une autre séquence de 16 lettres A A A A A A A A A A A A A A A A Jeu n° 3 Le jeu est toujours le même Solution Cette fois cependant aucune question n’est nécessaire pour deviner la lettre choisie ! On dit dans ce cas que l’entropie de cette séquence est égale à 0 En d’autres termes ce message ne renferme aucune information qu’on ne puisse deviner a priori Terminons par un dernier exemple: deviner quelle lettre a été choisie parmi les 16 lettres suivantes A A A A A A A A A A A A A A A A 1 Cette fois il est évident qu’aucune question n’est nécessaire pour deviner la réponse qui est de toute façon a lettre A vu que toutes sont des A. 2 On dit dans ce cas que l’entropie de cette séquence est égale à 0 3 En d’autres termes ce message ne renferme aucune information qu’on ne puisse deviner a priori