Skip to content

Sentences

The eds.sentences matcher provides an alternative to spaCy's default sentencizer, aiming to overcome some of its limitations.

Indeed, the sentencizer merely looks at period characters to detect the end of a sentence, a strategy that often fails in a clinical note settings. Our eds.sentences component also classifies end-of-lines as sentence boundaries if the subsequent token begins with an uppercase character, leading to slightly better performances.

Moreover, the eds.sentences component use the output of the eds.normalizer and eds.endlines output by default when these components are added to the pipeline.

Examples

import edsnlp, edsnlp.pipes as eds

nlp = edsnlp.blank("eds")
nlp.add_pipe(eds.sentences())  # same as nlp.add_pipe("eds.sentences")

text = """Le patient est admis le 23 août 2021 pour une douleur à l'estomac
Il lui était arrivé la même chose il y a deux ans."
"""

doc = nlp(text)

for sentence in doc.sents:
    print("<s>", sentence, "</s>")
# Out: <s> Le patient est admis le 23 août 2021 pour une douleur à l'estomac
# Out:  <\s>
# Out: <s> Il lui était arrivé la même chose il y a deux ans. <\s>
import edsnlp, edsnlp.pipes as eds

nlp = edsnlp.blank("eds")
nlp.add_pipe("sentencizer")

text = """Le patient est admis le 23 août 2021 pour une douleur à l'estomac"
Il lui était arrivé la même chose il y a deux ans.
"""

doc = nlp(text)

for sentence in doc.sents:
    print("<s>", sentence, "</s>")
# Out: <s> Le patient est admis le 23 août 2021 pour une douleur à l'estomac
# Out: Il lui était arrivé la même chose il y a deux ans. <\s>

Notice how EDS-NLP's implementation is more robust to ill-defined sentence endings.

Parameters

PARAMETER DESCRIPTION
nlp

The pipeline object.

TYPE: PipelineProtocol

name

The name of the component.

TYPE: str DEFAULT: 'sentences'

punct_chars

Punctuation characters.

TYPE: Optional[List[str]] DEFAULT: None

use_endlines

Whether to use endlines prediction.

TYPE: bool DEFAULT: None

ignore_excluded

Whether to skip excluded tokens (requires the upstream eds.normalizer pipe).

TYPE: bool DEFAULT: True

Authors and citation

The eds.sentences component was developed by AP-HP's Data Science team.