Causal Connective Lexicon
The simplest possible causality-detection baseline: a sentence is predicted causal iff it contains any causal discourse connective — a word or phrase that lexically signals a causal relation (cause, lead to, because, therefore, ...). No parsing, no training, no learned parameters.
This technique never looks at syntactic structure at all — deliberately kept separate from the SDP baseline, which uses the same connective lexicon but as one feature among several on the dependency path between two already-marked spans, for Causality Identification. Bundling the two under one name is a real, previously-made mistake worth avoiding: they answer different questions ("does this sentence mention causality at all?" vs. "do these two specific spans stand in a causal relation?") and only one of them touches a parse tree.
How it works
causalatee.nlp.LexiconDetector wraps find_causal_connectives into a
causalatee.models.Detection-conforming callable:
from causalatee.nlp import LexiconDetector
detector = LexiconDetector() # loads en_core_web_sm lazily; pass nlp=... to reuse one
detector("The storm caused significant flooding.")
# {'label': 'causal', 'score': 1.0}
detector("The cat sat on the mat.")
# {'label': 'uncausal', 'score': 1.0}
score is always 1.0 — this is a deterministic rule, not a calibrated probability. A negated
connective ("The vaccine did not cause autism") still predicts causal: ClassLabel.Causal
covers both causal and countercausal sentences alike (see
Causality Detection) — only identification distinguishes the
two, via Relation.
Deliberately used as a standalone decision rule, against the SDP page's own advice. The SDP baseline's documentation explicitly warns that a connective match is "a candidate signal, not proof of a causal relation" and should be one feature among several, never used alone. This class does exactly that anyway, as the cheapest possible floor baseline every learned model should beat.
Strengths and Limitations
| Zero cost | No parsing, no training, no GPU — a single lemma/surface-form lookup per sentence |
| High precision on canonical connectives | If "caused"/"triggered"/"because" appears, the sentence usually is causal |
| Capped recall | Misses implicit causality and "alternative lexicalizations" that use no fixed connective at all — see the AltLex dataset, whose entire premise is causal relations expressed without one |
| No confidence estimate | score is always 1.0; not comparable to a calibrated classifier's probability |
Citation
@inproceedings{girju:2003,
title = {Automatic Detection of Causal Relations for Question Answering},
booktitle = {Proceedings of the {{ACL}} 2003 Workshop on Multilingual Summarization and Question Answering},
author = {Girju, Roxana},
year = 2003,
month = jul,
pages = {76--83},
publisher = {Association for Computational Linguistics},
address = {Sapporo, Japan},
doi = {10.3115/1119312.1119322},
url = {https://aclanthology.org/W03-1210/}
}