Turkish Byte-Level BPE Tokenizer
Bu repository, Türkçe metinler üzerinde sıfırdan eğitilmiş özel bir Byte-Level BPE tokenizer içerir.
Bu çalışma, BPE tokenizer oluşturma ve Hugging Face Hub üzerinde yayınlama ödevi kapsamında hazırlanmıştır.
Tokenizer özellikleri
- Algoritma: Byte-Level BPE
- Dil: Türkçe
- Vocabulary boyutu: 512
- Minimum frekans: 2
- Unicode normalizasyonu: NFC
- Pre-tokenizer: ByteLevel
- Decoder: ByteLevel
- Maksimum dizi uzunluğu: 512
- Eğitim kütüphanesi: Hugging Face Tokenizers
- Transformers uyumluluğu:
PreTrainedTokenizerFast
Özel tokenlar
| Token | Açıklama |
|---|---|
<unk> |
Bilinmeyen token |
<pad> |
Dolgu tokenı |
<bos> |
Metin başlangıcı |
<eos> |
Metin sonu |
Tokenizer, metinlerin başına <bos> ve sonuna <eos> tokenı ekleyecek
şekilde yapılandırılmıştır.
Eğitim verisi
Tokenizer yaklaşık 10.685 karakterden ve 9 farklı paragraftan oluşan Türkçe bir metin üzerinde eğitilmiştir.
Eğitim metni aşağıdaki türlerden örnekler içerir:
- Fantastik kurgu
- Bilim kurgu
- Polisiye
- Siberpunk
- Bilimsel ve teknik metinler
- Türkçe karakterler
- Sayılar ve matematiksel ifadeler
Kullanım
from transformers import AutoTokenizer
tokenizer = AutoTokenizer.from_pretrained(
"YusufSimsek/turkish-bytelevel-bpe"
)
text = "Merhaba dünya! Türkçe tokenizer çalışıyor."
encoded = tokenizer(
text,
add_special_tokens=True
)
print("Token ID'leri:")
print(encoded["input_ids"])
print("Tokenlar:")
print(
tokenizer.convert_ids_to_tokens(
encoded["input_ids"]
)
)
decoded = tokenizer.decode(
encoded["input_ids"],
skip_special_tokens=True,
clean_up_tokenization_spaces=False
)
print("Çözümlenen metin:")
print(decoded)
Sınırlamalar
Bu tokenizer küçük bir eğitim verisi üzerinde eğitilmiştir. Bu nedenle:
- Genel amaçlı büyük dil modelleri için yeterli değildir.
- Eğitim verisinde az görülen kelimeleri çok sayıda alt parçaya bölebilir.
- Vocabulary boyutu deneysel olarak 512 seçilmiştir.
- Daha büyük ve çeşitli bir Türkçe corpus ile yeniden eğitilmesi tokenizer verimliliğini artırabilir.
Bu repository bir dil modeli içermez. Yalnızca metinleri tokenlara dönüştürmek için kullanılan tokenizer dosyalarını içerir.
Dosyalar
tokenizer.json: Vocabulary ve BPE birleşme kurallarıtokenizer_config.json: Tokenizer yapılandırmasıspecial_tokens_map.json: Özel token eşlemeleritraining_report.json: Eğitim ve test sonuçları
Geliştirici
Yusuf Şimşek
Bu tokenizer eğitim ve öğrenme amaçlı hazırlanmıştır.
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support