Componenten met extensies
Extensie-attributen zijn extra krachtig als je ze combineert met aangepaste pipelinecomponenten. In deze oefening schrijf je een pipelinecomponent die landnamen vindt en een aangepaste extensie-eigenschap die, als die beschikbaar is, de hoofdstad van een land teruggeeft.
Het object nlp is al aangemaakt en de klasse Span is al geïmporteerd. Een phrase matcher met alle landen is beschikbaar als de variabele matcher. Een woordenboek met landen gekoppeld aan hun hoofdsteden is beschikbaar als de variabele capitals.
Deze oefening maakt deel uit van de cursus
Geavanceerde NLP met spaCy
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
def countries_component(doc):
# Create an entity Span with the label 'GPE' for all matches
doc.ents = [____(____, ____, ____, label=____)
for match_id, start, end in matcher(doc)]
return doc
# Add the component to the pipeline
____.____(____)
print(nlp.pipe_names)