Kompatibel träningsdata
Kom ihåg att du inte kan mata in rå text direkt till spaCy. I stället behöver du skapa ett Example-objekt för varje träningsexempel. I den här övningen får du öva på att konvertera training_data med en annoterad mening till en lista med Example-objekt.
Modellen en_core_web_sm är redan importerad och tillgänglig som nlp. Klassen Example är också importerad och klar att använda.
Den här övningen är en del av kursen
Naturlig språkbehandling med spaCy
Övningsinstruktioner
- Iterera genom texten och annotationerna i
training_data, konvertera texten till enDoc-behållare och lagra den idoc. - Skapa ett
Example-objekt med hjälp avdoc-objektet och annotationerna för varje träningsdatapunkt, och lagra det iexample_sentence. - Lägg till
example_sentencei listanall_examples.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
example_text = 'A patient with chest pain had hyperthyroidism.'
training_data = [(example_text, {'entities': [(15, 25, 'SYMPTOM'), (30, 45, 'DISEASE')]})]
all_examples = []
# Iterate through text and annotations and convert text to a Doc container
for text, annotations in training_data:
doc = nlp(____)
# Create an Example object from the doc contianer and annotations
example_sentence = ____.____(doc, ____)
print(example_sentence.to_dict(), "\n")
# Append the Example object to the list of all examples
all_examples.append(____)
print("Number of formatted training data: ", len(____))