LoslegenKostenlos loslegen

Entitäten und Erweiterungen

In dieser Übung kombinierst du benutzerdefinierte Erweiterungsattribute mit den Vorhersagen des Modells und erstellst einen Attribut-Getter, der eine Wikipedia-Such-URL zurückgibt, wenn der Span eine Person, Organisation oder ein Ort ist.

Die Klasse Span ist bereits importiert und das Objekt nlp wurde für dich erstellt.

Diese Übung ist Teil des Kurses

Fortgeschrittenes NLP mit spaCy

Kurs anzeigen

Anleitung zur Übung

  • Vervollständige den Getter get_wikipedia_url, sodass er die URL nur dann zurückgibt, wenn das Label des Spans in der Liste der Labels enthalten ist.
  • Setze die Span-Erweiterung 'wikipedia_url' mithilfe des Getters get_wikipedia_url.
  • Iteriere über die Entitäten im doc und gib ihre Wikipedia-URL aus.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

def get_wikipedia_url(span):
    # Get a Wikipedia URL if the span has one of the labels
    if ____ in ('PERSON', 'ORG', 'GPE', 'LOCATION'):
        entity_text = span.text.replace(' ', '_')
        return "https://en.wikipedia.org/w/index.php?search=" + entity_text

# Set the Span extension wikipedia_url using get getter get_wikipedia_url
____.____(____, ____=____)

doc = nlp("In over fifty years from his very first recordings right through to his last album, David Bowie was at the vanguard of contemporary culture.")
for ent in doc.ents:
    # Print the text and Wikipedia URL of the entity
    print(____, ____)
Code bearbeiten und ausführen