BLT(Byte Latent Transformer): 토큰화 대신 바이트 데이터를 직접 처리하는 아키텍처에 대한 연구 (feat. MetaAI)

BLT 연구 소개

BLT(Byte Latent Transformer) 는 기존 토큰 기반 언어 모델(Large Language Model, LLM)의 주요 한계를 극복하기 위해 설계된 새로운 아키텍처입니다. 토큰화(tokenization) 과정 없이 바이트 데이터(Raw Byte Data)를 직접 처리하여 더 효율적이고 유연한 학습 및 추론이 가능하도록 합니다. 기존 LLM에서는 토큰화를 통해 텍스트를 정해진 단위로 나누고 이를 처리하는 방식이 보편적이었으나, 이 과정은 다국어 처리의 공정성, 입력 노이즈에 대한 민감성, 정형적 지식 부족 등의 문제를 야기했습니다. BLT는 이러한 문제를 해결하기 위해 등장했으며, 특히 대규모 모델 학습에서 뛰어난 확장성과 추론 효율성을 보여줍니다.

기존 LLM은 텍스트를 소위 서브워드(subword)나 토큰(token) 단위로 나눕니다. 이 과정에서 토크나이저(tokenizer)는 미리 정의된 어휘 사전(vocabulary)을 기반으로 작동하며, 이는 언어 모델이 특정 언어와 문맥에 최적화되도록 돕습니다. 하지만 이러한 접근법은 한국어와 같은 동아시아권 언어들(CJK, Chinese/Japanese/Korean)을 비롯한 다국어 데이터를 다룰 때 토크나이저의 어휘 사전의 크기가 기하급수적으로 늘어나거나 특정 언어가 비효율적으로 처리되는 문제를 발생시킵니다. 이에 비해, 바이트 단위로 데이터를 처리하면 고정된 어휘 사전이 필요하지 않으므로, 모든 언어와 형식(예: 코드, 이모지 등)을 균등하게 처리할 수 있습니다.

하지만 바이트 단위 처리는 시퀀스 길이가 증가하면서 계산 복잡도가 급격히 늘어난다는 점에서 기존 연구들은 대규모 모델 학습에서 이를 효율적으로 활용하기 어려웠습니다. 따라서 기존에는 주로 소규모 모델들에서는 효율적으로 동작했지만, 대규모 모델의 학습 시 연산 비용과 메모리 요구 사항 등이 매우 커지는 문제가 있었습니다. Meta AI에서 이전에 공개한 MegaByte와 같은 연구에서는 바이트 단위를 그룹화하여 효율성을 개선하려는 노력을 시도하였으며, BLT에서는 이를 더 개선하여 엔트로피 기반의 패치 설계와 같은 동적 할당 메커니즘을 도입하였습니다.

BLT 아키텍처 소개

BLT는 사전 정의된 어휘 사전(Vocab)을 사용하지 않고, 입력 데이터를 있는 그대로 처리합니다. 이를 위해 동적 크기의 패치로 나누는 동적 패칭(Dynamic Patching)과 입력의 단순성에 따른 엔트로피 기반의 처리(Entropy-Based Processing)을 도입하였으며, 다국어 처리 및 입력 노이즈에 대한 강건성(robustness), 정형 지식에 대한 이해를 향상시킵니다.

동적 패칭(Dynamic Patching) 은 입력 데이터를 고정 크기의 토큰으로 나누는 대신, 데이터 복잡성에 따라 동적 크기의 패치(Patch)로 나누고 이를 학습과 추론의 기본 단위로 사용하는 방식입니다. 이를 통해 단순한 데이터에는 적은 계산 자원을, 복잡한 데이터에는 더 많은 자원을 할당할 수 있습니다.

패치 생성 시에는 고정 크기로 패치를 생성하는 Stride 방식(아래 그림의 4-Byte로 생성하는 4-Strided), 공백 문자나 자연스러운 언어 단위에서 패치를 나누는 Whitespace 기반 방식(아래 그림의 Space), 입력 바이트의 엔트로피를 계산하여 패치 경계를 설정하는 Entropy 기반 방식 등을 시도하여 기존의 2바이트 문맥을 갖는 Byte-Level CNN(Convolutional Neural Network, 아래 그림의 CNN) 및 BPE(Byte Pair Encoding, 아래 그림의 BPE) 방식과 비교하였습니다.

엔트로피 기반 처리 (Entropy-Based Processing) 는 엔트로피(Entropy, 예측의 불확실성)를 계산해 복잡한 부분에서 더 작은 패치를 생성하며, 단순한 부분에서는 큰 패치를 생성하는 기법입니다. 이러한 접근법은 각 패치별 엔트로피에 따라 연산량을 동적으로 조절하여 모델이 각 입력에 적합한 자원을 배분하도록 돕습니다.

엔트로피를 사용하는 패치 생성 시에는 작은 바이트-수준의 자동-회귀 언어 모델(Small Byte-Level Auto-Regressive Language Model)을 학습하여 사용하며, 바이트 어휘(Byte Vocabulary) \nu 에 대한 LM 분포 p_e 에 따라 다음 바이트 엔트로피(Next Byte Entropies)를 계산합니다:

H(x_i) = \sum_{v \in \nu } p_e (x_i = v | \boldsymbol{x}_{<i}) \log p_e (x_i = v | \boldsymbol{x}_{<i})

이 때, 전역 엔트로피의 임계값을 초과하는 지점(H(x_t) > \theta_g)을 찾는 방식(아래 Entropy)과 패치 내에서 단조 감소하는 엔트로피(Monotonically Descreasing Entropy)를 깨는 지점(Breaking Point, H(x_t) - H(x_{t-1}) > \theta_r)을 식별하는 방식(아래 Entropy+Monotocity)으로 나누어 실험하였습니다:

고정 크기 방식은 효율적이지만 데이터의 복잡도를 잘 반영하지 못하는 문제가 있습니다. 이에 반해, 엔트로피 기반의 방식은 데이터의 복잡성을 고려하여 가장 효율적으로 패치를 생성합니다. 예를 들어 "Daenerys Targeryen is in Game of Thrones, a fantasy epic by George R.R. Martin." 과 같은 텍스트에 대해 각 바이트의 엔트로피 값을 계산한 결과를 살펴보겠습니다:

여기에서는 엔트로피가 일정한 임계값(Global Threshold \theta_g, 빨간 점선)을 넘어가면 새로운 패치가 생성(패치 단위: 세로 회색 선)됩니다. 이름("Daenerys", "George R.R.")과 같은 복잡한 데이터에서 엔트로피 값이 높아져 작은 패치가 생성되는 것을 볼 수 있습니다.

또한, BLT는 패치 및 모델 크기를 동시에 확장(Simultaneous Scaling of Patch and Model Size) 하는 방식으로 성능을 향상시킵니다. 이는 패치 크기를 키워 시퀀스 길이를 줄이는 동시에, 글로벌 트랜스포머의 크기를 늘리는 기법으로, 계산 효율성을 유지하면서도 모델 확장성을 보장하는 중요한 설계 요소입니다.

BLT 아키텍처 구조

BLT의 대략적인 전체적인 동작 과정은 다음과 같습니다:

  1. 입력 단계 (Input Stage):
  • 원시 바이트 데이터(예: 텍스트)를 입력으로 받습니다.
  • 로컬 인코더(Local Encoder)가 이를 바이트 임베딩과 n-그램 해싱을 통해 전처리합니다.
  • 동적 패칭 과정을 통해 입력 데이터를 패치 단위로 분할합니다.
  1. 글로벌 처리 단계 (Global Processing Stage):
  • 잠재 글로벌 트랜스포머(Latent Global Transformer)는 패치 간의 문맥 정보를 학습하며, 데이터를 심층적으로 이해합니다.
  • 이 과정에서 패치 크기와 글로벌 문맥 정보가 결합됩니다.
  1. 출력 단계 (Output Stage):
  • 로컬 디코더(Local Decoder)는 잠재 글로벌 트랜스포머의 출력을 받아 바이트 단위의 데이터로 복원합니다.
  • 최종적으로 텍스트, 코드, 번역 등의 형태로 결과물을 생성합니다.

각 단계별로 동작하는 세 가지 주요 모듈인 로컬 인코더(Local Encoder), 잠재 글로벌 트랜스포머(Latent Global Transformer), 로컬 디코더(Local Decoder)를 각각 살펴보겠습니다.

로컬 인코더(Local Encoder, \varepsilon)

로컬 인코더(Local Encoder) 는 입력 바이트를 패치(Patch Representation)으로 변환하는 경량 모듈입니다. 로컬 인코더는 바이트 데이터의 풍부한 특성을 보존하면서도, 글로벌 트랜스포머가 효율적으로 처리할 수 있도록 입력 크기를 줄이는 역할을 수행합니다.

로컬 인코더는 먼저 입력 바이트 데이터를 고차원 벡터 공간으로 매핑하는 바이트 임베딩(Byte Embedding) 단계에서 n-그램 해시(Hash n-gram) 임베딩을 사용하여 단순한 바이트 이상으로 컨텍스트 정보를 반영합니다. 예를 들어, 3~8개의 바이트로 구성된 n-그램을 해싱하여 추가적인 컨텍스트 정보를 통합합니다.

이후 로컬 트랜스포머는 작은 슬라이딩 윈도우(예: 512 바이트)를 사용하여 입력 바이트 간의 국소적 관계를 학습하고, 패치를 생성합니다. 패치 생성 시에는 바이트 데이터를 동적 크기의 패치로 그룹화합니다. 이 때, 엔트로피(예측의 불확실성)를 기반으로 패치 경계를 설정하며, 복잡한 데이터에는 작은 패치를, 단순한 데이터에는 큰 패치를 생성합니다.

잠재 글로벌 트랜스포머(Latent Global Transformer, G)

잠재 글로벌 트랜스포머(Latent Global Transformer) 는 BLT의 가장 핵심적인 역할을 하는 모듈로, 데이터의 전체적인 구조와 관계를 이해합니다. 이는 자기 회귀 트랜스포머 모델(Auto-Regressive Transformer Model)로, 생성된 패치 표현을 처리하여 패치들 간의 상호작용을 바탕으로 입력의 글로벌 문맥(Global Contex)을 학습합니다.

잠재 글로벌 트랜스포머는 현재 패치와 이전 패치들 간의 상호작용을 학습하기 위해 블록-인과적 어텐션 마스크(Block-Cusal Attention Mask)을 사용합니다. 이는 시퀀스 데이터의 시간 순서를 유지하며 연산 효율성을 높일 수 있습니다.

하지만 모든 패치를 처리하며 패치들 간의 상호작용을 학습하기 때문에 패치 수가 증가함에 따라 연산량이 기하급수적으로 증가하는 문제가 있습니다. 따라서 동적 패칭과 엔트로피 기반의 패치 경계 설정을 통해 연산 자원을 효율적으로 배분하는 것이 중요합니다. 즉, 입력 데이터 중 엔트로피가 낮은 부분에서는 큰 패치를 생성하고, 엔트로피가 높은 부분에서는 작은 패치를 생성함으로써 잠재 글로벌 트랜스포머가 자주 호출되는 것을 막는 방식으로 효율적으로 연산을 할 수 있습니다.

로컬 디코더(Local Decoder, D)

로컬 디코더(Local Decoder) 는 로컬 인코더(Local Encoder)와 유사한 경량 트랜스포머 기반의 모듈로, 잠재 글로벌 트랜스포머의 출력을 다시 원래 바이트로 변환하는 작업을 수행합니다. 잠재 글로벌 트랜스포머가 생성한 출력 패치를 바이트 단위로 복원하여 패치 내 정보를 바탕으로 각 바이트들을 예측합니다. 디코딩 과정에서는 크로스 어텐션(Cross-Attention)을 사용하여 출력 패치를 바이트 수준의 정보와 결합하는 방식으로 각 패치의 문맥 정보를 복원합니다. 또한, 로컬 트랜스포머를 통해 각 바이트를 처리하며, 이전 바이트의 정보를 고려하여 다음 바이트를 생성하는 방식으로 동작합니다.

이를 통해 로컬 디코더는 패치 기반 표현을 바이트 수준으로 정확히 되돌려 복원 과정에서 정보 손실을 최소화하며, 노이즈가 포함된 입력 데이터에서도 정확하고 강건한 출력을 생성할 수 있도록 설계되었습니다.

실험 결과

스케일링 실험 (Scaling Trends)

먼저 다양한 패칭 전략에서의 BLT(Byte-Latent Transformer) 모델과 BPE 토크나이저(Byte-Pair Encoding Tokenizer) 기반의 Llama 3를 비교해보았습니다. 아래는 The Llama 3 Herd of Models 연구에서 계산한 최적의 토큰들에 대해 1B에서 8B까지의 모델들을 학습 시의 BPB(Bits-Per-Byte)와 학습 연산량(Training FLOPs)을 측정한 결과입니다(범주의 ps는 패치 크기(Patch Size)):

위 실험은 모델이 주어진 입력 데이터를 얼마나 효율적으로 인코딩하는지를 측정한 것으로, BPB가 낮을수록 모델이 입력 데이터를 더 잘 예측한다는 것입니다. 또한, 패치 크기(PS=6/PS=8)가 BLT 모델의 성능에 미치는 영향을 살펴보았습니다.

좌측은 공백(Space) 기반의 패칭을 적용한 BLT 모델과 BPE 토크나이저를 사용한 Llama 3를 비교한 것으로, BLT에 패치 크기를 증가시켜 시퀀스 길이를 줄이는 경우 Llama 3와 유사하거나 더 높은 성능을 보이는 것을 확인할 수 있습니다. 하지만, 패치 크기가 너무 큰 경우 입력 데이터의 세부 정보가 손실될 수 있으므로, 적절한 균형을 찾는 것이 중요합니다.

우측은 엔트로피 패칭(Entropy Patching)을 적용한 BLT 모델과 BPE 토크나이저를 사용한 Llama 3를 비교한 것으로, BLT 모델이 Llama 3보다 낮은 BPB를 달성하는 것을 확인할 수 있습니다. 이는 데이터의 복잡도에 따라 패치 크기를 유동적으로 조절하는 동적 패칭이 데이터 복잡도에 대응하여 연산 자원을 효율적으로 사용하는 것을 보여줍니다.

이를 통해 BLT가 스케일링 법칙을 잘 따르며, 패치 기반 아키텍처와 동적 패칭을 통해 기존의 BPE 기반 모델을 대체할 수 있을 만큼의 성능과 효율성을 제공한다는 것을 시사합니다.

BLT 모델과 BPE 기반 모델(Llama 3)의 성능 비교

BLT 모델의 성능을 BPE 토크나이저 기반의 Llama 3 / Llama 3.1 모델과 비교해보았습니다. 비교에 사용한 BLT 모델은 8B 규모로, 1T 토큰(tokens) 규모의 학습 데이터를 사용하여 학습하였습니다. Llama 3 및 Llama 3.1 모델의 경우 모두 8B 규모지만, Llama 3는 1T 토큰 규모의 학습 데이터를 사용한데 비해, Llama 3.1은 16T 토큰 규모의 학습 데이터를 사용하였습니다. (가장 우수한 성능은 굵게, 전체적으로 가장 높은 성능은 밑줄로 표시하습니다.)

