我想编写一个程序来询问有关天气的问题。我应该开始研究什么算法和技术。

例如:这个周末在芝加哥会晴天吗?
我想知道意图 =天气查询,日期 =这个周末,位置 =芝加哥。

用户可以以多种形式表达相同的查询。

我想解决一些约束形式,并寻找有关入门的想法。解决方案必须足够好。

最佳答案

由于您的输入采用自然语言形式,因此最好首先通过分析句子结构来开始研究它。并通过NER(命名实体识别器)运行该句子。

解析句子可以使您想到一些规则,例如,某些类型的依存关系总会给您带来意图。运行NER将使您能够确定地点和日期。如果想出一些规则来对意图进行分类不是很简单,那么您也可以使用分类器来完成从输入句子中提取的特征 vector 。实际上,输出的某些解析器可以用于制定特征 vector 。

两者都存在Stanford NLP Group的软件

也许您可以调查一下:

  • Stanford parser
  • Stanford NER Tagger

  • 解析句子后,您就有意图和其他信息来回答问题。

    例:我听了你的话:“这个周末芝加哥会晴天吗?”并通过Online Stanford NER Tagger运行它。这给了我以下几点:
    Will it be sunny this <DATE>weekend</DATE> in <LOCATION>Chicago</LOCATION>
    

    现在,您已经确定了日期和位置。

    我希望这有帮助。我知道答案很笼统,可能对入门非常有帮助。

    关于machine-learning - 如何继续进行NLP任务以识别意图和位置,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11624672/

    10-12 20:21