Tag: nlp

产生真实词汇的词干algorithm

我需要一段文字,并从中提取“标签”列表。 这大部分是非常简单的。 不过,我现在需要一些帮助来阻止结果的单词列表,以避免重复。 示例:社区/社区 我已经使用了一个Porter Stemmeralgorithm的实现(我正在用PHP编写): http://tartarus.org/~martin/PorterStemmer/php.txt 这有效,但不返回“真实”的话。 上面的例子是“通信”。 我试过“雪球”(在另一个堆栈溢出线程内build议)。 http://snowball.tartarus.org/demo.php 对于我的例子(社区/社区)来说,雪球起源于“communiti”。 题 有没有其他的干扰algorithm可以做到这一点? 有没有人解决了这个问题? 我目前的想法是,我可以使用干扰algorithm来避免重复,然后select我遇到的最短的单词作为显示的实际单词。

无监督情绪分析

我一直在阅读大量的文章,解释在情绪分析系统真正起作用之前,需要分类为“正面”或“负面”的初始文本。 我的问题是:有没有人企图对“积极”形容词与“否定”形容词进行基本检查,考虑到任何简单的否定,以避免将“不快乐”分类为正面? 如果是这样,是否有任何文章讨论为什么这个策略是不现实的?

情感分析字典

我想知道是否有人知道我可以在哪里获得正面和负面的词的字典。 我正在研究情绪分析,这是它的一个关键部分。

文本分类的特征select与缩减

我目前正在做一个项目,一个简单的情绪分析器 ,以便在不同的情况下会有2和3个class 。 我使用的是一个语料相当丰富的语料库 (大约200.000)。 为了特征select ,我使用袋字法,为了减less独特特征的数量,由于出现频率的 阈值而消除。 最后一组特征包括大约20,000个特征,实际上减less了90% ,但是对于testing预测的预期准确性 还不够 。 我依次使用LibSVM和SVM-light进行训练和预测(包括线性和RBF内核 )以及Python和Bash 。 到目前为止观察到的最高精度 是75%左右 ,我至less需要90% 。 二进制分类就是这种情况。 对于多class培训 ,准确率降至〜60% 。 在这两种情况下,我至less需要90% ,并且不能如何增加它:通过优化训练参数或通过优化特征select ? 我已经阅读了关于文本分类中的特征select的文章,并且我发现使用了三种不同的方法,实际上它们之间有明确的相关性。 这些方法如下: 书包的频率方法(BOW) 信息增益 (IG) X ^ 2统计 (CHI) 第一种方法已经是我使用的方法,但是我使用它非常简单,需要指导以更好地使用它以获得足够高的准确性。 我也缺乏关于IG和CHI实际实施的知识,并且希望有任何帮助来指导我。 非常感谢,如果您需要任何其他信息的帮助,请让我知道。 @larsmans: Frequency Threshold(频率阈值) :我正在寻找例子中唯一词的出现次数,例如,如果一个词在不同的例子中频繁出现,它被包含在特征集中作为一个独特的特征。 @TheManWithNoName:首先感谢您解释文档分类的一般问题。 我审查和试验了你提出的所有方法和其他方法。 我发现比例差异 (PD)方法是最好的特征select,其中function单一和术语存在 (TP)的权重(我不明白你为什么标签术语频率逆文档频率 (TF- IDF)作为索引方法,我宁愿把它看作一个特征加权方法)。 正如你所提到的, 预处理也是这个任务的一个重要方面。 我使用某些types的string消除来细化数据以及形态分析和词干 。 另外请注意,我正在使用土耳其语 ,与英语相比,它有不同的特点 […]

Porter和Lancaster干扰algorithm的主要区别和优点是什么?

我正在处理java中的文档分类任务。 两种algorithm都被高度推荐,每种方法的优点和缺点是什么,哪些在自然语言处理任务的文献中更常用?

如何将Cortana命令连接到自定义脚本?

这可能有点早,问这个,但我正在运行Windows 10技术预览版10122.我想build立Cortana有自定义命令。 以下是她的工作方式: Hey Cortana, <she'll listen and process this command> 微软会处理这个命令,如果没有任何东西的话,她只会search关于bing的input。 不过,我希望能够说一些例如 Hey Cortana, I'm going to bed now I'm going to bed now的input触发器运行一个批处理脚本,一个VBScript,一个命令,或者任何一些自定义的响应,基本上做了以下几点。 C:\> shutdown -s 有没有办法为Cortana设置预定义的自定义命令? 更新: 我创build了这个基本的YouTube教程 , 这个更高级的 教程是基于talkitbr的优秀和非常有用的答案下面的相应的GitHub回购 。 起初他的回答超出了我的理解,所以我决定把它分解得更细一些,以便像我这样的未来用户。

句子或文档如何转换为vector?

我们有将单词转换成vector的模型(例如word2vec模型)。 是否存在将句子/文档转换成vector的类似模型,或许是使用为单个词学习的vector?

模糊string比较

我正在努力完成的是一个程序,该程序读入一个文件,并根据原来的句子来比较每个句子。 与原文完美匹配的句子将得到1分,相反的句子将得到0分。所有其他的模糊语句将在1到0之间得到一个分数。 我不确定要使用哪种操作来允许我在Python 3中完成此操作。 我已经包含了示例文本,其中文本1是原始文本,其他前面的string是比较。 文本:示例 文本1:这是一个黑暗和暴风雨的夜晚。 我独自坐在一把红色的椅子上。 我并不完全孤单,因为我有三只猫。 案文20:这是一个阴暗暴风雨的夜晚。 我独自一人坐在深红色的椅子上。 我并不完全孤单,因为我有三只猫,//得分高,但不是1 文本21:这是一个阴暗暴躁的夜晚。 我独自一人坐在深红的教堂里。 我没有完全孤单,因为我有三只猫科动物//比分数低20 文字22:我独自一人坐在深红色的教堂里。 我并不完全孤单,因为我有三只猫。 这是一个阴暗暴风雨的夜晚。 //得分低于文本21但不是0 文字24:这是一个黑暗和暴风雨的夜晚。 我并不孤单。 我没有坐在红色的椅子上。 我有三只猫。 / /应该得分0!

从文本中检测短语和关键字的algorithm

我有大约100兆字节的文本,没有任何标记,分为大约10,000条目。 我想自动生成一个“标签”列表。 问题是,有一些词组(即短语)在分组在一起时才有意义。 如果我只是把这些单词计算在内,我会得到大量真正常见的单词(是,在,在,等等)。 我已经统计了之前和之后的单词和其他单词的数量,但现在我真的不知道下一步该怎么做了。关于2和3个单词短语的信息是存在的,但是如何提取这些数据呢?

机器学习和自然语言处理

假设你知道一个想学习机器学习和自然语言处理的学生。 你会推荐哪些入门科目? 例如 :我猜测,知道Prolog和Matlab可能会帮助他。 他也可能想学习离散结构*,微积分和统计。 *图和树木。 函数:属性,recursion定义,解决重复。 关系:属性,等价,部分秩序。 certificate技巧,归纳certificate。 计数技术和离散概率。 逻辑:命题演算,一阶谓词演算。 正式推理:自然演绎,parsing。 应用程序正确性和自动推理。 计算中的代数结构介绍。