Text processor
This determines which type of tokenization and embedding is used as the base for the recurrent neural network (RNN) model. For example, word or byte-pair encoding (BPE). The word text processor defaults to English, and uses word-based tokenization and English pre-trained word embeddings. The maximum word vocabulary result is 100,000. The BPE text processors use the same tokenization, but different vocabulary sizes:bpe_*_smallembeddings have 10,000 vocabulary tokensbpe_*_largeembeddings have 100,000 vocabulary tokensbpe_multimultilingual embeddings have 320,000 vocabulary tokens
English
English
word_en(default)bpe_en_smallbpe_en_largeall_minilm_l6e5_small_v2e5_base_v2e5_large_v2gte_smallgte_basegte_largesnowflake_arctic_embed_xs
Multilingual
Multilingual
bpe_multimultilingual_e5_smallmultilingual_e5_basemultilingual_e5_largesnowflake-arctic-embed-l
Bulgarian
Bulgarian
bpe_bg_smallbpe_bg_large
German
German
bpe_de_smallbpe_de_large
Spanish
Spanish
bpe_es_smallbpe_es_large
French
French
bpe_fr_smallbpe_fr_large
Italian
Italian
bpe_it_smallbpe_it_large
Japanese
Japanese
bpe_ja_smallbpe_ja_large
Korean
Korean
bpe_ko_smallbpe_ko_large
Dutch
Dutch
bpe_nl_smallbpe_nl_large
Romanian
Romanian
bpe_ro_smallbpe_ro_large
Chinese
Chinese
bpe_zh_smallbpe_zh_large
Custom
Custom
word_custombpe_custom
Word text processor
Although
word_en is trained primarily on English text, the underlying word embeddings are derived from a broad multilingual crawl and include vocabulary from many other languages. For most basic multilingual use cases, word_en will work well. For more extensive multilingual support, see the Multilingual text processors.word_en text processor, the training process uses pre-trained English word embeddings. It builds vocabulary based on your training data and selects word embeddings that correspond to it.
Preprocessing completes the following changes:
- Text is set to all lowercase characters.
- Numbers are split into single digits. For example,
"12345"is set to["1", "2", "3", "4", "5"]. - Corrects as many misspelled words as possible.
- Identifies words that are identified as Out-Of-Vocabulary (OOV) and matches to as many known words as possible. The resulting vocabulary is restricted to a maximum of 100,000 words.
BPE text processors
To use pre-trained byte pair encoding (BPE) tokenization and embeddings, set the text processor to one of thebpe_* values based on the language you want to train.
The BPE versions use the same tokenization, but different vocabulary sizes:
bpe_*_smallembeddings have 10,000 vocabulary tokensbpe_*_largeembeddings have 100,000 vocabulary tokensbpe_multimultilingual embeddings have 320,000 vocabulary tokens
Custom text processors
If your content includes unusual, very domain-specific vocabulary or you need to train a model for a non-supported language, you can train custom word or BPE embeddings. This training is language-agnostic, but Lucidworks recommends you use custom BPE training for non-Latin languages or in multilingual scenarios. To train custom token embeddings, settextProcessor to one of the following:
word_customtrains word embeddings with up to 100,000 vocabulary sizebpe_customtrains BPE embeddings with up to 10,000 vocabulary size
Thebpe_customtext processor also learns a custom tokenization function over your data. The value of 10,000 is sufficient for most use cases.