api显示句子中的单词的上下文

时间:2013-02-24 20:56:28

标签: api machine-learning nlp speech

您好我很好奇API用于确定句子中单词的上下文

自从我看到情绪聚合器的出现 - 试图评估句子情绪的脚本 - 我一直想知道更复杂的版本。基本上我看到的情绪激动者实际上非常简单,他们只是尝试为句子分配正面和负面的价值,但仍然不知道背景。同样地,我对机器检测上下文的当前进展感到失望

我在想一个更复杂的算法会为一个单词分配更多属性并将它们与其他单词进行比较

示例:

The quick brown fox jumped over a lazy dog.

单词fox将被解释为对象

{
    word: fox,
    type: noun,
    relation: ...
}
现在,它知道狐狸指的是哺乳动物,而不是动词“欺骗的障碍”,这对于翻译成另一种语言或判断一个机器人的良好反应是有用的

有没有适合这个或开源项目的API?

3 个答案:

答案 0 :(得分:2)

从未深入研究NLP,但听起来像“词性标记”可能会让你知道一个单词是特定上下文中的名词还是动词。至少,这个适用于你的句子。 http://cogcomp.cs.illinois.edu/demo/pos/?id=4

答案 1 :(得分:1)

对于高级情感分析,一个可能的步骤是找到每个单词的单词意义和单词之间的依赖关系。有了这些信息后,你可以做很多事情。例如,您可以处理否定,使用育儿(更广泛的概念)来平滑感官等。您还可以超越简单的喜欢/不喜欢来识别目标意图或主题(例如,暴力,非法活动等)。正确检测单词感的能力消除了大部分噪音。 (例如,“喜欢”这个词并没有表达“像其他人一样,我......”的情感。)

答案 2 :(得分:0)

单词具有一些含义,如你所提到的,它们在不同的句子中有不同的含义。让我们假设一个单词有一个含义列表。当将一个单词从一种语言翻译成另一种语言时,单词意义可以被预测为该列表中的含义最有可能成为该句子(在给定句子中与其他单词成为概率的可能性更高)

这种情况可以通过机器学习中的HMM来解决。您可以从康奈尔大学的网站上阅读blog post关于隐马尔可夫模型和文本翻译的内容。

你应该看看那种API。斯坦福大学有一个Java NLP Api,您应该在这里查看:http://dbpubs.stanford.edu:8091/~klein/javadoc/edu/stanford/nlp/ie/hmm/package-tree.html