【问题标题】:Identify domain related important keywords from a given text从给定文本中识别与域相关的重要关键字
【发布时间】:2020-06-04 04:50:55
【问题描述】:

我对 NLP/文本处理领域比较陌生。我想知道如何从给定的文本中识别与域相关的重要关键字。 例如,如果我必须构建一个将在银行领域使用的问答聊天机器人,那么 Q 会是:TRADE:12345 的到期日期是什么时候?

从 Q 中,我想提取关键字:到期日期 & TRADE:12345。 从提取的信息中,我将构建一个类似 SQL 的查询,搜索数据库,检索 SQL 输出并将响应提供给用户。

任何帮助将不胜感激。

提前致谢。

【问题讨论】:

    标签: python nlp nltk chatbot text-processing


    【解决方案1】:

    所以,这就是工作的用武之地。

    通常人们从停用词列表开始。有好几种,慎重选择。但您很有可能会尝试和/或使用基本列表,然后在该列表中添加更多单词。

    根据列表会取出来

    “什么,是,那个,为了,?”

    由于这是一个非常简单的示例,他们都会这样做。但是您会注意到正在做的事情与您想要的相反。您要求提供特定于域的单词,但正在发生的事情是删除所有其他杂乱无章的内容(到库中)。

    从这里开始,这将取决于您使用什么。 NLTK 或 Spacy 是常见的选择。不管你选择什么,都要真正理解概念,否则它会咬你一口(就像数据科学中的几乎所有东西一样)。

    期望开始思考语言模式,因此,在您的示例中:

    TRADE:12345 的到期日是什么时候?

    “What”是疑问句,“the”是定冠词,“for”是介词短语的开头。

    可能还有其他线索,例如“:”或 TRADE 全部大写。但是,可能不是。

    这应该可以帮助您入门,但您可以查看其他一些 StackExchange 站点以获得更深入的专业知识。

    最后,您希望将这样的问题分解为多个问题(假设您已完成研究并确定该问题尚未被反复询问)。因此,NLTK 和 NLP 是相当新的,但 SQL 查询通常是谷歌搜索。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-11-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-21
      • 2013-02-05
      • 2012-08-15
      • 2011-06-17
      相关资源
      最近更新 更多