바이트 페어 인코딩
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
바이트 페어 인코딩(Byte Pair Encoding, BPE)은 텍스트 압축 알고리즘의 일종으로, 텍스트에서 가장 자주 나타나는 연속된 문자 시퀀스를 다른 바이트로 반복적으로 대체하여 데이터를 압축한다. 압축 해제는 이 과정을 역으로 수행하여 원래 데이터를 복원한다. 텍스트 압축, 자연어 처리(NLP) 등 다양한 분야에 응용된다.
더 읽어볼만한 페이지
- 데이터 압축 - 해상도
해상도는 1인치당 픽셀 또는 점의 수를 나타내는 지표로, 이미지의 선명도를 결정하며 DPI와 PPI 단위를 사용하고, 높을수록 섬세한 표현이 가능하다. - 데이터 압축 - MP3
MP3는 MPEG 표준의 오디오 압축 형식으로, 인간의 청각 심리를 이용하여 음질 저하를 최소화하며 데이터를 압축하고, 1991년에 발명되어 2017년 특허 만료로 퍼블릭 도메인이 되었다. - 무손실 압축 알고리즘 - VP9
VP9는 구글이 개발한 오픈 소스 비디오 코덱으로, VP8보다 압축 효율을 높이고 HEVC보다 나은 성능을 목표로 개발되었으며, WebM 형식으로 사용되고 주요 웹 브라우저와 넷플릭스, 유튜브 등에서 지원했으나 AV1의 등장으로 개발이 중단되었다. - 무손실 압축 알고리즘 - FLAC
FLAC은 조시 콜슨이 개발한 무손실 오디오 코덱으로, 원본 음질을 유지하면서 파일 크기를 줄이기 위해 오디오 데이터를 압축하며, 4~32비트 샘플 크기, 최대 8 채널을 지원하고, 미국 국립 문서 기록 관리청에서 디지털 오디오에 선호되는 형식으로 지정되었다.
| 바이트 페어 인코딩 |
|---|
2. 알고리즘
원래 알고리즘은 대상 텍스트에서 가장 흔하게 나타나는 연속된 문자 시퀀스를 사용하지 않는 '자리 표시자' 바이트로 반복적으로 대체하는 방식으로 작동한다. 반복은 더 이상 시퀀스를 찾을 수 없을 때 종료되며, 대상 텍스트는 효과적으로 압축된다. 압축 해제는 이 과정을 반대로 수행하여 알려진 자리 표시자 용어를 해당 지정된 시퀀스에 대해 쿼리하고 조회 테이블을 사용하여 수행할 수 있다. 원래 논문에서 이 조회 테이블은 압축된 텍스트와 함께 인코딩되어 저장된다.
출현 빈도가 높은 2바이트를 사용하지 않는 1바이트로 바꿔가며 압축한다.
| ABCDCDABCDCDE | 출현 빈도가 높은 CD의 페어를 사용하지 않는 Z로, 다음으로 빈도가 높은 AB의 페어를 Y로 바꾼다 |
| YZZYZZE | 출현 빈도가 높은 YZ(ZZ도 상관없음)의 페어를 사용하지 않는 X로 바꾼다 |
| XZXZE | 출현 빈도가 높은 XZ의 페어를 사용하지 않는 W로 바꾼다 |
| WWE | WW의 페어는 하나밖에 나오지 않으므로 여기서 끝 |
실제로는, 여기에 부호 대응표를 첨부하여 파일로 출력한다.
2. 1. 기본 원리
원래 알고리즘은 대상 텍스트에서 가장 흔하게 나타나는 연속된 문자 시퀀스를 사용하지 않는 '자리 표시자' 바이트로 반복적으로 대체하는 방식으로 작동한다. 반복은 더 이상 시퀀스를 찾을 수 없을 때 종료되며, 대상 텍스트는 효과적으로 압축된다. 압축 해제는 이 과정을 반대로 수행하여 알려진 자리 표시자 용어를 해당 지정된 시퀀스에 대해 쿼리하고 조회 테이블을 사용하여 수행할 수 있다. 원래 논문에서 이 조회 테이블은 압축된 텍스트와 함께 인코딩되어 저장된다.출현 빈도가 높은 2바이트를 사용하지 않는 1바이트로 바꿔가며 압축한다.
| ABCDCDABCDCDE | 출현 빈도가 높은 CD의 페어를 사용하지 않는 Z로, 다음으로 빈도가 높은 AB의 페어를 Y로 바꾼다 |
| YZZYZZE | 출현 빈도가 높은 YZ(ZZ도 상관없음)의 페어를 사용하지 않는 X로 바꾼다 |
| XZXZE | 출현 빈도가 높은 XZ의 페어를 사용하지 않는 W로 바꾼다 |
| WWE | WW의 페어는 하나밖에 나오지 않으므로 여기서 끝 |
실제로는, 여기에 부호 대응표를 첨부하여 파일로 출력한다.
2. 1. 1. 예시
데이터를 인코딩할 데이터가 다음과 같다고 가정한다.aaabdaaabac
바이트 쌍 "aa"가 가장 자주 발생하므로, 데이터에 사용되지 않은 바이트, 예를 들어 "Z"로 대체된다. 이제 다음과 같은 데이터와 대체 테이블이 있다.
ZabdZabac
Z=aa
그 다음, 바이트 쌍 "ab"로 이 과정을 반복하여 "Y"로 대체한다.
ZYdZYac
Y=ab
Z=aa
남아있는 유일한 리터럴 바이트 쌍은 한 번만 나타나며, 여기서 인코딩을 중단할 수 있다. 또는 재귀 바이트 쌍 인코딩으로 "ZY"를 "X"로 대체하여 과정을 계속할 수 있다.
XdXac
X=ZY
Y=ab
Z=aa
이 데이터는 바이트 쌍 인코딩으로 더 이상 압축할 수 없다. 두 번 이상 나타나는 바이트 쌍이 없기 때문이다.
데이터를 압축 해제하려면 단순히 역순으로 대체를 수행하면 된다.
2. 2. 압축 해제
3. 응용 분야
3. 1. 텍스트 압축
3. 2. 자연어 처리 (NLP)
3. 2. 1. 한국어 NLP에서의 활용
(요약(summary)과 원본 소스(source)가 비어있으므로, 내용을 생성할 수 없습니다.)3. 2. 2. 기계 번역
요약(summary)이 제공되지 않았습니다. 요약 내용을 제공해주시면 위키텍스트 작성을 진행하겠습니다.4. 장점 및 단점
4. 1. 장점
4. 2. 단점
5. 기타 데이터 압축 알고리즘
5. 1. 무손실 압축 알고리즘
5. 2. 손실 압축 알고리즘
6. 같이 보기
참조
[1]
간행물
A New Algorithm for Data Compression
http://www.pennelynn[...]
1994
[2]
웹사이트
A New Algorithm for Data Compression
http://www.drdobbs.c[...]
1994-02-01
[3]
서적
Managing Gigabytes
Van Nostrand Reinhold
1994
[4]
웹사이트
Byte Pair Encoding
http://www.csse.mona[...]
[5]
논문
Neural Machine Translation of Rare Words with Subword Units
2015-08-31
[6]
논문
Language Models are Few-Shot Learners
2020-06-04
[7]
웹사이트
google/sentencepiece
https://github.com/g[...]
Google
2021-03-02
[8]
서적
Foundation Models for Natural Language Processing
2022
[9]
간행물
Sign Language Translation with Gloss Pair Encoding
https://aclanthology[...]
2024-05-25
[10]
간행물
A New Algorithm for Data Compression
http://www.pennelynn[...]
1994
[11]
웹인용
A New Algorithm for Data Compression
http://www.drdobbs.c[...]
1994-02-01
[12]
서적
Managing Gigabytes
https://archive.org/[...]
Van Nostrand Reinhold
1994
[13]
웹인용
Byte Pair Encoding
http://www.csse.mona[...]
[14]
논문
Neural Machine Translation of Rare Words with Subword Units
2015-08-31
[15]
논문
Language Models are Few-Shot Learners
2020-06-04
[16]
웹인용
google/sentencepiece
https://github.com/g[...]
Google
2021-03-02
[17]
서적
Foundation Models for Natural Language Processing
2022
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com