2023
TP1:simulation de
la theorie de
linformation
TP1:simulation de la theorie de
l’information
1-objectivf du tp:
Il s’agit ici de simuler les differents parametres qui caracterisent la theorie de l’intformation a
savoir, le contenu information.l’entropie (contenu informatif moyen). L’entropie conjoint et
conditionnelle ainsi l’information mutuelle.
2-travail théorique:
P(x1)=0.3 ,P(x2)=0.25 ,P(x3)=0.2 ,P(x4)=0.12 ,P(x5)=0.08 ,P(x6)=0.05
1/calcule de le contenu informatif I(x) de cette source x:
𝐼(𝑋)=−𝑙𝑜𝑔(𝑃(𝑋))
Pour X=1,P(X=1); 𝐼(𝑋1)=−𝑙𝑜𝑔(0.3)=1.73
Pour X=2,P(X=2); 𝐼(𝑋1)=−𝑙𝑜𝑔(0.25)=2
Pour X=3,P(X=3); 𝐼(𝑋1)=−𝑙𝑜𝑔(0.2)=2.32
Pour X=4,P(X=4); 𝐼(𝑋1)=−𝑙𝑜𝑔(0.12)=3.05
Pour X=5,P(X=5); 𝐼(𝑋1)=−𝑙𝑜𝑔(0.08)=3.64
Pour X=6,P(X=6); 𝐼(𝑋1)=−𝑙𝑜𝑔(0.05)=4.32
2/calculer l’entropie H(X) de cette source:
𝐻(𝑋)=− 𝑋1𝑙𝑜𝑔2(𝑋1)+𝑋2𝑙𝑜𝑔2(𝑋2)+𝑋3𝑙𝑜𝑔2(𝑋3)+𝑋4𝑙𝑜𝑔2(𝑋4)+𝑋5𝑙𝑜𝑔2(𝑋5)+𝑋6𝑙𝑜𝑔2(𝑋6)[ ]
𝐻(𝑋)=− 0.3𝑙𝑜𝑔2(0.3)+0.25𝑙𝑜𝑔2(0.25)+0.2𝑙𝑜𝑔2(0.2)+0.12𝑙𝑜𝑔2(0.12)+0.3𝑙𝑜𝑔2(0.3)+0.3𝑙𝑜𝑔2(0.3[
𝐻(𝑋)=2.36
0𝐻(𝑋)𝑙𝑜𝑔2(𝑚)
02.362.58
3/calcule la probabilite de sortie P(Y) et l’entropie H(Y):
𝑃(𝑌)=𝑃(𝑋)𝑃(𝑌/𝑋)= 0. 05 0.05[ ] 0. 9 0. 1 ; 0.2 0.8[ ]
𝑃(𝑌)= 0. 55 0.45[ ]
𝐻(𝑌)=−𝑃(𝑌)𝑙𝑜𝑔2(𝑃(𝑌))
𝐻(𝑌)=− 0.55𝑙𝑜𝑔2(0.55)+0.45𝑙𝑜𝑔2(0.45)[ ]
𝐻(𝑌)=0. 99 𝑏𝑖𝑡𝑠/𝑠𝑦𝑚𝑏𝑜𝑙𝑒
4/calcule de la probabilite conjointe P(X,Y) et l’entropie conjointe H(Y/X):
𝑃(𝑋,𝑌)=𝑃(𝑋)𝑑𝑃(𝑌/𝑋)
𝑃(𝑋, 𝑌)= 0.5 0 ; 0 0.5[ ]0. 9 0. 1 ; 0.2 0.8[ ]
𝑃(𝑋, 𝑌)= 0.45 0.05 ; 0.1 0.4[ ]
𝐻(𝑌,𝑋)=𝑃(𝑋,𝑌)𝑙𝑜𝑔2(𝑃(𝑋))
𝐻(𝑌,𝑋)=− 0.45𝑙𝑜𝑔2(0.45)+0.05𝑙𝑜𝑔2(0.05)+0.1𝑙𝑜𝑔2(0.1)+0.4𝑙𝑜𝑔1(0.4)[ ]
𝐻(𝑌, 𝑋)=1.59 𝑏𝑖𝑡𝑠/𝑠𝑦𝑚𝑏𝑜𝑙𝑒
5/calcule l’entropie conditionnelle H(Y/X):
𝐻(𝑌/𝑋)=−𝑃(𝑋,𝑌)𝑙𝑜𝑔2(𝑝(𝑌/𝑋))
𝐻(𝑌/𝑋)=− 0.45𝑙𝑜𝑔2(0.9)+0.05𝑙𝑜𝑔2(0.1)+0.1𝑙𝑜𝑔2(0.2)+0.4𝑙𝑜𝑔2(0.8)[ ]
𝐻(𝑌/𝑋)=0. 59 𝑏𝑖𝑡𝑠/𝑠𝑦𝑚𝑏𝑜𝑙𝑒
6/calcule l’information mutulle I(x;Y):
𝐼(𝑋;𝑌)=𝐻(𝑌)𝐻(𝑌/𝑋)
𝐼(𝑋;𝑌)=0.990.59
𝐼(𝑋; 𝑌)=0.4 𝑏𝑖𝑡𝑠/𝑠𝑦𝑚𝑏𝑜𝑙𝑒
2-implémentation sur matlab:
1/
clc; % Efface la fenêtre de commande
clear all; % Supprime toutes les variables de l'espace de travail
close all; % Ferme toutes les fenêtres de figures ouvertes
p=[0.3 0.25 0.2 0.12 0.08 0.05]; % Définit un vecteur de probabilités
discrètes
disp('P(X)='); % Affiche une chaîne de caractères
disp(p); % Affiche le vecteur de probabilités p
i=length(p); % Définit la longueur du vecteur p et la stocke dans la
variable i
I=(-log2(p)); % Calcule le contenu informatif de chaque symbole du vecteur
p
disp('Contenu informatif de l''entrée:'); % Affiche une chaîne de
caractères
disp('I(X)='); % Affiche une chaîne de caractères
disp(I); % Affiche le contenu informatif de chaque symbole du vecteur p
sum=0;% Initialise la variable sum à zéro
for n=1:i% Pour chaque élément dans le vecteur p
HX=sum+(p(n)*log2(1/p(n))); % Calcule l'entropie de l'entrée
sum=HX; % Stocke l'entropie dans la variable sum pour la sommation des
éléments suivants
end
disp('entropie de l''entrée:'); % Affiche une chaîne de caractères
disp(HX); % Affiche l'entropie de l'entrée
PYbyPX=[0.9 0.1;0.2 0.8]; % Définit une matrice de transition pour une
source binaire
px=[0.5 0.5]; % Définit la distribution de probabilité marginale de la
source binaire
py=px*PYbyPX; % Calcule la distribution de probabilité marginale de la
sortie
disp('la probabilite de sortie:'); % Affiche une chaîne de caractères
disp('p(y)='); % Affiche une chaîne de caractères
disp(py); % Affiche la distribution de probabilité marginale de la sortie
sum=0;% Initialise la variable sum à zéro
for n=1:length(py) % Pour chaque élément dans le vecteur py
hy=sum+(py(n)*log2(1/py(n))); % Calcule l'entropie de la sortie
sum=hy; % Stocke l'entropie dans la variable sum pour la sommation des
éléments suivants
end
disp('entropie de sortie:'); % Affiche une chaîne de caractères
disp(hy); % Affiche l'entropie de la sortie
pxy=diag(px)*PYbyPX; % Calcule la distribution de probabilité conjointe de
l'entrée et de la sortie
disp('la probabilitie conjointe:'); % Affiche une chaîne de caractères
disp('p(x,y)='); % Affiche une chaîne de caractères
disp(pxy); % Affiche la distribution de probabilité conjointe de l'entrée
et de la sortie
sum=0;% Initialise la variable sum à zéro
for n=1:length(pxy)% Pour chaque élément dans le vecteur pxy
for m=1:length(PYbyPX)% Pour chaque élément dans le vecteur PYbyPX
hyx=sum+(pxy(n,m)*log2(1/PYbyPX(n,m)));% Calcule entropie
conditionelle
sum=hyx;
end
end
disp('entropie conditionelle:');
disp('h(y/x)=');% Affiche h(y/x)
disp(hyx);% Affiche valeur entropie conditionelle
ixy=hy-hyx;% Calcule 'linformation mutuelle
disp('linformation mutuelle:');% Affiche linformation mutuelle
disp(ixy);%affiche valeur linformation mutuelle
les resultats
P(X)=
0.3000 0.2500 0.2000 0.1200 0.0800 0.0500
Contenu informatif de l'entrée:
I(X)=
1.7370 2.0000 2.3219 3.0589 3.6439 4.3219
entropie de l'entree:
2.3601
la probabilite de sortie:
p(y)=
0.5500 0.4500
entropie de sortie:
0.9928
la probabilitie conjointe:
p(x,y)=
0.4500 0.0500
0.1000 0.4000
entropie conditionelle:
h(y/x)=
0.5955
linformation mutuelle:
0.3973
Les résultats montrent que l'entrée a une entropie de 2.36 bits, ce qui est inférieur au contenu
informatif de chaque symbole du vecteur d'entrée. Cela indique que certaines entrées sont plus
probables que d'autres, ce qui réduit l'incertitude associée à l'entrée. La sortie a une entropie de
0.99 bits, ce qui est inférieur à l'entropie de l'entrée, ce qui signifie que l'information a été
1 / 13 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !