Нужно знать разницу между моделью spaCy's en и en_core_web_sm.
Я пытаюсь сделать NER с Spacy. (Для названия организации)
Пожалуйста, найдите ниже скрипт, который я использую
import spacy
nlp = spacy.load("en_core_web_sm")
text = "But Google is starting from behind. The company made a late push \
into hardware, and Apple’s Siri, available on iPhones, and Amazon’s \
Alexa software, which runs on its Echo and Dot devices, have clear
leads in consumer adoption."
doc = nlp(text)
for ent in doc.ents:
print(ent.text, ent.start_char, ent.end_char, ent.label_)
И выше, не предоставляя мне никакого выхода.
Но когда я использую «en» модель
import spacy
nlp = spacy.load("en")
text = "But Google is starting from behind. The company made a late push \
into hardware, and Apple’s Siri, available on iPhones, and Amazon’s \
Alexa software, which runs on its Echo and Dot devices, have clear
leads in consumer adoption."
doc = nlp(text)
for ent in doc.ents:
print(ent.text, ent.start_char, ent.end_char, ent.label_)
это дает мне желаемый результат:
Google 4 10 ORG
Apple Siri 92 104 ORG
айфоны 119 126 ORG
Amazon 132 138 ORG
Echo and Dot 182 194 ORG
Что в этом плохого?
Пожалуйста, помогите.
можно ли использовать модель en_core_web_sm для получения того же результата, что и модель en. если да, то, пожалуйста, совет, как это сделать. Требуется скрипт Python 3 с пандами df в качестве входных данных. Спасибо