BPE-segmentering

forkortelse for Byte Pair Encoding-segmentering

BPE-segmentering er en datakomprimeringstilpasset metode til deling af ord i underord-enheder baseret på hyppigste tegnpar.

Kort fortalt

En måde at opdele ord i mindre bidder ved at slå de hyppigste tegnpar sammen.

Kategori
teknik
Niveau
øvet

Betydninger

1
  1. 1

    En algoritme der iterativt erstatter det mest hyppige par af på hinanden følgende tegn i en tekst med et nyt symbol, indtil et foruddefineret antal symboler er nået; den resulterende ordforråd bruges til at segmentere ord i underord-enheder.

    • Efter træning af BPE-segmentering på et dansk korpus segmenteres ordet 'laveste' til ['lav', 'este'].

Hvornår bruges det

BPE-segmentering bruges i tokeniseringsfasen af moderne sprogmodeller som GPT og BERT til at håndtere ukendte ord og reducere ordforrådstørrelsen.

Kodeeksempel

from tokenizers import Tokenizer, models
# Initialiser en BPE-tokenizer med et tomt ordforråd
tokenizer = Tokenizer(models.BPE())
# Træning på eksempeltekster
trainer = tokenizer.train(["laveste", "frekvens", "eksempel"])
# Segmenter et ord
encoded = tokenizer.encode("laveste")
print(encoded.tokens())  # Output: ['lav', 'este']

Opretter en BPE-tokenizer, træner den på eksempler og segmenterer et ord.

Oprindelse

Inspireret af Byte Pair Encoding-komprimering fra 1994, tilpasset til NLP subword-tokenisering.

Afledte ord

2

Kilder

1
  • Neural Machine Translation of Rare Words with Subword Units