当前位置: 首页 > 知识库问答 >
问题:

NLP:从文本中检索词汇

巢权
2023-03-14

我有一些不同语言的文本,可能有一些拼写错误或其他错误,我想检索他们自己的词汇。一般来说,我对自然语言处理没有经验,所以可能我使用了一些不正确的单词。

关于词汇,我指的是一种语言的单词集合,其中每个单词都是唯一的,不考虑性别、数字或时态的屈折变化(例如,think、thinks和thought are都是考虑-思考)。

这是一个主要问题,所以让我们把它简化为一种语言的词汇检索,例如英语,并且没有错误。

我认为(至少)有三种不同的方法,解决方案可能由它们的组合组成:

  • 搜索存储在彼此相关的单词数据库中。因此,我可以搜索思想(考虑动词)并阅读相关信息,即思想是思维的变体
  • 通过处理屈折形式来计算单词的“基本形式”(没有屈折的单词)。也许可以用词干处理来完成?
  • 通过任何API使用服务。是的,我也接受这种方法,但我更喜欢在本地进行

对于第一近似值,算法没有必要区分名词和动词。例如,如果文本中的单词被认为既像名词又像动词,那么可以认为在第二次匹配时它已经出现在词汇表中。

我们将问题简化为检索没有错误的英语文本词汇,并且不考虑单词的标签。

有什么办法吗?或者只是一些提示?

当然,若你们对这个问题还有其他限制(错误和多语言,不仅仅是印欧语言)有什么建议,我们将不胜感激。

共有2个答案

孟新知
2023-03-14

话题词已成为当今世界兴起的争论中不可或缺的一部分。一些人认为主题词(同义词)是有益的,而反对者则认为这会导致许多问题,从而否定了这一概念。在我看来,主题词(同义词)在全球范围内的积极影响大于消极影响。本文将进一步阐述这一趋势的积极和消极影响,从而得出一个合理的结论。

一方面,有无数的理由支持我的信仰。这个话题有很多优点。其中最突出的是主题词(同义词)。根据西悉尼大学进行的研究,超过70%的用户支持主题词(同义词)带来的好处。其次,论文选题的优势。因此,可以说主题词(同义词)在我们的生活中起着至关重要的作用。

另一方面,批评者可能会指出,主题词(同义词)最显著的缺点之一是由于与主题相关的缺点。例如,在美国进行的一项调查揭示了这一缺点。因此,这个例子明确表明,它对我们的存在有各种负面影响。

因此,在检查了进一步的段落后,我深信它的优点比缺点更具说服力。主题词(同义词)已经成为我们生活中至关重要的一部分。因此,应促进主题词(同义词)方法的有效使用;然而,过度和滥用应受到谴责。

茅华灿
2023-03-14

你需要柠檬化——它类似于你的第二项,但不完全是(区别)。

尝试使用用于Python的nltk lemmatizer或用于Java的Standford NLP/Clear NLP。实际上,nltk使用WordNet,所以它实际上是第一种和第二种方法的结合。

为了处理错误,在柠檬化之前使用拼写更正。查看相关问题,或通过谷歌搜索适当的LIB。

关于词性标签——不幸的是,nltk没有考虑POS标签(以及一般的上下文),所以你应该为它提供可以通过nltk pos标签找到的标签。同样,这里已经讨论过了(以及相关/链接的问题)。我不确定斯坦福NLP在这里——我想它应该考虑上下文,但我确信NLTK会这样做。正如我从这段代码片段中看到的,斯坦福不使用POS标签,而Clear NLP使用。

关于其他语言-谷歌的柠檬化模型,由于大多数语言(至少来自同一个家庭)的算法几乎相同,不同之处在于训练数据。看看这里德语的例子;正如我所见,这是几个柠檬酸盐的包装。

然而,您始终可以以精度为代价使用词干分析器,而且词干分析器更容易用于不同的语言

 类似资料:
  • 问题内容: 我希望能够在textarea(HTML)中编写多行文本,并在python中检索此文本以使用Flask进行处理。另外,我希望能够以表格形式编写多行文本。我对使用JS毫无头绪,因此对我没有帮助。我该怎么做呢? 问题答案: 渲染具有表单和文本区域的模板。用于将表单指向将处理数据的视图。从访问数据。

  • 我试图从thymeleaf输入到我的java类中获取一个值。 来自thymeleaf的简单脚本 我如何能够将输入的文本检索到我的java类中? 控制器 我可以运行我的应用程序,并看到thymeleaf视图。当我在文本框中输入一些文本并点击提交时。我收到一个错误。 错误信息 我的应用程序是用Springboot、Java和Thymeleaf创建的。我做错了什么?ModelandView是否可能不能使

  • 我刚刚在doc2vec模型词汇表中遇到了这篇关于单词计数的StackOverflow帖子。我想知道是否有其他方法来检索词频,除了 也许有一种更优雅的方式通过gensim库(即在txt文件中输出单词和频率)?

  • 我希望能够在textarea(HTML)中编写多行文本,并用python检索该文本,以便使用Flask进行处理。或者,我想能够写一个多行文字的形式。我不知道如何使用JS,所以这对我没有帮助。我该怎么做呢?

  • 问题内容: 我有成千上万个包含多个JSON对象的文本文件,但是不幸的是,这些对象之间没有分隔符。对象存储为字典,它们的某些字段本身就是对象。每个对象可能具有可变数量的嵌套对象。具体来说,一个对象可能看起来像这样: 并在文本文件中串联了数百个这样的对象而没有分隔符。这意味着我既不能使用也不可以。 关于如何解决此问题的任何建议。是否有已知的解析器可以执行此操作? 问题答案: 这将从字符串中解码您的JS

  • 我是网页刮刮的新手。我正在使用美丽的汤提取谷歌播放商店。但是,我坚持从div标记中检索文本。Div标记如下所示: 我想检索从“谢谢你的反馈”开始的文本。我使用以下代码检索文本: 但是,上面的命令也返回不需要的文本,即'education.com'和日期。我不确定如何从没有类名的div标记中检索文本,如上面的示例所示。等待你的指引。