Weissman poäng
Weissman -poängen är ett prestandamått för förlustfria komprimeringsapplikationer . Den utvecklades av Tsachy Weissman , en professor vid Stanford University , och Vinith Misra, en doktorand, på begäran av producenter för HBO:s tv-serie Silicon Valley , ett tv-program om en fiktiv teknisk startup som arbetar med en datakomprimeringsalgoritm . Den jämför både erforderlig tid och kompressionsförhållande för uppmätta applikationer, med de av en de facto- standard enligt datatypen .
Formeln är följande; där r är kompressionsförhållandet , T är tiden som krävs för att komprimera, de överstrukna är samma mått för en standardkompressor och alfa är en skalningskonstant.
Weissman-poängen har använts av Daniel Reiter Horn och Mehant Baid från Dropbox för att förklara verklighetens arbete med förlustfri komprimering. Enligt författarna "gynnar det kompressionshastighet över förhållandet i de flesta fall."
Exempel
Det här exemplet visar poängen för data från Hutterpriset , med paq8f som standard och 1 som skalningskonstant.
Ansökan | Kompressionsförhållande | Kompressionstid [min] | Weissman poäng |
---|---|---|---|
paq8f | 5,467600 | 300 | 1 000 000 |
raq8g | 5,514990 | 420 | 0,720477 |
paq8hkcc | 5,682593 | 300 | 1,039321 |
paq8hp1 | 5,692566 | 300 | 1,041145 |
paq8hp2 | 5,750279 | 300 | 1,051701 |
paq8hp3 | 5,800033 | 300 | 1,060801 |
paq8hp4 | 5,868829 | 300 | 1,073826 |
paq8hp5 | 5,917719 | 300 | 1,082325 |
paq8hp6 | 5,976643 | 300 | 1,093102 |
paq8hp12 | 6,104276 | 540 | 0,620247 |
dekomp.8 | 6,261574 | 540 | 0,63623 |
dekomp.8 | 6,276295 | 540 | 0,637726 |
Begränsningar
Även om värdet är relativt till de standarder som det jämförs mot, ändrar enheten som används för att mäta tiderna poängen (se exempel 1 och 2). Detta är en konsekvens av kravet att argumentet för den logaritmiska funktionen måste vara dimensionslöst . Multiplikatorn kan inte heller ha ett numeriskt värde på 1 eller mindre, eftersom logaritmen för 1 är 0 (exempel 3 och 4), och logaritmen för något värde mindre än 1 är negativ (exempel 5 och 6); som skulle resultera i värden 0 (även med ändringar), odefinierat eller negativt (även om det är bättre än positivt).
Exempel
# | Standard kompressor | Poängsatt kompressor | Weissman poäng | Observationer | ||||
---|---|---|---|---|---|---|---|---|
Kompressionsförhållande | Kompressionstid | Logg (komprimeringstid) | Kompressionsförhållande | Kompressionstid | Logg (komprimeringstid) | |||
1 | 2.1 | 2 min | 0,30103 | 3.4 | 3 min | 0,477121 | 1×(3,4/2,1)×( 0,30103 / 0,477121 )= 1,021506 | Ändring i enhet eller skala, ändrar resultatet. |
2 | 2.1 | 120 s | 2,079181 | 3.4 | 180 s | 2,255273 | 1×(3,4/2,1)×( 2,079181 / 2,255273 )= 1,492632 | |
3 | 2.2 | 1 min | 0 | 3.3 | 1,5 min | 0,176091 | 0 1×(3,3/2,2)×( /0,176091)= 0 | Om tiden är 1 är dess log 0; då kan poängen vara 0 eller oändligt . |
4 | 2.2 | 0,667 min | −0,176091 | 3.3 | 1 min | 0 | 0 1×(3,3/2,2)×(−0,176091/ )= oändligt | |
5 | 1.6 | 0,5 h | −0,30103 | 2.9 | 1,1 h | 0,041393 | 1×(2,9/1,6)×( −0,30103 /0,041393) = −13,18138 | Om tiden är mindre än 1 är dess log negativ; då kan poängen vara negativ. |
6 | 1.6 | 1,1 h | 0,041393 | 1.6 | 0,9 h | −0,045757 | 1×(1,6/1,6)×(0,041393/ −0,045757 )= −0,904627 |