bart-base-dwikipedia-simplification-full

facebook/bart-base fine-tuned on the full D-Wikipedia training corpus (Sun et al., EMNLP 2021) for document-level English text simplification. It rewrites a whole multi-sentence passage at once and is expected to delete, merge, split and reorder sentences β€” so its output has no position-by-position correspondence to its input.

Trained as part of a bachelor thesis on automated simplification of everyday English web text, and served as the document model by the project's backend: https://github.com/yyvs/simple-website

This supersedes yunvs/bart-base-dwikipedia-simplification, which is a preliminary 20,000-document / 2-epoch run. That checkpoint is kept published because earlier reported results cite it; this one is the checkpoint to use. Unlike its predecessor it has been evaluated on its actual task β€” see Evaluation.

⚠️ Input and output are lowercased and PTB-pre-tokenized

This is the most important usage detail, and getting it wrong degrades output badly.

D-Wikipedia is fully lowercased, PTB-pre-tokenized (writer , intellectual, women 's, `` the second sex '') and one document per line, with zero newline characters inside any document body. The model both consumes and emits that convention.

Measured consequences of ignoring it:

  • Feeding ordinary mixed-case prose produced a factual hallucination ("northern Netherlands" β†’ "northern hemisphere") that the lowercased, corpus-style input did not.
  • Supplying \n as a structural separator β€” the intuitive way to convey document structure β€” produced the worst output of every variant tested, because the model has never seen a newline in training.

Raw output looks like achtkarspelen is a municipality in friesland . β€” you must de-normalize it before display. The companion project implements the matched normalize/de-normalize pair in backend/document_text.py.

Note for anyone who used the predecessor's normalizer before 2026-08-21: it split the period inside single-letter abbreviations, turning u.s. into u . s . β€” a token the corpus contains zero times. It was applied on the serving path as well as in scoring. Make sure you are on a fixed copy.

Usage

from transformers import AutoTokenizer, AutoModelForSeq2SeqLM

tok = AutoTokenizer.from_pretrained("yunvs/bart-base-dwikipedia-simplification-full")
model = AutoModelForSeq2SeqLM.from_pretrained("yunvs/bart-base-dwikipedia-simplification-full")

# Normalize to corpus style first: lowercase, PTB-tokenize, no newlines.
doc = "achtkarspelen is a municipality in the northern netherlands . it had a population of 27,944 in 2017 ."

inputs = tok(doc, return_tensors="pt", truncation=True, max_length=512)
out = model.generate(**inputs, max_length=512, num_beams=4,
                     no_repeat_ngram_size=3, repetition_penalty=1.2)
print(tok.decode(out[0], skip_special_tokens=True))
# -> lowercase, pre-tokenized output; de-normalize before displaying

Input past 512 tokens is truncated, not chunked β€” the overflow is silently dropped rather than simplified. Chunk below the limit yourself. A real Wikipedia article measured 2,459 BART tokens, i.e. ~79% would have been discarded if fed whole.

Do not pack input to fill 512. The training median is 120 tokens; a lone 100-token section is more representative of the training distribution than a merged 500-token one. 512 is a ceiling for splitting, never a target for packing.

Do not include headings. When a heading was included in a section's text, the model echoed it back into the body output.

Training

Base model facebook/bart-base
Dataset D-Wikipedia (Sun et al., EMNLP 2021), 131,739 training documents after filtering
Scope "full" β€” the complete train split, strict mojibake filter
Epochs 5 (20,585 steps)
Batch size 32
Precision bf16
Device NVIDIA RTX A5000, driver 535.309.01, torch 2.6.0+cu124
Learning rate 3e-5
Weight decay 0.01
Max length 512 tokens
Seed 42
Wall clock 2 h 44 min
Selected checkpoint epoch 4 (checkpoint-16464), validation loss 0.3352

Validation loss by epoch: 0.3490 β†’ 0.3408 β†’ 0.3372 β†’ 0.3352 β†’ 0.3341 β€” monotone, flat after epoch 3, never turning upward. Note the selected checkpoint is epoch 4's, not the numerically lowest: evaluation ran every 0.25 epoch while saving ran per epoch, so the best measured value (0.33403, step 19551) was at an unsaved point. Quote 0.3352.

Evaluation

Scored on D-Wikipedia's own test split β€” the correct benchmark for a document-trained model β€” on the machine that trained it, one code revision throughout.

Full test split (n = 8,000), against the un-fine-tuned base model:

D-SARI ↑ SARI ↑ BLEU FKGL ↓ BERTScore LENS
This model 35.44 41.95 27.21 7.86 90.61 45.61
facebook/bart-base zero-shot 14.34 21.60 16.66 9.69 88.80 33.42

Paired bootstrap over documents on D-SARI, 1000 resamples: p < 0.001.

Three-way comparison (n = 2,000), adding a prompted open-weight LLM (qwen2.5:7b-instruct-q4_K_M, zero-shot, sampled, one seed):

D-SARI ↑ SARI ↑ BLEU FKGL ↓ BERTScore LENS
This model 34.93 41.93 27.64 7.94 90.61 45.43
Prompted 7B 22.37 39.60 13.65 5.89 88.64 69.27
facebook/bart-base zero-shot 14.42 22.28 17.58 9.66 88.93 33.72

⚠️ The metrics disagree about which system is best, and you should know that before choosing this model over a prompted LLM. D-SARI ranks this model first by 12.6 points; LENS β€” the only metric here trained on human simplification judgements β€” ranks the prompted 7B first by 23.8 points. Truncation, sample size and text normalization were each checked and ruled out as explanations. The honest caveat on LENS is that it was trained on sentence-level human ratings and is being applied to documents, so it is out of domain; but it cannot be dismissed. This model wins on single-reference n-gram agreement; the prompted model wins on paraphrase quality and readability (FKGL 5.89 vs 7.94). Pick according to which you need.

LENS is reported descriptively, not significance-tested: each score is a neural forward pass, so 1000 resamples would cost roughly 3.5 GPU-months.

Qualitative behaviour, measured

A review of all 8,000 outputs, with the predecessor checkpoint re-probed through the same script for comparison:

predecessor (n=500) this model (n=8000)
median output/source length ratio 0.64 0.70
output below half the reference's length 25.8% 18.5%
output identical to input 4.4% 7.7%

On documents whose source says "as of the 2010 census":

predecessor this model
states a wrong year 80.0% 0.9%
states the correct year 14% 43%
states no year 6% 56%

The predecessor substituted a memorised date from the training targets in 80% of affected documents. That is largely gone β€” but read the third row: the error was mostly replaced by omission, not corrected. Confident factual corruption nearly vanishes and correct preservation roughly triples, while a majority of affected documents now drop the date entirely. For an accessibility tool that is the better failure mode, since a dropped fact stays recoverable from the original page and a confidently wrong one does not. It is not the same thing as accuracy.

Limitations

  • Metric-dependent quality ranking. See the LENS warning above.
  • Aggressive deletion. 18.5% of outputs fall below half their reference's length, and it frequently omits dates and figures rather than simplifying them.
  • Output is not aligned to input. By design it deletes, merges and reorders β€” you cannot map an output sentence back to an input sentence. Any UI must replace a whole block, not individual paragraphs.
  • Requires corpus-style input and output post-processing. Not cosmetic; skipping it caused a measured factual hallucination.
  • Silent truncation past 512 tokens.
  • No human evaluation. The metric disagreement above is exactly the situation human judgement would resolve, and it has not been done.
  • Train/eval overlap was audited but only by exact match after normalization; every reported overlap figure is a floor.
  • English only, encyclopedic register. Trained on Wikipedia prose, not on the everyday web text the companion extension targets.

Training data provenance and licence

D-Wikipedia is derived from English Wikipedia and Simple English Wikipedia (CC BY-SA). This model is released under CC BY-SA 4.0 accordingly.

Sun, R., Jin, H., & Wan, X. (2021). Document-Level Text Simplification: Dataset, Criteria and Baseline. EMNLP 2021.

Metrics: SARI (Xu et al., TACL 2016), D-SARI (Sun et al., EMNLP 2021), LENS (Maddela, Dou, Heineman & Xu, ACL 2023), BERTScore (Zhang et al., ICLR 2020), FKGL via easse.

Citation

Produced for a bachelor thesis (2026). Please cite the project repository: https://github.com/yyvs/simple-website

Downloads last month
-
Safetensors
Model size
0.1B params
Tensor type
F32
Β·
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support

Model tree for yunvs/bart-base-dwikipedia-simplification-full

Finetuned
(511)
this model