是否可以评估我的模型在Rasa NLU中提取实体(并映射同义词值)的程度?
我尝试了rasa_nlu -evaluate
模式,尽管我的JSON数据文件包含实体信息,但它似乎仅适用于意图分类,我真的很想知道我的实体提取是否达到给定的标记各种情况。我已经使用Tracy生成测试数据集。
答案 0 :(得分:0)
实际上是-您也应该为实体获得分数。 确定要添加一些训练数据吗?
您是否拥有NER算法来获取它们?像这样的东西?
pipeline:
- name: "intent_featurizer_count_vectors"
- name: "intent_classifier_tensorflow_embedding"
batch_size: 64
epochs: 1500
- name: "nlp_spacy"
- name: "tokenizer_spacy"
- name: "ner_crf"
ner_crf
是用于提取“名称实体识别”的条件随机字段
为确保正确遵循模型构建,请看一下本教程: https://hackernoon.com/build-simple-chatbot-with-rasa-part-1-f4c6d5bb1aea
答案 1 :(得分:0)
如文档所述https://rasa.com/docs/nlu/0.12.0/evaluation/,如果您使用的是ner_crf
或ner_duckling
,则评估方法会自动考虑实体提取性能。如果您仅使用ner_synonyms
,则validate方法将不会计算输出表。
其他可能的陷阱可能是:
如果您分析包含所需实体的单个句子,那么您训练有素的模型会提取实体吗?这可能是您的模型无法演化出模式识别实体的情况的线索。
另外一个问题可能是,通过将数据随机分为训练和测试集,测试集中没有实体可以提取。您的算法本来可以学习该模式,但不必强制应用该模式。您是否检查测试集中是否包含实体?
答案 2 :(得分:0)
如果我理解正确,也许您对https://github.com/RasaHQ/rasa_nlu/issues/1472之类的东西感兴趣?因此,之所以写这个问题,是因为您可以获得意图的总体评分,并且可以看到每个意图的分类方式,但是您只能获得实体的整体评分,而不能获得每个实体的分类方式。
因此,简而言之,这仍然是一个未解决的问题,在Rasa中是不可能的。但是,这是我昨天才被问到的一个问题,因此如果我对此有任何进展,我会告诉您。