Chapitre 133 minIntermédiaire
Applications informatiques
Par Josselyn C., prof de BTS SIO. Mis à jour le .
13.1 Fiabilite des systemes
Un systeme est compose de n composants identiques et independants. Chaque composant a une probabilite p de fonctionner.
Systeme en serie (tous les composants doivent fonctionner) : P(systeme fonctionne) = p^n
Exemple : 5 composants en serie, p = 0.99 chacun. P = 0.99^5 = 0.95099 environ 95.1%.
Systeme en parallele (il suffit qu'un composant fonctionne) : P(systeme fonctionne) = 1 - (1 - p)^n = 1 - q^n
Exemple : 3 composants en parallele, p = 0.90 chacun. P = 1 - (0.10)^3 = 1 - 0.001 = 0.999 soit 99.9%.
13.2 Taux d'erreur reseau
Sur un reseau, chaque paquet a une probabilite d'erreur de 0.001 (1 paquet sur 1000 est corrompu). On envoie n = 500 paquets. X = nombre de paquets corrompus. X ~ B(500, 0.001).
P(aucun paquet corrompu) = P(X = 0) = C(500,0) x 0.001^0 x 0.999^500 = 0.999^500
Calcul : ln(0.999^500) = 500 x ln(0.999) = 500 x (-0.001000...) = -0.5003 0.999^500 = e^(-0.5003) = 0.6063 environ.
Donc P(X = 0) = 0.606, soit environ 60.6% de chance qu'aucun paquet ne soit corrompu.
P(X >= 1) = 1 - P(X = 0) = 1 - 0.606 = 0.394, soit environ 39.4%.
13.3 Tests logiciels : probabilite de bug
Un programme contient 1000 lignes de code. Chaque ligne a independamment une probabilite de 0.002 de contenir un bug. X = nombre de bugs. X ~ B(1000, 0.002).
E(X) = 1000 x 0.002 = 2 bugs en moyenne.
P(X = 0) = 0.998^1000. ln(0.998^1000) = 1000 x ln(0.998) = 1000 x (-0.002002) = -2.002 P(X = 0) = e^(-2.002) = 0.1351 environ 13.5%.
Il y a seulement 13.5% de chances que le programme ne contienne aucun bug.
13.4 Detection de spam : Bayes naif
Le classificateur de Bayes naif utilise la formule de Bayes pour decider si un email est un spam.
Principe simplifie : on observe la presence/absence de certains mots (w1, w2, ..., wm). L'hypothese "naive" suppose l'independance des mots.
P(Spam | w1, w2, ..., wm) proportionnel a P(Spam) x P(w1|Spam) x P(w2|Spam) x ... x P(wm|Spam)
On compare cette valeur a :
P(Non-spam | w1, ..., wm) proportionnel a P(Non-spam) x P(w1|Non-spam) x ... x P(wm|Non-spam)
L'email est classe spam si le premier produit est superieur au second.
Exemple concret :
Un email contient les mots "offre" et "gratuit".
- P(Spam) = 0.3, P(Non-spam) = 0.7
- P("offre" | Spam) = 0.6, P("offre" | Non-spam) = 0.05
- P("gratuit" | Spam) = 0.8, P("gratuit" | Non-spam) = 0.02
Score spam = 0.3 x 0.6 x 0.8 = 0.144 Score non-spam = 0.7 x 0.05 x 0.02 = 0.0007
P(Spam | mots) = 0.144 / (0.144 + 0.0007) = 0.144 / 0.1447 = 0.9952
Probabilite de spam : 99.5%. L'email est classe spam.