问题标签 [nlp]

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 投票
4 回答
1927 浏览

java - 如何分析简单的英语句子

有没有可用于分析(nlp)简单英文文本的库。例如,如果能做到这一点就完美了;输入:“I am going” 输出:I, go,现在进行时

0 投票
1 回答
65 浏览

ruby - 从文本中提取统计信息

我想知道 ruby​​ 中给定文本或文本组(从数据库中提取)中最经常出现的内容是什么。

有谁知道最佳实践是什么?

0 投票
9 回答
687 浏览

tdd - TDD 和贝叶斯垃圾邮件过滤器问题

众所周知,贝叶斯分类器是过滤垃圾邮件的有效方法。这些可以相当简洁(我们的只有几百个 LoC),但是在获得任何结果之前,所有核心代码都需要预先编写。

但是,TDD 方法要求只能编写通过测试的最少代码量,因此给出以下方法签名:

下面的文本字符串,显然是垃圾邮件:

我能写的最少代码是:

现在也许我添加另一个测试消息,例如

我可以将代码更改为:

...等等等等。直到某个时候,代码变成了一堆字符串检查、正则表达式等,因为我们已经进化了它,而不是从一开始就考虑它并以不同的方式编写它。

那么,TDD 应该如何处理这种从最简单的代码演变为通过测试的代码不是正确的方法的情况呢?(特别是如果事先知道最好的实现不能简单地进化)。

0 投票
6 回答
319 浏览

python - 在文件中突出但不完全重复的行

我正在梳理一个 webapp 的日志文件,以获得突出的语句。

大多数线条相似且无趣。我会通过 Unix 传递它们uniq,但是不会过滤任何内容,因为所有行都略有不同:它们都有不同的时间戳,类似的语句可能会打印不同的用户 ID,等等。

有什么方法和/或工具来获得与其他明显不同的线条?(但是,再次,不是精确的重复)

我正在考虑使用 Python 的difflib,但这似乎是为了区分两个文件,而不是同一文件中的所有行对。

[编辑]

我假设该解决方案将为每一行给出一个唯一性分数。因此,我的意思是“显着不同”,我选择了一个阈值,该阈值必须超过唯一性得分才能使任何行包含在输出中。

在此基础上,如果还有其他可行的定义方式,欢迎讨论。此外,该方法不必具有 100% 的准确率和召回率。

[/编辑]

例子:

我更喜欢尽可能通用的答案。我知道我可以在开始时去掉时间戳。剥离结尾更具挑战性,因为它的语言可能与文件中的任何其他内容完全不同。这些细节是我之前回避具体例子的原因,但因为有人问......

类似1:

类似2:

不同1:

在不同的 1 情况下,我希望返回两条线,但不希望返回类似它们的其他线。换句话说,这两条线是不同的类型(然后我可以稍后只要求统计上罕见的线类型)。一方面,这两者之间的编辑距离要大得多。

0 投票
5 回答
1761 浏览

php - PHP 中的押韵

我很难找到一种方法来检测两个单词在英语中是否具有相同的押韵。它不必是相同的音节结尾,而是更接近语音相似的东西。

我不敢相信在 2009 年,唯一的办法就是使用那些老式的押韵词典。你知道任何资源(在 PHP 中会是一个加号)来帮助我完成这个痛苦的任务吗?

谢谢你。

你的提示都非常有帮助。我会花一些时间来调查它。无论如何,关于 DoubleMetaPhone 的更多信息可以在适当的 PHP 代码中找到(另一个是扩展)。Php.net中有关于 MethaPhone 功能和 doublemetaphone 的有趣信息。

他们特别提醒双变音与变音相比有多慢(大约慢 100 倍)。

0 投票
21 回答
138409 浏览

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

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

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

也可以看看:

0 投票
1 回答
1448 浏览

php - PHP 文本解析和/或制作自己的语言?

一直在谷歌搜索而没有找到太多东西,所以有没有人知道一个类或库可以帮助你解析任何类型的语言,比如域特定语言(我正在创建一个,所以我在语法和格式方面很灵活可以)进入PHP代码或一些有用的结构或类层次结构或......?在这一点上任何事情都会发生。:)

我想尝试将文本文件解析为标记,构建一个小的语法和语法库来表达诸如Business Natural Languages之类的东西。

0 投票
13 回答
22501 浏览

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

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

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

有人知道更好的算法吗?

0 投票
7 回答
3500 浏览

javascript - 日语/汉字的编程技巧

我有一个想法,可以编写一些网络应用程序来帮助我和其他人更好地学习日语,因为我正在学习日语。

我的问题是该网站主要是英文的,所以它需要混合流利的日文字符,通常是平假名和片假名,但后来是汉字。我越来越接近实现这一目标;我发现页面和源文件需要是 unicode 和 utf-8 内容类型。

但是,我的问题出在实际编码中。我需要的是操作假名的文本字符串。一个例子是:

けす 我需要把那个动词转换成 te 形式的 けして。我更喜欢在 javascript 中执行此操作,因为这将有助于进行更多操作,但如果我必须进行 DB 调用并将所有内容保存在 DB 中。

我的问题不仅是如何用 javascript 来做,还有用其他语言做这些事情的一些技巧和策略。我希望更多地参与语言学习应用程序,但在这方面我迷失了。

0 投票
1 回答
223 浏览

nlp - 用于搜索引擎的俄语文档语料库

我正在研究一种跨语言信息检索,它接受英语查询并搜索俄语文档。要评估这个系统,最好有一组俄罗斯文档可供搜索。有没有人知道我可以搜索的文档集合或我可以轻松地将一堆俄罗斯文档(维基百科除外)拼凑在一起的网站?

文档可以是任何东西,但如果它们位于人类知识的某个特定领域(计算机科学、建筑、工程、艺术、文学分析等),那就太好了。