本文继续围绕工业级业务对话平台和框架Rasa 的Interactive Learning运行原理、运行流程结合实际案例进行解析。
一、Rasa Interactive Learning运行原理、运行流程及案例实战
- Rasa Interactive Learning介绍及应用场景分析
Rasa中的stories包含的训练数据是被core所使用,也就是policies会使用这些训练数据。Rasa提供的” interactive learning”这种与对话机器人进行交互式学习的方式,可以很容易实现stories的编写以及让对话机器人在交互时提供反馈。通过这种强有力的学习方式可以探索你的对话机器人能够做什么。另一方面,通过这样的一步步的交互方式,也很容易进行对话机器人开发调试和修正对话机器人在运行中存在的问题,这是因为Rasa可以提供每一步互动在NLU方面的反馈信息,即Rasa根据你的输入信息获取intent和entities之后,会让你判断这些信息是否正确,如果你确认正确,则对话继续,否则会提供Rasa推荐的intents或者entities让你进行选择,如果你发现Rasa推荐的列表里没有想要的内容,那么可以手动输入新的intent或者新的entities。
从Rasa policies进行预测或者推理的角度来说,通过这种交互式学习,Rasa会让你确认一个policy的预测是否合理,如果不是,会提供推荐的预测列表给你选择,如果列表中没有你要选择的内容,那你可以手动输入下一步需要做什么,在完成交互学习后,Rasa会自动帮你保存训练数据,如更新nlu和stories文件,这是在开发中帮助开发人员产生训练数据的一种有效的方式。基于机器学习对话的一个优势在于当你的对话机器人不知道如何进行处理时,你可以训练它。
你可以在命令行输入rasa interactive来启动交互式学习,如果你有自定义的action,那么需要启动微服务,即需要运行你的action server。
首先启动action server: