캘거리 코퍼스
Calgary corpus캘거리 코퍼스는 데이터 압축 알고리즘을 비교하는 데 일반적으로 사용되는 텍스트와 이진 데이터 파일의 모음입니다. 1987년 캘거리 대학의 이언 위튼, 팀 벨, 존 클리어리에 의해 만들어졌으며 1990년대에 흔히 사용되었다. 1997년에는 캘거리 말뭉치가 얼마나 대표성이 있는지에 대한 우려에 근거하여 [1]캔터베리 말뭉치로 대체되었지만,[2] 캘거리 말뭉치는 여전히 비교를 위해 존재하며 원래 의도한 목적에 여전히 유용하다.
내용물
가장 일반적으로 사용되는 형태에서 말뭉치는 다음과 같이 총 3,141,622바이트의 14개의 파일로 구성된다.
| 크기(바이트) | 파일명 | 설명 |
|---|---|---|
| 111,261 | 비브 | UNIX "참조" 형식의 ASCII 텍스트 – 725개의 참고 문헌 참조. |
| 768,771 | BOOK1 | 정형화되지 않은 ASCII 텍스트 – Thomas Hardy: Madding Crowd에서 멀리 떨어져 있음. |
| 610,856 | BOOK2 | UNIX "troff" 형식의 ASCII 텍스트 – Witten: 컴퓨터 스피치의 원리 |
| 102,400 | 지오 | IBM 부동 소수점 형식의 32비트 번호 – 지진 데이터. |
| 377,109 | 뉴스 | ASCII 텍스트 – 다양한 주제에 대한 USENET 배치 파일. |
| 21,504 | OBJ1 | VAX 실행 프로그램 – PROGP의 컴파일. |
| 246,814 | OBJ2 | Macintosh 실행 프로그램 – "지식 지원 시스템". |
| 53,161 | 용지1 | UNIX "troff" 형식 – Witten, Neal, Cleary: 데이터 압축을 위한 산술 코딩. |
| 82,199 | 용지2 | UNIX "troff" 형식 – Witten: 컴퓨터 보안. |
| 513,216 | PIC | 1728 x 2376 비트맵 이미지(MSB 우선): 프랑스어 및 선 다이어그램의 텍스트. |
| 39,611 | PROGC | C의 소스 코드 – UNIX compress v4.0. |
| 71,646 | PROGL | Lisp의 소스 코드 – 시스템 소프트웨어 |
| 49,379 | PROGP | Pascal의 소스 코드 – PPM 압축을 평가하기 위한 프로그램. |
| 93,695 | 트랜스 | ASCII 및 제어 문자 – 터미널 세션의 대본 |
또한 UNIX "troff" 형식의 4개의 추가 텍스트 파일, PASTER3에서 PASTER6까지를 포함하는 덜 흔하게 사용되는 18개의 파일 버전도 있다.
벤치마크
캘거리 코퍼스는 1990년대에 흔히 사용되는 데이터 압축 벤치마크였다. 결과는 가장 일반적으로 각 파일의 바이트당 비트(bpb)로 나열되었다가 평균으로 요약되었다. 최근에는 모든 파일의 압축 크기를 추가하는 것이 일반적이다. 이것은 압축비를 원래 파일 크기로 가중시키는 것과 같기 때문에 가중 평균이라고 불린다. 요한 드 보크의 UCLC 벤치마크는[3] 이 방법을 사용한다.
일부 데이터 압축기의 경우 텍스트 파일 간의 상호 정보 때문에 압축 전에 입력을 압축되지 않은 아카이브(예: tar 파일)로 결합하여 말뭉치를 더 작게 압축할 수 있다. 다른 경우에는 압축기가 균일하지 않은 통계를 잘 처리하지 못하기 때문에 압축이 더 심하다. 이 방법은 Matt Mahoney가 설명하는 온라인 책 데이터 압축의 벤치마크에서 사용되었다.[4]
아래 표는 인기 있는 압축 프로그램을 위해 두 가지 방법을 모두 사용하는 14 파일 캘거리 코퍼스의 압축 크기를 보여준다. 옵션을 사용할 경우 최상의 압축을 선택하십시오. 자세한 목록은 위의 벤치마크를 참조하십시오.
| 압축기 | 옵션들 | 14개의 별도 파일 | 타르 파일로 |
|---|---|---|---|
| 압축되지 않음 | 3,141,622 | 3,152,896 | |
| 압축하다 | 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 | |
| ppmd Jr1 | -m256 -o16 | 740,737 | 754,243 |
| 페이지몬스트 J | 675,485 | 669,497 | |
| ZPAQ v7.15 | -1998년 5월 | 659,709 | 659,853 |
압축 챌린지
'캘거리 코퍼스 압축과 SHA-1 균열 챌린지'[5]는 레오니드 A가 시작한 대회다. 1996년 5월 21일 브루키스는 캘거리 말뭉치의 14개 파일 버전을 압축했다. 그 경연대회는 시간이 지남에 따라 다양해진 작은 상금을 제공한다. 현재 상금은 이전 결과보다 개선된 111바이트당 1달러다.
콘테스트의 규칙에 따르면, 항목은 압축된 데이터와 압축 풀기 프로그램 둘 다로 구성되어야 하며, 몇 가지 표준 아카이브 형식 중 하나로 포장되어야 한다. 시간 및 메모리 제한, 아카이브 형식, 압축 해제 언어는 시간이 지남에 따라 완화되었다. 현재 이 프로그램은 윈도우나 리눅스 아래의 2000 MIPS 기계에서 24시간 이내에 실행되어야 하며 800MB 이하의 메모리를 사용해야 한다. 나중에 SHA-1 도전이 추가되었다. 그것은 압축 풀기 프로그램이 원본 파일과 동일한 값으로 해시하기만 하면 캘거리 말뭉치와 다른 파일을 출력할 수 있게 한다. 아직까지는 그 부분에 대한 도전이 이뤄지지 않았다.
RK와 WinRK의 저자인 말콤 테일러가 1997년 9월에 받은 첫 번째 출품작은 75만9881바이트였다. 가장 최근의 입력은 2010년 7월 2일 알렉산더 라투슈냐크가 쓴 580,170바이트였다. 입력은 572,465바이트 크기의 압축 파일과 C++로 작성되어 7700바이트로 압축된 PPMd var로 구성된다. 나는 보관하고, 압축 파일 이름과 크기를 위해 5바이트를 더한다. 역사는 다음과 같다.
| 크기(바이트) | 월/년 | 작가 |
|---|---|---|
| 759,881 | 09/1997 | 말콤 테일러 |
| 692,154 | 08/2001 | 막심 스미르노프 |
| 680,558 | 09/2001 | 막심 스미르노프 |
| 653,720 | 11/2002 | 세르히 보스코보이니코프 |
| 645,667 | 01/2004 | 맷 마호니 |
| 637,116 | 04/2004 | 알렉산더 라투슈냐크 |
| 608,980 | 12/2004 | 알렉산더 라투슈냐크 |
| 603,416 | 04/2005 | 프르제미스와프 스키비슈스키 |
| 596,314 | 10/2005 | 알렉산더 라투슈냐크 |
| 593,620 | 12/2005 | 알렉산더 라투슈냐크 |
| 589,863 | 05/2006 | 알렉산더 라투슈냐크 |
| 580,170 | 07/2010 | 알렉산더 라투슈냐크 |
참고 항목
참조
- ^ Ian H. Witten; Alistair Moffat; Timothy C. Bell (1999). Managing Gigabytes: Compressing and Indexing Documents and Images. Morgan Kaufmann. p. 92. ISBN 9781558605701.
- ^ Salomon, David (2007). Data Compression: The Complete Reference (Fourth ed.). Springer. p. 12. ISBN 9781846286032.
- ^ http://uclc.info/calgary_corpus_compression_test.htm
- ^ "Data Compression Explained". mattmahoney.net.
- ^ "The Compression/SHA-1 Challenge". mailcom.com.