0

我正在用 rasa-nlu 构建一个聊天机器人。我完成了教程,并构建了一个简单的机器人。但是,我需要大量的训练数据来构建一个能够预订出租车的聊天机器人。所以我需要数据来构建一个特定的机器人。

是否有用于预订出租车的存储库或语料库?或者有没有办法生成这种数据集?

4

4 回答 4

4

这是 Rasa 的一位创始人的博客文章,我认为它有一些非常好的建议。我认为您以错误的方式要求预先构建的训练集。自己开始,然后添加朋友等,直到您构建了最适合您的机器人的训练集。

穿上你的机器人服装

除此之外,Rasa 文档还可以提高模型性能

当 rasa_nlu 服务器运行时,它会跟踪它所做的所有预测并将这些预测保存到日志文件中。默认情况下,日志文件放在 logs/. 此目录中的文件每行包含一个 json 对象。您可以修复任何不正确的预测并将它们添加到您的训练集中以改进您的解析器。

我想您会惊讶于仅使用您自己想出的训练集就能走多远。

祝你找到语料库好运,但无论如何希望这些链接和片段有所帮助。

于 2017-08-22T16:01:58.397 回答
2

以下链接包含与商业聊天机器人应用程序(“人机”对话)相关的数据集。它是一个相当全面的人机和人机文本对话数据集以及音频对话数据集的集合。https://breakend.github.io/DialogDatasets/

于 2018-05-27T18:48:21.217 回答
2

在尝试建立恋爱关系教练机器人时,我们确实遇到了同样的问题。长话短说,我们决定创建一个简单的工具来从我们的朋友、同事或 Mechanical Turk 上的人那里收集数据:https ://chatbotstrap.io 。

我们的想法是创建这样的民意调查:https ://chatbotstrap.io/en/project/q5pimyskbhna2rm?language=en&nb_scenarios=10 并将它们发送给您认识的任何人。使用该解决方案,我们能够在几天内构建一个包含 6000 多个句子的数据集,分为 10 个意图。

只要您同意使用它构建的数据集可以开源,该工具是免费的。如果您希望成为您收集的数据的唯一受益人,他们也是付费计划。

于 2020-03-16T16:44:40.450 回答
2

这样做的一种方法是,前往LUIS.AI

使用 Office 365 登录,制作您自己的出租车预订应用程序,提供如下意图和表达:

在此处输入图像描述

在此处输入图像描述

现在在训练和发布模型之后,下载如下的语料库: 在此处输入图像描述

现在,下载语料库后,它看起来像这样: 在此处输入图像描述

安装RASA NLU,我的机器是Windows 8.1,所以步骤如下:

这些是配置 RASA 的步骤:

首次安装:用于安装 Python 3.6 解释器的 Anaconda 4.3.0 64 位 Windows:https ://repo.continuum.io/archive/Anaconda3-4.3.0-Windows-x86_64.exe

&

适用于 Visual Studio 2015 的 Python 工具:https ://ptvs.azureedge.net/download/PTVS%202.2.6%20VS%202015.msi

接下来,在命令提示符下以管理模式按此顺序安装以下软件包:

  1. Spacy 机器学习包:pip install -U spacy
  2. Spacy 英语语言模型:python -m spacy 下载
  3. Scikit 包:pip install -U scikit-learn
  4. 用于数学计算的 Numpy 包:pip install -U numpy
  5. Scipy 包:pip install -U scipy
  6. 用于意图识别的 Sklearn 包:pip install -U sklearn-crfsuite
  7. NER Duckling 使用 Spacy 更好地识别实体:pip install -U duckling
  8. RASA NLU:pip install -U rasa_nlu==0.10.4

成功安装上述所有软件包后,制作一个将被 RASA 读取的 spaCy 配置文件,如下所示:

{
    "project": "Travel",
    "pipeline": "spacy_sklearn",
    "language": "en",
    "num_threads": 1,
    "max_training_processes": 1,
    "path": "C:\\Users\\Kunal\\Desktop\\RASA\\models",
    "response_log": "C:\\Users\\Kunal\\Desktop\\RASA\\log",
    "config": "C:\\Users\\Kunal\\Desktop\\RASA\\config_spacy.json",
    "log_level": "INFO",
    "port": 5000,
    "data": "C:\\Users\\Kunal\\Desktop\\RASA\\data\\FlightBotFinal.json",
    "emulate": "luis",
    "spacy_model_name": "en",
    "token": null,
    "cors_origins": ["*"],
    "aws_endpoint_url": null
  }

接下来,制作这样的目录结构:

数据文件夹-> 将包含所有 LUIS 格式的语料库

模型-> 将包含所有经过训练的模型

日志-> 将包含主动学习日志和 RASA 框架日志

像这样,

在此处输入图像描述

现在,为训练和启动 RASA NLU 服务器制作批处理文件脚本。

通过记事本或 Visual Studio Code 制作一个 TrainRASA.bat 并编写以下代码:

 python -m rasa_nlu.train -c config_spacy.json
 pause

现在用记事本或 Visual Studio Code 制作一个 StartRASA.bat 并写下:

python -m rasa_nlu.server -c config_spacy.json
pause

现在通过单击您刚刚创建的批处理文件脚本来训练并启动 RASA 服务器。

现在,一切准备就绪,只需启动 chrome 并向您的 enpoint /parse 发出 HTTP GET 请求

喜欢:http://localhost:5000/parse?q= &project=

您将获得与 Bot Framework C# 的 LUISResult 类对应的 JSON 响应。

在此处输入图像描述

现在处理您想要执行的业务逻辑。

或者,您可以查看 RASA Core,它主要是为此目的而构建的。

RASA Core,它使用机器学习来构建对话,而不是简单的 if-else 语句。

于 2017-11-04T15:24:41.057 回答