좌측의 Table 3은 3개 모델(BLT-8B / Llama-3-8B / Llama-3.1-8B)에 대해 노이즈 강건성(Noise Robustness) 및 언어 구성 요소 이해 평가(Language Constituents Awareness)를 측정한 결과입니다. 노이즈 강건성 평가는 입력에 오타나 문자 변형 등의 노이즈가 포함되었을 때의 모델 성능을 측정하며, 언어 구성요소 이해 평가는 문자의 구성 요소, 단어 경계, 특수 문자 등을 얼마나 잘 이해하는지를 평가합니다.

먼저, BLT 모델이 노이즈가 포함된 입력에서도 Llama 3 / Llama 3.1의 성능을 크게 능가하는 결과를 확인할 수 있었습니다. 이는 BPE 토크나이저가 정해진 토큰 사전에 의존하기 때문에 노이즈 인식이 어렵고 성능 저하가 나타는데 반해, BLT는 토큰을 사용하지 않고 바이트 단위 입력을 사용하여 변형된 입력도 잘 처리하기 때문인 것으로 보입니다.

또한, BLT 모델은 언어의 구성요소에 대해서도 더 나은 인식을 보였으며, 일부 작업에서는 Llama 3.1을 능가하는 결과를 보였습니다. 이는 바이트 단위의 학습이 더 세밀한 언어 구성 정보를 학습하기 때문인 것으로 보이며, 이러한 특성은 단순히 더 많은 학습 데이터를 사용함으로써 얻기 어려운 특성입니다.

우측의 Table 4는 동일한 1T 토큰의 학습 데이터를 사용한 2개 모델(BLT-8B / Llama-3-8B)에 대해 영어와 6개의 주요 언어들(아랍어 / 독일어 / 힌두어 / 이탈리아어 / 베트남어 / 타이어) 및 21개의 저자원 언어(Low-Resource Languages)의 번역 성능을 비교한 결과입니다. 다국어 모델의 번역 성능을 평가하기 위한 FLORES-101 벤치마크를 사용하였으며, 결과는 BLEU 점수입니다.

주요 언어에서는 BLT-8B와 Llama-3-8B 모델이 유사한 성능을 보였으며, 이는 주요 언어들에 대해서는 이미 충분히 학습하였기 때문으로 추정됩니다. 하지만, 저자원 언어에서는 BLT가 일관되게 더 높은 성능을 보였으며, 이는 학습 데이터가 부족한 상황에서 BPE 기반 토크나이저가 학습에 어려움을 겪기 때문으로 보입니다. 이에 반해, BLT는 언어 및 어휘 사전(Vocabulary)에 의존하지 않으므로 새로운 단어나 희귀한 스크립트를 더 잘 학습할 수 있으며, 언어 중립적인 바이트 단위 학습을 통해 다국어를 더 자연스럽게 처리할 수 있음을 확인할 수 있습니다.

토큰 기반 모델의 파라매터 적용 실험

BLT(Byte Latent Transformer)의 글로벌 트랜스포머 모델을 Llama 3의 (임베딩 부분을 제외한, 트랜스포머 블록 및 어텐션 등의) 가중치(Weight)와 편향(Bias)으로 초기화했을 때의 성능을 비교하는 실험을 해봤습니다. 이는 Llama 3와 같이 기존의 잘 학습된 모델의 파라매터를 사용하여 초기화였을 때 BLT 모델이 더 빠르게 수렴하거나 성능이 향상되는지를 확인해보는 실험입니다.

실험에서는 4가지 모델의 성능을 주요 벤치마크들로 비교하였습니다. 먼저 비교를 위해 220B 토큰 규모의 Llama 2 학습 데이터로 학습한 Llama-3-8B, (무작위 초기화로 학습한) BLT-8B과 15T 토큰 규모로 학습한 Llama-3.1-8B 모델을 사용하였습니다. 여기에 220B 토큰 규모로 학습한 Llama-3.1-8B의 파라매터를 사용하여 초기화한 BLT-8B 모델의 성능을 비교한 결과는 다음과 같습니다:

