我正在测试NLP工具,现在我面临着Rasa NLU的问题。
使用API.AI、Wit.ai和LUIS.AI,我可以找到我想要的实体,不超过8-10个例子。另一方面,对于Rasa,我已经有了18个例子,我永远也找不到一个实体。即使我的查询与我的一个示例完全匹配,结果仍然是一个空实体数组。
我在建议的Docker实例中使用Rasa,我当前的管道是["nlp_spacy", "tokenizer_spacy", "intent_featurizer_spacy", "ner_crf", "ner_synonyms", "intent_classifier_sklearn" and "ner_duckling"]
。
我在查询中指定了我的项目和模型,如下所示:
localhost:5000/parse?q=my_sentence&project=my_project&model=my_model
如有任何有用的信息,我们将不胜感激。谢谢!
用实例进行更新
{
"text": "How can I make a carrot cake?",
"intent": "AskRecipe",
"entities": [
{
"start": 17,
"end": 27,
"value": "carrot cake",
"entity": "recipe"
}
]
},
{
"text": "What do I need to make a Lemon Pie?",
"intent": "AskRecipe",
"entities": [
{
"start": 25,
"end": 33,
"value": "Lemon Pie",
"entity": "recipe"
}
]
},
{
"text": "What do I need to make brownies?",
"intent": "AskRecipe",
"entities": [
{
"start": 23,
"end": 30,
"value": "brownies",
"entity": "recipe"
}
]
}
然后,例如,当我试图从“我需要做什么来做布朗尼?”中提取信息时?(这也被列为一个例子)这是结果:
{"entities": [], "intent": {"confidence": 0.8870822891508189, "name": "AskRecipe"}, "text": "What do I need to make brownies?", "intent_ranking": [{"confidence": 0.8870822891508189, "name": "AskRecipe"}, {"confidence": 0.11291771084918109, "name": "greet"}]}
我试了很多其他的例子,但都没有用。
发布于 2017-10-03 16:04:46
我解决了这个问题。
在我的config.json文件中,我将管道值更新为"scapy_sklearn"
,而不是["nlp_spacy", "tokenizer_spacy", "intent_featurizer_spacy", "ner_crf", "ner_synonyms", "intent_classifier_sklearn" and "ner_duckling"]
。
而且,在我训练了一个新的模型之后,我重新启动了我的码头实例。
不过,我必须说,我成功使用的对接实例与我在发布此问题时使用的实例不一样,所以,老实说,我不能100%确定我以前没有破坏任何配置--尽管我认为没有。
我希望这对某人有帮助:)
发布于 2017-11-03 11:15:16
我也有同样的问题,Rasa不承认实体。我看你以不同的方式解决了这个问题,我只想补充一下对我有用的东西,因为我看到了我犯的同样的错误,在贴出的例子中-
结束值必须是('start' index) + (length of 'value')
,所以它应该是这里显示的每个' end‘值+1。
我知道这很简单,但对我来说很有效。
https://stackoverflow.com/questions/46486418
复制相似问题