Как предотвратить лемматизацию имен собственных в словосочетаниях - PullRequest
0 голосов
/ 08 июня 2019

У меня есть колонка, в которой я храню фразы на русском языке, которые я использую для таргетинга на людей с помощью систем оплаты за клик.Я хочу лемматизировать эти фразы, но между ними есть фразы, которые содержат названия магазинов.Я хочу лемматизировать все фразы, но не допускать лемматизации названий этих магазинов во фразе.Вот пример для моих входных данных

купить машину на Авито
купить кондиционеры Люком
цены на кухни Киргу

Заглавные слова в выборке входных данных - это названия магазинов.Я попытался создать функцию для этого в Python, используя Pymorphy2.Вот мой код для лемматизации Извините за мой плохой английский

stops = stopwords.words('russian')
morph = pymorphy2.MorphAnalyzer()
def lemmatization_func(x):
words_from_phrase = x.split()
#print(words_from_phrase)
phrase=[]
unique=[]
for word in words_from_phrase:
    if word not in stops:
        lemma = morph.parse(word)
        #print(lemma)
        for item in lemma:
            phrase.append(item.normal_form)


#print(len(phrase))

for i in phrase:
    if i not in unique:
        unique.append(i)


#print(unique)


p_a = ' '.join(str(e) for e in unique)
return p_a 

x = "купить машину на Авито"
j = lemmatization_func(x)
print(j)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...