BabakScrapes's picture
Update README.md
34eebfa verified
|
Raw
History Blame Contribute Delete
2.95 kB
---
language: en
license: cc-by-4.0
library_name: transformers
pipeline_tag: token-classification
tags:
- clause-segmentation
- discourse
- situation-entities
- roberta
base_model: roberta-base
---
# DiSCo Clause Segmenter
A `roberta-base` token-classification model that splits English text into Elementary Discourse Unites, roughly **clauses**. Each token is tagged with a 3-way label and clause spans are recovered by matching the pattern `B I* E`:
| id | label | meaning |
|----|-------|---------|
| 0 | B | clause beginning |
| 1 | I | inside clause |
| 2 | E | clause end |
This is the segmentation component of the DiSCo pipeline; feed its clause output to the companion [`BabakScrapes/disco-se-classifier`](https://huggingface.co/BabakScrapes/disco-se-classifier) for Situation Entity typing.
## Usage
```python
from transformers import AutoTokenizer, AutoModelForTokenClassification
import torch
tok = AutoTokenizer.from_pretrained("roberta-base", add_prefix_space=True)
model = AutoModelForTokenClassification.from_pretrained("BabakScrapes/disco-clause-segmenter").eval()
words = "There was bad weather at the airport and so our flight got delayed".split()
enc = tok(words, is_split_into_words=True, return_tensors="pt", truncation=True, max_length=512)
with torch.inference_mode():
token_preds = model(**enc).logits.argmax(-1)[0].tolist()
# align token_preds back to words (majority vote per word), then cut clauses on B...E
```
See `pipeline.py` in the DiSCo release for the full word-alignment + `B I* E` clause-recovery logic.
## Training data
Trained on the **public SitEnt corpus** (Friedrich et al. 2016/2017), converted to `B/I/E` token labels, with a deterministic split (seed 42, 90/10 train/validation). The construction recipe (`construct_clause_corpus.ipynb`) is distributed with the DiSCo code/corpus release, not in this model repo.
## Performance
In-domain SitEnt held-out evaluation (seed-42 10% partition; 16,515 tokens, 1,848 gold clause spans):
| Metric | Value |
|--------|-------|
| Token macro-F1 | .753 (B .703 / I .917 / E .639) |
| Token accuracy (= micro-F1) | .861 |
| Gold clauses with ≥50% predicted-overlap coverage | 95.5% |
| Predicted vs gold clause counts | 2,149 vs 1,848 (slight over-segmentation) |
The segmenter recovers clause *regions* reliably; the span-overlap numbers are the operationally relevant summaries because the downstream pipeline consumes whole clauses rather than exact boundary tokens. Macro-F1 is depressed by the sparse B/E classes.
## Limitations
- English only.
- Tends to slightly over-segment, which is benign for downstream SE classification.
## Citation
Hemmatian, B. (2022). *Taking the High Road: A Big Data Investigation of Natural Discourse in the Emerging U.S. Consensus about Marijuana Legalization*. Brown University. And the DiSCo corpus paper (forthcoming, *Behavior Research Methods*). SitEnt: Friedrich, Palmer & Pinkal (2016).