Llama 3.1 초기화 vs. 무작위 초기화 BLT-8B 모델을 비교해본 결과, Llama 3.1로 초기화한 BLT 모델은 여러 벤치마크 태스크에서 기존 BLT 모델보다 더 나은 성능을 달성함을 확인하였습니다. 이는 잘 학습된 Llama 3.1 모델의 글로벌 트랜스포머 파라미터를 초기화 값으로 사용함으로써 BLT 모델이 더 빠르게 수렴하고, 더 높은 최종 성능을 달성할 수 있음을 보여줍니다. 특히, 무작위 초기화(Random Initialization)를 사용한 BLT 모델은 학습 초기 단계에서 불안정한 학습 곡선을 보이는 경향이 있는데 반해, Llama 3.1로 초기화한 BLT 모델은 안정적이고 빠르게 수렴하였습니다. 결과적으로 Llama 3.1로 초기화된 BLT 모델이 더 적은 연산량으로도 더 빠르게 높은 성능을 달성하였습니다.

그 외 비교 실험(Ablations)

400M 및 1B 규모의 BLT 모델에 대해 엔트로피 모델의 크기와 문맥 윈도우(context window)가 언어 모델링 성능에 미치는 영향을 실험해보았습니다. 엔트로피 모델은 파라매터 수를 1M, 10M, 50M, 100M로 설정하였으며, 문맥 윈도우는 64B, 128B, 512B로 변화하며 BPB(Bits-Per-Byte) 및 학습 FLOP에 따른 변화를 확인해보았습니다.

실험 결과, 엔트로피 모델 크기를 늘릴수록 BLT 모델의 언어 모델링 성능이 개선됨을 확인할 수 있었습니다. 특히 작은 엔트로피 모델(10M 파라미터)에서 50M 파라미터로 확장하면 bpb 값이 눈에 띄게 낮아지는 것을 확인하였는데, 이는 엔트로피 모델이 클수록 더 복잡한 문맥 정보를 학습할 수 있게 되어 패치 생성이 더 정교해지기 때문으로 보입니다. 하지만, 엔트로피 모델의 크기를 50M 이상으로 증가시키면 성능 개선이 점진적으로 감소(diminishing returns)하는 경향을 보입니다.

또한 문맥 길이가 256바이트에서 512바이트로 늘어나면 언어 모델링 성능이 확연히 개선되는 것을 확인할 수 있었습니다. 이는 더 넓은 문맥을 참조하면 엔트로피 모델이 더 적절하게 패치를 생성할 수 있음을 의미합니다. 하지만, 문맥 길이를 512바이트 이상으로 확장해도 성능 개선은 미미했습니다.

즉, BLT 모델에서 엔트로피 패치를 위한 모델의 크기는 50M 수준이, 문맥 길이는 512바이트가 최적 설정임을 확인할 수 있었습니다.

한계점

