问题标签 [lemmatization]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
21 回答
138409 浏览

nlp - 如何进行词干提取或词形还原?

我尝试过 PorterStemmer 和 Snowball,但两者都不能处理所有单词,缺少一些非常常见的单词。

我的测试词是:“猫跑仙人掌仙人掌社区”,都答对了不到一半。

也可以看看:

0 投票
13 回答
22501 浏览

algorithm - 如何将复数单词变成单数?

我正在为 ORM 准备一些表名,我想将复数表名转换为单个实体名。我唯一的问题是找到一种可靠的算法。这就是我现在正在做的事情:

  1. 如果一个单词以-ies结尾,我将其替换为-y
  2. 如果一个单词以-es结尾,我删除这个结尾。然而,这并不总是有效 - 例如,它将Types替换为Typ
  3. 否则,我只是删除尾随-s

有人知道更好的算法吗?

0 投票
4 回答
2155 浏览

lemmatization - 如何使用 Morpha Lemmatizer?

我打算使用 WordNet 的 SQL 版本,但我在寻找一种方法来对词进行词形还原以便在数据库中找到它们时遇到了问题;我不能使用 WordNet lemmatizer 本身,因为它适用于 WorldNet 的文本版本。

我在这里读到有一个很好的词形还原器可以返回真实的单词——这正是我所需要的。我下载了建议的词形还原器“Morpha”,但我不明白如何使用它。

  • 是否需要任何编译?
  • 我应该使用哪个文件?
  • 如何在访问 WordNet SQL DB 的应用程序中使用它?
0 投票
6 回答
4302 浏览

language-agnostic - 你能以编程方式检测英语单词的复数形式,并推导出单数形式吗?

给定一些我们假设是复数的(英语)单词,是否可以推导出单数形式?如果可能的话,我想避免查找/字典表。

一些例子:

或者,这似乎是一个相当详尽的列表。

语言库的建议x很好,只要它们是开源的(即,以便有人可以检查它们以确定如何用语言进行操作y

0 投票
2 回答
626 浏览

lucene - 使用 DBsight lucene 的动词屈折形式?

我知道 dbsight 允许使用同义词和停用词进行搜索,但这是否也处理动词的屈折形式,例如对于“游泳”,它应该找到游泳、游泳、游泳、游泳和游泳

DBSight Wiki 上的链接:http ://wiki.dbsight.com/index.php?title=User_dictionary

0 投票
12 回答
123113 浏览

nlp - 词形还原与词干提取有什么区别?

我什么时候使用每个?

另外... NLTK 词形还原是否依赖于词性?如果是这样不是更准确吗?

0 投票
2 回答
1146 浏览

ruby - 在 ruby​​ 中使用词形还原器

我尝试过使用词干分析器,但它产生的单词并没有达到标准。如果您可以让我知道任何用于 ruby​​ 或 lemmatizer gem 的 lemmatizer 脚本或捆绑 wordnet 数据库中单词的引理的 SQL 查询,那就太好了。干杯!

0 投票
4 回答
1730 浏览

sql - SQL词根匹配

我想知道那里的主要 SQL 引擎(MS SQL、Oracle、MySQL)是否有能力理解两个词是相关的,因为它们共享相同的根。

我们知道在搜索“network”时很容易匹配“networking”,因为后者是前者的子字符串。

但是SQL引擎有没有在搜索“networking”时可以匹配“network”的功能呢?

非常感谢。

0 投票
2 回答
2175 浏览

c# - 分析文本(词形还原、编辑距离)

我需要分析文本中存在的禁用词。假设黑名单是单词:“禁止”。这个词有多种形式。在文本中,单词可以是,例如:“forbidding”、“forbidden”、“forbad”。为了将这个词带入初始形式,我使用了过程词形还原。你的建议?

错别字怎么办?
例如:“F0rb1d”。我认为使用 damerau–Levenshtein 或其他。你的建议?

如果文本是这样写的
“ForbiddenInformation.Privatecorrespondenceofthecompany”。或“F0rb1dden1nformation.Privatecorresp0ndenceofthec0mpany。” (是的,没有空格)

如何解决这个问题呢?
最好是快速算法,因为文本是实时处理的。
也许有什么技巧可以提高性能(如何存储等)?

0 投票
4 回答
1033 浏览

perl - 如何找到基本的、不变形的词进行搜索?

我在尝试编写一个将单词的所有变形都视为同一个基本单词的搜索引擎时遇到了麻烦。

  1. 所以对于动词来说,这些都是同一个词根,be
    • 数字/人(例如 am; is; are
    • 过去时或将来时的时态/情绪(例如 是;是;将是
    • 过去分词(例如 has been ; had been
    • 现在分词和动名词(例如 is being ; was not be funny; 早点不如正确重要)
    • 虚拟语气(例如 可能是;对完成某事至关重要我希望这样)⁠⁠⁠⁠</p>

  2. 然后对于名词,单数形式和复数形式都应该算作同一个基本词[ ᴇᴅɪᴛᴏʀ's ɴᴏᴛᴇ:这通常被称为单词的引用形式]

例如,对于“<em>enable”,我不想将“<em>enables”和“<em>enabled”打印为单独的条目。这三个都应该算作同一个基本词,动词enable

我可以使用以下哈希来防止打印重复项:

  1. 有人可以解释一下吗?在下面的评论中解释。

  2. 这并不能阻止复数/过去继续。有没有办法做到这一点,或者一些完全不同的方法,可能涉及一个正则表达式和/或替换,然后是一个 unsub ?

我不能用替换来修改这个词,因为那样打印就不会正确打印出来。虽然我还没到阶段,但最终我想包括不规则过去时 [ ᴇᴅɪᴛᴏʀ's ɴᴏᴛᴇ: 和不规则名词] 以及

我不确定您还需要回答我的问题,所以请让我知道我无意中遗漏的任何内容,我会填写任何缺失的部分以帮助使其更清楚。