У меня есть список примерно из 100 ключевых слов, и мне нужно искать их в огромном корпусе из более чем 0,1 миллиона документов.
Мне не нужно точное соответствие, например, если ключевое слово - Фонд роста, я ожидаю все совпадения, такие как фонды роста, фонд роста Америки и т. Д.
Есть предложения по этому поводу?
Я пробовал использовать Spacy PhraseMatcher, но он дает ValueError: [T001] Максимальная длина в настоящее время 10 для сопоставления фраз.
import spacy
from spacy.matcher import PhraseMatcher
full_funds_list_flat = "<list of 100+ Keywords>"
nlp = spacy.load('en_core_web_sm')
keyword_patterns = [nlp(text) for text in full_funds_list_flat]
matcher = PhraseMatcher(nlp.vocab)
matcher.add('KEYWORD', None, *keyword_patterns)