WordPiece-tokenizer

En subord-tokeniseringsalgoritme, der opdeler ord i kendte delordsenheder ved hjælp af en grådig længste-match-fremgangsmåde og en foruddefineret vokabular.

Kort fortalt

En metode til at opdele ord i mindre stykker (f.eks. 'læring' → 'lær', '##ing'), så modellen kan håndtere ukendte ord.

Kategori
teknik
Niveau
øvet
Udtale
/wɜːrd piːs ˈtoʊkənaɪzər/

Betydninger

1
  1. 1

    En tokeniseringsalgoritme, der opdeler inputtekst i subord-enheder ved hjælp af et forudlært vokabular, hvor de mest almindelige ord bevares hele, og sjældne ord opdeles i mindre dele markeret med '##'.

    • WordPiece-tokenizeren opdeler 'uforudsigelig' i ['u', 'forud', '##sig', '##elig'].Eksempel fra praksis
    • I BERT's WordPiece-vokabular er der omkring 30.000 tokens, inklusive hele ord og subord.BERT: Pre-training of Deep Bidirectional Transformers (2019)

Hvornår bruges det

WordPiece bruges primært i BERT-modeller og andre transformerbaserede sprogmodeller til at forberede tekst til input. Det sikrer, at ethvert ord kan repræsenteres, selv hvis det ikke er i vokabularet, ved at falde tilbage på kendte delord. Vokabularet læres under fortræning ved at starte med enkelttegn og gradvist flette de mest almindelige tegnpar.

Kodeeksempel

from transformers import BertTokenizer

tokenizer = BertTokenizer.from_pretrained('bert-base-uncased')
tokens = tokenizer.tokenize('unaffable')
print(tokens)  # Output: ['un', 'aff', '##able']

Eksempel på brug af WordPiece-tokenizeren fra Hugging Face Transformers.

Oprindelse

Introduceret af Schuster og Nakajima i 2012 til japansk og koreansk stemmesøgning, men populariseret af BERT-modellen (Devlin et al., 2019).

Afledte ord

2

Kilder

2