Corpus de Calgary

referència per a provar compressors de dades

El Corpus de Calgary és una col·lecció de fitxers de text i dades binàries, que s'utilitzen habitualment per comparar algorismes de compressió de dades. Va ser creat per Ian Witten, Tim Bell i John Cleary de la Universitat de Calgary l'any 1987 i es va utilitzar habitualment a la dècada de 1990. El 1997 va ser substituït pel corpus de Canterbury,[1] a causa de preocupacions sobre la representativitat del corpus de Calgary, [2] però encara existeix per a la comparació i encara és útil per al seu propòsit original.

Continguts

modifica

En la seva forma més utilitzada, el corpus consta de 14 fitxers amb un total de 3.141.622 bytes de la següent manera:

Mida (bytes) Nom de l'arxiu Descripció
111.261 BIB Text ASCII en format UNIX "refer" - 725 referències bibliogràfiques.
768.771 LLIBRE 1 Text ASCII sense format – Thomas Hardy: Far from the Madding Crowd.
610.856 LLIBRE 2 Text ASCII en format UNIX " troff " – Witten: Principles of Computer Speech.
102.400 GEO Nombres de 32 bits en format de coma flotant d'IBM: dades sísmiques.
377.109 NOTÍCIES Text ASCII: fitxer per lots USENET sobre diversos temes.
21.504 OBJ1 Programa executable VAX : compilació de PROGP.
246.814 OBJ2 Programa executable de Macintosh - "Knowledge Support System" de BR Gaines.
53.161 PAPER1 Format UNIX "troff": Witten, Neal, Cleary: Arithmetic Coding for Data Compression.
82.199 PAPER 2 Format UNIX "troff" – Witten: Computer (in)security
513.216 PIC Imatge de mapa de bits de 1728 x 2376 (primer MSB): text en francès i diagrames de línies.
39.611 PROGC Codi font en C – UNIX compress v4.0.
71.646 PROGL Codi font a Lisp: programari del sistema.
49.379 PROGP Codi font en Pascal: programa per avaluar la compressió PPM.
93.695 TRANS ASCII i caràcters de control: transcripció d'una sessió de terminal.

També hi ha una versió de 18 fitxers menys utilitzada que inclou 4 fitxers de text addicionals. Els responsables del lloc web del corpus de Canterbury assenyalen que "no afegeixen a l'avaluació".[3]

Punts de referència

modifica

El corpus de Calgary va ser un índex de referència utilitzat habitualment per a la compressió de dades a la dècada de 1990. Els resultats s'enumeren amb més freqüència en bits per byte (bpb) per a cada fitxer i després es resumien mitjançant la mitjana. Més recentment, ha estat habitual sumar les mides comprimides de tots els fitxers. Això s'anomena mitjana ponderada perquè equival a ponderar les relacions de compressió per les mides dels fitxers originals. L'índex de referència UCLC [4] de Johan de Bock utilitza aquest mètode.

Per a alguns compressors de dades, és possible comprimir el corpus combinant les entrades en un arxiu no comprimit (com un fitxer tar ) abans de la compressió a causa de la informació mútua entre els fitxers de text. En altres casos, la compressió és pitjor perquè el compressor gestiona malament les estadístiques no uniformes. Aquest mètode es va utilitzar en un índex de referència al llibre en línia Data Compression Explained de Matt Mahoney.[5]

La taula següent mostra les mides comprimides del corpus de 14 fitxers de Calgary utilitzant els dos mètodes per a alguns programes de compressió populars. Per obtenir una llista més completa, consulteu els punts de referència anteriors.

Compressor Opcions Com a 14 fitxers separats Com a fitxer tar
Sense comprimir 3.141.622 3.152.896
compress 1.272.772 1.319.521
Info-ZIP 2.32 -9 1.020.781 1.023.042
gzip 1.3.5 -9 1.017.624 1.022.810
bzip2 1.0.3 -9 828.347 860.097
7-zip 9.12b 848.687 824.573
bzip3 1.1.8 765.939 779.795
ppmd Jr1 -m256 -o16 740.737 754.243
ppmonstr J 675.485 669.497
ZPAQ v7.15 - method 5 659.709 659.853

Repte de compressió

modifica

El "Calgary corpus Compression and SHA-1 crack Challenge" [6] és un concurs iniciat per Leonid A. Broukhis el 21 de maig de 1996 per comprimir la versió de 14 fitxers del corpus de Calgary. El concurs ofereix un petit premi que ha anat variant al llarg del temps. Actualment, el premi és d'1$ per cada millora de 111 bytes respecte al resultat anterior.

Segons les bases del concurs, una entrada ha de constar tant de les dades comprimides com del programa de descompressió empaquetat en un dels diversos formats d'arxiu estàndard. Els límits de temps i memòria i de llenguatges de descompressió s'han relaxat amb el temps. Actualment el programa s'ha d'executar en 24 hores en una màquina de 2000 MIPS amb Windows o Linux i utilitzar menys de 800 MB de memòria. Més tard es va afegir un repte SHA-1. Permet al programa de descompressió retornar fitxers diferents del corpus de Calgary sempre que tinguin els mateixos valors que els fitxers originals. Fins ara, aquesta part del repte no s'ha assolit.

La primera entrada rebuda va ser de 759.881 bytes el setembre de 1997 per Malcolm Taylor, autor de RK i WinRK. L'entrada més recent va ser de 580.170 bytes d' Alexander Ratushnyak el 2 de juliol de 2010. L'entrada consta d'un fitxer comprimit de 572.465 bytes i un programa de descompressió escrit en C++ i comprimit a 7700 bytes com a PPMd var.

Mida (bytes) Mes/Any Autor
759.881 09/1997 Malcolm Taylor
692.154 08/2001 Maxim Smirnov
680.558 09/2001 Maxim Smirnov
653.720 11/2002 Serge Voskoboynikov
645.667 01/2004 Matt Mahoney
637.116 04/2004 Alexander Ratushnyak
608.980 12/2004 Alexander Ratushnyak
603.416 04/2005 Przemysław Skibiński
596.314 10/2005 Alexander Ratushnyak
593.620 12/2005 Alexander Ratushnyak
589.863 05/2006 Alexander Ratushnyak
580.170 07/2010 Alexander Ratushnyak

Referències

modifica
  1. Ian H. Witten. Managing Gigabytes: Compressing and Indexing Documents and Images. Morgan Kaufmann, 1999, p. 92. ISBN 9781558605701. 
  2. Salomon, David. Data Compression: The Complete Reference. Fourth. Springer, 2007, p. 12. ISBN 9781846286032. 
  3. «The Canterbury Corpus». corpus.canterbury.ac.nz.
  4. «UC Learning Center», 06-01-2023.
  5. «Data Compression Explained». mattmahoney.net.
  6. «The Compression/SHA-1 Challenge». mailcom.com.

Enllaços externs

modifica