BLT(Byte Latent Transformer) 연구는 기존의 토큰 기반 대형 언어 모델(LLM)의 한계를 극복하려는 혁신적 접근법을 제시했지만, 여전히 몇 가지 한계점과 향후 개선이 필요한 영역이 존재합니다:

  1. 최적화된 스케일링 법칙의 부재: BLT 모델은 Llama 3 모델에 대해 계산된 스케일링 법칙을 기반으로 학습하였습니다. 여기서 "스케일링 법칙"이란 최적의 데이터 크기와 모델 파라미터 비율을 의미합니다. 하지만 이러한 Llama 3의 스케일링 법칙은 BPE 기반 트랜스포머를 기준으로 계산되었기 때문에 BLT와 같은 바이트 기반 모델에서는 최적화된 설정이 아닐 수 있습니다. 따라서 BLT에 최적화된 새로운 스케일링 법칙을 계산함으로써 데이터와 파라미터 비율을 재설정하고, BLT의 성능을 더 극대화할 수 있을 것으로 기대합니다.

  2. 대규모 모델 확장성의 검증 부족: 현재 대부분의 실험은 1B 파라미터 규모까지 진행되었습니다. 하지만 최적의 아키텍처 선택은 모델의 파라미터 수가 증가함에 따라 달라질 수 있으며, 8B 파라미터 이상의 모델로 확장하면 새로운 최적화 전략이 필요할 수 있습니다. 따라서 8B 이상의 모델 학습을 통해 BLT 아키텍처가 대규모에서 어떤 성능 향상을 보이는지 검증해야 합니다.

  3. 구현 최적화와 코드 효율성: 현재의 트랜스포머 구현체와 라이브러리들은 토크나이저 기반 모델에 최적화되어 있습니다. 하지만 BLT는 동적 패칭 및 엔트로피 기반 처리와 같은 바닐라 트랜스포머와 다른 특성을 가지므로, 계산 효율 면에서 아직 비효율적일 수 있습니다. 즉, 이번 연구에서 BLT는 FLOP 비용을 이론적으로 맞추었지만, 실행 시간(wall-clock time) 면에서는 BPE 기반 모델보다 비효율적일 수 있습니다. 따라서 효율적인 구현을 위해 기존 트랜스포머 코드베이스를 BLT 아키텍처에 맞게 최적화할 필요가 있습니다. 특히 FlexAttention과 같은 효율적 연산 기법을 더욱 발전시키면 실행 시간 문제를 개선할 수 있습니다.

  4. 엔드투엔드 패칭 모델 학습: BLT는 별도로 학습된 엔트로피 모델을 사용해 입력 데이터를 패치로 나누는 방식을 채택했습니다. 하지만 추가적인 학습을 필요로하는 엔트로피 모델은 패치 생성을 최적화하는 데 한계가 있을 수 있으므로, 패치 생성을 포함하여 학습하는 엔드투엔드 방식의 BLT 모델을 연구함으로써 학습 프로세스를 단순화하고 패칭의 효율성을 개선할 수 있습니다.

  5. 기존 토큰화 모델의 "바이트화(byte-ifying)": 이번 연구에서 연구진은 기존 Llama 3 모델을 BLT 모델의 글로벌 트랜스퍼모델 초기화에 사용하는 "바이트화(byte-ifying)" 실험을 일부 수행했습니다. 이러한 접근법은 초기 단계에 불과하므로 기존의 토크나이저 기반 모델을 바이트 수준에서 학습할 수 있도록 변환하는 방법을 더욱 연구해야 합니다. 이를 통해 바이트 기반 접근법의 강점을 기존 모델과 결합하고, 토크나이저 기반 모델보다 더 나은 성능을 달성할 가능성이 열릴 것으로 기대합니다.

:scroll: BLT(Byte Latent Transformer) 모델 논문

:github: BLT(Byte Latent Transformer) 모델 GitHub 저장소

https://github.com/facebookresearch/blt




이 글은 GPT 모델로 정리한 글을 바탕으로 한 것으로, 원문의 내용 또는 의도와 다르게 정리된 내용이 있을 수 있습니다. 관심있는 내용이시라면 원문도 함께 참고해주세요! 읽으시면서 어색하거나 잘못된 내용을 발견하시면 덧글로 알려주시기를 부탁드립니다. :hugs:

:pytorch:파이토치 한국 사용자 모임:kr:이 정리한 이 글이 유용하셨나요? 회원으로 가입하시면 주요 글들을 이메일:love_letter:로 보내드립니다! (기본은 Weekly지만 Daily로 변경도 가능합니다.)

:gift: 아래:arrow_lower_right:쪽에 좋아요:+1:를 눌러주시면 새로운 소식들을 정리하고 공유하는데 힘이 됩니다~ :star_struck: