Calgary Corpus

Kokeneet kirjoittajat eivät ole vielä tarkistaneet sivun nykyistä versiota, ja se voi poiketa merkittävästi 20. kesäkuuta 2015 tarkistetusta versiosta . tarkastukset vaativat 8 muokkausta .

Calgary-korpus on joukko teksti- ja binaaritiedostoja, joita käytetään usein tietojen pakkausalgoritmien vakiotestissä ja niiden suorituskyvyn vertailussa. Sarja koottiin Calgaryn yliopistossa vuonna 1987 ja sitä käytettiin laajalti 1990-luvulla. Vuonna 1997 ehdotettiin uutta testisarjaa , Canterbury-korpusta [1] , jossa otettiin huomioon Calgaryn korpuksen edustavuuteen liittyvät huolenaiheet [2] .

Joukkokunnan kokoonpano

Yleisimmin käytetyssä muodossaan Calgary-korpus koostuu 14 tiedostosta, joiden yhteismäärä on 3 141 622 tavua:

Koko (tavu) Tiedoston nimi Kuvaus
111.261 RUOKALAPPU ASCII-teksti UNIX " viite " -muodossa ja 725 bibliografista kohtaa.
768,771 KIRJA 1 Muotoilematon ASCII-teksti Thomas Hardyn Far from the Madding Crowd -romaanista .
610.856 KIRJA 2 ASCII-teksti " troff "-muodossa - Ian H. Witten: Principles of Computer Speech.
102.400 GEO Seisminen data 32-bittisinä liukulukuina IBM-muodossa .
377.109 UUTISET ASCII-teksti – joukko viestejä USENET -ryhmistä .
21.504 OBJ1 VAX : lle suoritettava tiedosto, joka on saatu kääntämällä PROGP.
246.814 OBJ2 Suoritettava tiedosto Macintoshille, "Knowledge Support System" -ohjelma.
53.161 PAPERI1 Artikkeli "troff"-muodossa - Witten, Neal, Cleary: Arithmetic Coding for Data Compression.
82,199 PAPERI2 Artikkeli "troff"-muodossa - Witten: Computer (in)security.
513.216 KUVA 1728 x 2376 kuva ranskankielisellä tekstillä ja viivakaavioilla.
39.611 PROGC C-lähdekoodi on UNIX-pakkausohjelma v4.0.
71,646 PROGL Lisp-lähdekoodi on järjestelmäsovellus.
49,379 PROGP Pascal-lähdekoodi on ohjelma, joka arvioi PPM-pakkauksen.
93,695 TRANS ASCII-teksti- ja estosekvenssit - pääteistunnon tietue.

Harvemmin käytetty on 18 tiedoston sarja, joka sisältää lisäksi 4 tekstitiedostoa "troff"-muodossa - PAPER3-PAPER6.

Testaus

Calgaryn tapausta käytettiin usein vertailemaan pakkaustehokkuutta 1990-luvulla. Tulokset ilmoitettiin usein bitteinä tavua kohden (keskimääräinen bittien lukumäärä pakatussa tiedostossa, joka vaaditaan 1 tavun koodaamiseen lähdetiedostosta) jokaiselle joukon tiedostolle, minkä jälkeen niistä laskettiin keskiarvo. Sitten useammin he alkoivat ilmoittaa kaikkien pakattujen tiedostojen kokonaiskokoa.

Jotkut arkistaattorit mahdollistivat tehokkaamman pakkaamisen käsiteltäessä koko kehoa kerralla (esimerkiksi laittamalla ne pakkaamattomaan tervasäiliöön ) keskinäistä tietoa käyttämällä . Muut arkistaattorit päinvastoin pakkaavat tämän vaihtoehdon huonommin, koska kompressori reagoi hitaasti tietojen ominaisuuksien muutoksiin. Matt Mahoney käytti koko korpuksen samanaikaista pakkausta kirjassaan Data Compression Explained [3] .

Taulukko näyttää pakatun kotelon mitat useille suosituille arkistointilaitteille.

Arkistointi Vaihtoehdot Pakkaa 14 erillistä tiedostoa Konsolidoitu tar-arkisto
Ilman pakkausta 3,141,622 3,152,896
puristaa 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
7zip 9.12b 848,687 824.573
ppmd Jr1 -m256 -o16 740,737 754.243
ppmonstr J 675.485 669.497

Pakkauskilpailut

21. toukokuuta 1996 Leonid A. Broukhis aloitti " Calgary corpus Compression and SHA-1 crack Challengen " [4] , joka sisälsi Calgaryn rungon puristuskilpailun pienillä rahapalkinnoilla. Vuoden 2010 jälkeen palkinto on 1 dollari jokaisesta pakatun tiedoston 111 tavun lisävähennyksestä.

Kilpailun ehtojen mukaan ei vain korpuksen syötetiedostot tulee pakata, vaan myös niiden purkuohjelma. Tätä varten runkotiedostot pakataan ensin, sitten tuloksena olevat tiedostot ja purkaja pakataan jollakin laajalti käytetyistä arkistoista. Pakkausajan ja käytetyn muistin rajoitukset muuttuvat vähitellen, ja vuoden 2010 jälkeen on hyväksyttävää työskennellä 24 tuntia tietokoneella, jonka suorituskyky on 2000 MIPS ( Windows tai Linux OS ) ja käyttää jopa 800 Mt RAM-muistia. Myöhemmin lisättiin kilpailu SHA-1 :n kanssa: purkaja ei voi luoda korpuksesta alkuperäistä tiedostoa, vaan jonkin muun, mutta jolla on sama kryptografinen hajasumma SHA-1-algoritmin mukaan (siis se on suoritettava tietyn tiedoston törmäyshakuhyökkäys ).

Malcolm Taylor, RK- ja WinRK-arkistijoiden kirjoittaja, voitti ensimmäisen palkinnon pakkaamalla joukon 759881 tavuun (syyskuu 1997). Viimeisen palkinnon myönsi 2. heinäkuuta 2010 Alexander Ratushnyak pakatessaan joukon 572465 tavuun ja käyttämällä C++-dekompressoria, joka oli pakattu 7700 tavuun käyttämällä "PPMd var. I" -ohjelmaa. Täydellinen lista kilpailun ennätyksistä:

Koko (tavu) Kuukausi ja vuosi Tekijä
759.881 09/1997 Malcolm Taylor
692.154 08/2001 Maksim Smirnov
680.558 09/2001 Maksim Smirnov
653.720 11/2002 Serge Voskoboynikov
645,667 01/2004 Matt Mahoney
637.116 04/2004 Aleksanteri Ratushnyak
608.980 12/2004 Aleksanteri Ratushnyak
603.416 04/2005 Przemysław Skibinski
596.314 10/2005 Aleksanteri Ratushnyak
593.620 12/2005 Aleksanteri Ratushnyak
589.863 05/2006 Aleksanteri Ratushnyak
580.170 07/2010 Aleksanteri Ratushnyak

Muistiinpanot

  1. Ian H. Witten, Alistair Moffat, Timothy C. Bell. Gigatavujen hallinta: Asiakirjojen ja  kuvien pakkaaminen ja indeksointi . - Morgan Kaufmann , 1999. - s. 92.
  2. Salomon, David. Tietojen pakkaus: Täydellinen viite  (uuspr.) . — Neljäs. - Springer, 2007. - S. 12. - ISBN 9781846286032 .
  3. Tietojen pakkaus selitetty
  4. Compression/SHA-1-haaste

Katso myös