language: jv
tags:
- javanese-bert-small
license: mit
datasets:
- wikipedia
widget:
- text: Aku mangan sate ing [MASK] bareng konco-konco
Javanese BERT Small
Javanese BERT Small is a masked language model based on the BERT model. It was trained on the latest (late December 2020) Javanese Wikipedia articles.
The model was trained from scratch and achieved a perplexity of 93.03 on the validation dataset (20% of the articles). Many of the techniques used are based on a Hugging Face tutorial notebook written by Sylvain Gugger, where Sylvain Gugger fine-tuned a DistilGPT-2 on Wikitext2.
Hugging Face's Transformers library was used to train the model -- utilizing the base RoBERTa model and their Trainer
class. PyTorch was used as the backend framework during training, but the model remains compatible with TensorFlow nonetheless.
Model
Model | #params | Arch. | Training/Validation data (text) |
---|---|---|---|
javanese-BERT-small |
84M | BERT | Javanese Wikipedia (319 MB of text) |
Evaluation Results
The model was trained for 15 epochs and the following is the final result once the training ended.
train loss | valid loss | perplexity | total time |
---|---|---|---|
4.539 | 4.533 | 93.03 | 2:31:33 |
How to Use
As Masked Language Model
from transformers import pipeline
pretrained_name = "w11wo/javanese-bert-small"
fill_mask = pipeline(
"fill-mask",
model=pretrained_name,
tokenizer=pretrained_name
)
fill_mask("Aku mangan sate ing [MASK] bareng konco-konco")
Feature Extraction in PyTorch
from transformers import BertModel, BertTokenizerFast
pretrained_name = "w11wo/javanese-bert-small"
model = BertModel.from_pretrained(pretrained_name)
tokenizer = BertTokenizerFast.from_pretrained(pretrained_name)
prompt = "Indonesia minangka negara gedhe."
encoded_input = tokenizer(prompt, return_tensors='pt')
output = model(**encoded_input)
Disclaimer
Do remember that although the dataset originated from Wikipedia, the model may not always generate factual texts. Additionally, the biases which came from the Wikipedia articles may be carried over into the results of this model.
Author
Javanese BERT Small was trained and evaluated by Wilson Wongso. All computation and development are done on Google Colaboratory using their free GPU access.