2

What Algorithm/method do I use for a Question Answering System's Question Processing?

我一直在为我的问答系统搜索可能的算法,我认为唯一可以使用的是Parsing,但我在上一个问题中询问了关于解析的问题,并且我认为不可能使用那里的答案?(我不确定)。

我使用的想法Parsing是将问题切割成每个单词的单词,然后它将通过单词存储来确定正在说的单词类型(名词、形容词、动词等)。我使用的目的Parsing是删除或更确切地说是确定问题的主题。

我的另一个想法是ChatterBot. Chatterbot 使用单词查询?如果我没记错的话,请纠正我,这些词被分配给另一个词。它会从查询中随机选择一个词。

示例:用户声明:Hello > ChatterBot 可能的回复:Hi,Hello,Hey

我不太确定在问答中使用的可能方法/算法是什么,我已经阅读了维基百科的帖子:http ://en.wikipedia.org/wiki/Question_answering但我不太明白使用什么算法在Question Processing.

谢谢你。

PS:我正在用 Javascript 开发。Q = 问题

4

2 回答 2

1

您可以使用朴素贝叶斯分类器来查看问题并确定它们的主题。你需要大量的训练数据和一个相当狭窄的领域。

对这个问题的复杂反应涉及很多机器推理技术,这些技术有点超出我的技能水平,无法很好地解释。我的想法是使用一个马尔可夫网络,其中每个单词与旁边的一两个单词都有优势。对每个单词进行一系列测试,以表明该单词可能的成员身份及其可能的含义(例如,如果 Mark 大写,则它更可能是一个名称,但如果下一个单词是 'a',则它可能用于动词的意义。)从那里机器可以尝试确定句子的实际含义,这将再次依赖于使用难以想象的大量训练数据。

如果您有兴趣成为该领域的专家,Coursera 的概率图形模型课程(可能也是他们的 NLP 课程)可能是最好的资源。(PGM 是我对此一无所知的唯一原因!)

于 2012-08-31T17:57:49.960 回答
0

这是一本很棒的书,您可能需要阅读才能获得很多与 NLP 和问答系统相关的内容http://www.amazon.com/Speech-Language-Processing-2nd-Edition/dp/0131873210

这本书有一个完整的部分(V.Applications),它将帮助你开发一个好的系统。但请注意,本书仅讨论理论和算法(无代码)

这不仅仅是解析文本,您需要了解上下文以提供更好的答案。实际上,您需要提取一些关键字并忽略其他所有内容。

您也可以阅读主题关键字(词袋)、算法(例如(TF/IDF))。

于 2012-09-02T00:56:40.250 回答