2

以下是让我感到困惑的问题。希望这里的朋友能解惑。

  1. Api.ai 和 RASA NLU 都是用于自然语言处理和自然语言生成的库?我对吗

  2. 我们可以在 Tensorflow 中进行 NLU,以便我们可以在 Tensorflow 本身中执行所有 NLU + ML 操作吗?

  3. 如果我将 Api.ai 或 RASA NLU 用于 NLU 目的,我如何使用 Api.ai 或 RASA NLU 执行 ML 操作?我们能否构建自己的 ML 模型并使其与 Api.ai 或 RASA NLU 一起使用

设想

假设我只想构建一个聊天机器人。

  1. 我对 NLU 使用 API.ai 或 RASA NLU,即将输入分解为意图和实体。

  2. 现在我必须创建自己的 ML 模型来训练我将使用 Tensor 流创建的一些数据集。

  3. 我怎样才能将这两者结合起来使其功能强大?

提前致谢

4

2 回答 2

3

回答您的具体问题:

  1. 不,Rasa NLU 是一个库;API.ai(现在称为 Dialogflow)是一种产品,目前归 Google 所有。自然语言生成也不行。他们主要做自然语言理解。对于 Rasa NLU,这仅限于意图和实体分类。Dialogflow 还包括上下文、网络挂钩等内容。要使用 Rasa 获得更多功能,您还需要研究Rasa Core
  2. 肯定有人用 tensorflow 做 NLU。Rasa NLU 不使用它,我不知道我们是否确切知道 Dialogflow 是如何工作的。
  3. 使用 Rasa NLU 或 Dialoflow 之类的东西的全部意义在于抽象出大量有关 ML 如何工作的必要知识。如果您想实现自己的分类器,请查看上面的 tensorflow 链接或查看MITIEspacy和 sklearn,它们是 Rasa 打包的两个后端。

希望这能解决问题。为了巩固给定的场景,如果您使用 Rasa 或 DialogFlow,则不需要额外的 ML。他们在各自的引擎盖下这样做。

  • Dialogflow 打包了完整聊天机器人解决方案所需的一切。
  • Rasa NLU 可以与 Botkit 或 Rasa Core 一起使用,以获得完整的聊天机器人解决方案。
于 2017-11-20T04:30:40.213 回答
1

1) 如前所述,RASA NLU 是一个库,而 Api.AI 是一项服务。

2)是的!RASA 现在支持使用 TensorFlow 作为管道的一部分。

3) RASA 的优点之一是它允许您使用与 Api.ai (Now Dialogflow) 相同的 API,因此您可以为两者使用相同的训练数据。但是,我认为您最好坚持使用 RASA 而不是 Dialogflow 之类的服务。

于 2018-06-23T16:27:41.053 回答