Python “填写”搜索词的NLP算法
我正在尝试编写一个算法,我假设它将依赖自然语言处理技术来“填充”搜索词列表。这类事情可能有一个名字我不知道。这类问题叫什么?什么样的算法会给出以下行为 输入:Python “填写”搜索词的NLP算法,python,nlp,n-gram,Python,Nlp,N Gram,我正在尝试编写一个算法,我假设它将依赖自然语言处理技术来“填充”搜索词列表。这类事情可能有一个名字我不知道。这类问题叫什么?什么样的算法会给出以下行为 输入: docs = [ "I bought a ticket to the Dolphin Watching cruise", "I enjoyed the Dolphin Watching tour", "The Miami Dolphins lost again!", "It was good goi
docs = [
"I bought a ticket to the Dolphin Watching cruise",
"I enjoyed the Dolphin Watching tour",
"The Miami Dolphins lost again!",
"It was good going to that Miami Dolphins game"
],
search_term = "Dolphin"
输出:
["Dolphin Watching", "Miami Dolphins"]
它应该基本上知道,如果海豚出现在所有,它几乎总是要么在大公海豚观看或迈阿密海豚。首选Python解决方案。我在大学的NLP课上使用了,取得了不错的成功。我认为它有一些标记器可以帮助你确定哪些是名词,并帮助你把它解析成一棵树。我不太记得了,但我会从那里开始
它应该基本上知道,如果海豚出现在所有,它几乎总是要么在大公海豚观看或迈阿密海豚
听起来你想确定海豚出现在什么地方。搭配查找有多种方法,最常用的方法是计算语料库中术语之间的PMI,然后选择PMI最高的术语。你可能还记得我之前建议的PMI
NLTK as中包含了各种搭配查找方法的Python实现。1999年对该区域进行了一些深入的研究,但该主题仍然是最新的。您如何知道海豚是bigrams海豚观察组织或迈阿密海豚组织的一部分?是不是因为每个二字格中的两个词都是大写的?或者你有另一个包含所需bigrams的列表吗?@RobertHarvey:一个好的NLP算法应该能够将[迈阿密海豚]作为一个术语解析出来。和[看海豚]一样。当你把每一个短语都当作一个问题来思考时,会更容易。问:你喜欢看什么巡演?A:[观看海豚]巡回赛],问:谁输了这场比赛?答:【迈阿密海豚】。您必须将其解析为一棵树,以查看哪些内容属于哪些内容。无论如何,这不是一个容易的问题……但你可以得到一些准确的结果。@RobertHarvey我有一个特定单词的列表,所以我知道海豚肯定在那里的某个地方。