Мне интересно, есть ли какой-нибудь эффективный способ извлечь ожидаемую целевую фразу или ключевую фразу из данного предложения. До сих пор я маркировал данное предложение и получал POS-тег для каждого слова. Теперь я не уверен, как извлечь целевую ключевую фразу или ключевое слово из данного предложения. Способ сделать это не интуитивно для меня.
Вот мой список предложений:
sentence_List= {"Obviously one of the most important features of any computer is the human interface.", "Good for everyday computing and web browsing.",
"My problem was with DELL Customer Service", "I play a lot of casual games online[comma] and the touchpad is very responsive"}
вот символическое предложение:
from nltk.tokenize import word_tokenize
tokenized_sents = [word_tokenize(i) for i in sentence_List]
tokenized=[i for i in tokenized_sents]
Здесь я использовал Spacy
, чтобы получить POS-тег слов:
import spacy
nlp = spacy.load('en_core_web_sm')
res=[]
for i in range(len(sentence_list.index)):
for token in i:
res.append(token.pos_)
, поэтому я могу использовать NER
(a.k.a, отношение сущность имени) из spacy
, но его вывод не совпадает с моей заранее определенной ожидаемой целевой фразой. Кто-нибудь знает, как выполнить эту задачу, используя модуль Spacy
или stanfordcorenlp
в Python? Какое эффективное решение сделать это? Любая идея? Заранее спасибо:)
желаемый вывод :
Я хочу получить список целевой фразы из соответствующего списка предложений следующим образом:
target_phraseList={"human interface","everyday computing","DELL Customer Service","touchpad"}
, поэтому я объединяю свой ввод sentence_list
с ожидаемой целевой фразой, мой конечный желаемый результат будет выглядеть так:
import pandas as pd
df=pd.Series(sentence_List, target_phraseList)
df=pd.DataFrame(df)
Как я могу получить мои ожидаемые целевые фразы из заданного списка входных предложений, используя spacy
? Есть идеи?