1

我是 rasa 的新手,并开始创建一个非常特定于域的聊天机器人。作为其中的一部分,我理解使用监督嵌入作为 nlu 管道的一部分会更好,因为我的用例是特定于域的。

我的 nlu.md 中有一个示例意图

## create_system_and_config
- create a [VM](system) of [12 GB](config) 

如果我尝试使用有监督的特征化器,它可能适用于我的特定领域实体,但我担心的是,仅使用监督学习,我们会不会失去预训练模型的优势?例如,在诸如add a (some_system) of (some_config). add 和 create 密切相关。预先训练的模型将能够轻松地选择此类动词。是否可以结合预训练模型,然后在我们的 nlu 管道中在其之上进行一些监督学习,比如迁移学习?

4

1 回答 1

0

如果您正在创建特定领域的聊天机器人,最好使用监督嵌入而不是预训练

例如,在一般英语中,“平衡”一词与“对称”密切相关,但与“现金”一词却截然不同。在银行领域,“余额”和“现金”密切相关,您希望您的模型能够捕捉到这一点。

在你的情况下

您的模型需要捕捉到虚拟机和虚拟机是相同的词。预训练的特征化器没有经过训练来捕捉这一点,它们更通用。

在管道中使用预训练词嵌入的优势在于,如果您有一个训练示例,例如:“我想买苹果”,并且要求 Rasa 预测“get pears”的意图,那么您的模型已经知道“apples”和“pears”这两个词非常相似。如果您没有足够的训练数据,这将特别有用

有关更多详细信息,您可以参考Rasa 文档

于 2020-09-01T08:28:17.423 回答