В предложении «Я сэкономил 6 сотен долларов». spacy NER признает «$ 6 сотен» как ДЕНЬГИ.
Все идет нормально.
Но в предложении «я сэкономил 600 долларов». он распознает «600» как ДЕНЬГИ - без знака доллара!
Это кажется противоречивым. Я что-то пропустил?
Вот код для воспроизведения:
import en_core_web_sm
nlp = en_core_web_sm.load()
def print_entities(txt):
print("Entities for input: '{}'".format(txt))
doc = nlp(txt)
for entity in doc.ents:
print('\t', entity.text, entity.label_)
print_entities("I saved $6 hundred.")
print_entities("I saved $600.")
Это дает вывод:
Entities for input: 'I saved $6 hundred.'
$6 hundred MONEY
Entities for input: 'I saved $600.'
600 MONEY
Я делаю это в свежей виртуальной среде python 3.6.8 с spacy версией 2.1.3 и en_core_web_sm версией 2.1.0