Совместимые обучающие данные
Напомним, что передавать необработанный текст напрямую в spaCy нельзя. Вместо этого для каждого обучающего примера необходимо создать объект Example. В этом упражнении вы потренируетесь преобразовывать training_data с одним размеченным предложением в список объектов Example.
Модель en_core_web_sm уже импортирована и доступна как nlp. Класс Example также импортирован и готов к использованию.
Это упражнение является частью курса
Обработка естественного языка с помощью spaCy
Инструкции к упражнению
- Выполните итерацию по тексту и аннотациям в
training_data, преобразуйте текст в контейнерDocи сохраните его в переменнуюdoc. - Создайте объект
Exampleс помощью объектаdocи аннотаций каждой точки обучающих данных, сохранив результат в переменнуюexample_sentence. - Добавьте
example_sentenceв списокall_examples.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
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(____))