Downloads · 30 days
57
1% of all-time downloads
KoichiYasuoka/roberta-classical-chinese-base-sentence-segmentation
roberta-classical-chinese-base-sentence-segmentation is a token classification model from KoichiYasuoka. Use it when you need labels on individual words, such as names. It is set up for transformers. The card lists the license as apache-2.0.
This is a RoBERTa model pre-trained on Classical Chinese texts for sentence segmentation, derived from roberta-classical-chinese-base-char. Every segmented sentence begins with token-class "B" and ends with token-clas…
Downloads · 30 days
57
1% of all-time downloads
All-time downloads
5.2K
Public
Repo size
1.3 GB
Likes
3
Public
Click a slice to open those files.
.bin423 MB · 100%
From the Hugging Face model README
This is a RoBERTa model pre-trained on Classical Chinese texts for sentence segmentation, derived from roberta-classical-chinese-base-char. Every segmented sentence begins with token-class "B" and ends with token-class "E" (except for single-character sentence with token-class "S").
import torch
from transformers import AutoTokenizer,AutoModelForTokenClassification
tokenizer=AutoTokenizer.from_pretrained("KoichiYasuoka/roberta-classical-chinese-base-sentence-segmentation")
model=AutoModelForTokenClassification.from_pretrained("KoichiYasuoka/roberta-classical-chinese-base-sentence-segmentation")
s="子曰學而時習之不亦説乎有朋自遠方來不亦樂乎人不知而不慍不亦君子乎"
p=[model.config.id2label[q] for q in torch.argmax(model(tokenizer.encode(s,return_tensors="pt"))["logits"],dim=2)[0].tolist()[1:-1]]
print("".join(c+"。" if q=="E" or q=="S" else c for c,q in zip(s,p)))
Koichi Yasuoka: Sentence Segmentation of Classical Chinese Texts Using Transformers and BERT/RoBERTa Models, IPSJ Symposium Series, Vol.2021, No.1 (December 2021), pp.104-109.