Views
No views yet
google/t5-v1_1-base
in Norwegian on a single TPUv3-8 pod."norwegian-t5-base", but you can change the model name as you like.cd ./norwegian-t5-base1import datasets
2
3from t5_tokenizer_model import SentencePieceUnigramTokenizer
4
5
6vocab_size = 32_000
7input_sentence_size = None
8
9# Initialize a dataset
10dataset = datasets.load_dataset("oscar", name="unshuffled_deduplicated_no", split="train")
11
12tokenizer = SentencePieceUnigramTokenizer(unk_token="<unk>", eos_token="</s>", pad_token="<pad>")
13
14
15# Build an iterator over this dataset
16def batch_iterator(input_sentence_size=None):
17 if input_sentence_size is None:
18 input_sentence_size = len(dataset)
19 batch_length = 100
20 for i in range(0, input_sentence_size, batch_length):
21 yield dataset[i: i + batch_length]["text"]
22
23
24# Train tokenizer
25tokenizer.train_from_iterator(
26 iterator=batch_iterator(input_sentence_size=input_sentence_size),
27 vocab_size=vocab_size,
28 show_progress=True,
29)
30
31# Save files to disk
32tokenizer.save("./norwegian-t5-base/tokenizer.json")**google/t5-v1_1-base**
in the local model folder:1from transformers import T5Config
2
3config = T5Config.from_pretrained("google/t5-v1_1-base", vocab_size=tokenizer.get_vocab_size())
4config.save_pretrained("./norwegian-t5-base")1python run_t5_mlm_flax.py \
2 --output_dir="./norwegian-t5-base" \
3 --model_type="t5" \
4 --config_name="./norwegian-t5-base" \
5 --tokenizer_name="./norwegian-t5-base" \
6 --dataset_name="oscar" \
7 --dataset_config_name="unshuffled_deduplicated_no" \
8 --max_seq_length="512" \
9 --per_device_train_batch_size="32" \
10 --per_device_eval_batch_size="32" \
11 --adafactor \
12 --learning_rate="0.005" \
13 --weight_decay="0.001" \
14 --warmup_steps="2000" \
15 --overwrite_output_dir \
16 --logging_steps="500" \
17 --save_steps="10000" \
18 --eval_steps="2500" \
19 --push_to_hub