Nlp 使用具有重叠单词的短语列表功能训练LUIS模型
我有一个词,例如Nlp 使用具有重叠单词的短语列表功能训练LUIS模型,nlp,botframework,azure-language-understanding,Nlp,Botframework,Azure Language Understanding,我有一个词,例如abcsss。我需要将其确认为一个实体。同时,这个短语位于许多其他单词之前,这些单词需要被识别为一个不可互换的实体。例如ABC-SSS-word。我如何训练路易斯做到这一点。我尝试将ABC-SSS作为一个短语功能,但LUIS没有将ABC-SSS-word识别为一个实体。目前,我将abcsss标记为特征短语,将word标记为单独的特征短语。这并不理想。感谢您的帮助。复合实体非常适合这种情况: 将“ABC SSS”设置为实体1,然后将“ABC SSS”加上其他单词标记为复合实体2。这
abcsss
。我需要将其确认为一个实体。同时,这个短语位于许多其他单词之前,这些单词需要被识别为一个不可互换的实体。例如ABC-SSS-word
。我如何训练路易斯做到这一点。我尝试将ABC-SSS
作为一个短语功能,但LUIS没有将ABC-SSS-word
识别为一个实体。目前,我将abcsss
标记为特征短语,将word
标记为单独的特征短语。这并不理想。感谢您的帮助。复合实体非常适合这种情况:
将“ABC SSS”设置为实体1,然后将“ABC SSS”加上其他单词标记为复合实体2。这应该足以将“ABC SSS”捕获为实体1,并在出现其他短语的情况下将整个句子捕获为实体2
此外,如果您想在其上捕获其他单词,也可以将其标记为实体。复合实体非常适合这种情况: 将“ABC SSS”设置为实体1,然后将“ABC SSS”加上其他单词标记为复合实体2。这应该足以将“ABC SSS”捕获为实体1,并在出现其他短语的情况下将整个句子捕获为实体2
此外,如果您想在其上捕获其他单词,也可以将其标记为实体。您需要创建复合实体,而不是为此使用短语列表 这是路易斯的实体创建页面截图。我创建了三个简单实体和一个复合实体,其中包括其他三个实体:
"compositeEntities": [
{
"parentType": "Pizza",
"value": "large",
"children": [
{
"type": "PizzaSize",
"value": "large"
}
]
},
{
"parentType": "Pizza",
"value": "pepperoni",
"children": [
{
"type": "PizzaTopping",
"value": "pepperoni"
}
]
},
{
"parentType": "Pizza",
"value": "pizza",
"children": []
}
]
下面是我从路易斯那里得到的关于一个查询的回复中的一些片段。第一位表示实际查询和匹配的意图
"query": "order large pepperoni pizza",
"topScoringIntent": {
"intent": "OrderPizza",
"score": 0.9999995
},
在“实体”列表下,您可以同时找到简单实体和复合实体,如下所示
{
"entity": "large",
"type": "PizzaSize",
"startIndex": 6,
"endIndex": 10,
"score": 0.9186653
},
{
"entity": "large",
"type": "Pizza", // This is the composite entity!
"startIndex": 6,
"endIndex": 10,
"score": 0.940835536
}
下面是复合实体的列表:
"compositeEntities": [
{
"parentType": "Pizza",
"value": "large",
"children": [
{
"type": "PizzaSize",
"value": "large"
}
]
},
{
"parentType": "Pizza",
"value": "pepperoni",
"children": [
{
"type": "PizzaTopping",
"value": "pepperoni"
}
]
},
{
"parentType": "Pizza",
"value": "pizza",
"children": []
}
]
您需要创建复合实体,而不是为此使用短语列表 这是路易斯的实体创建页面截图。我创建了三个简单实体和一个复合实体,其中包括其他三个实体:
"compositeEntities": [
{
"parentType": "Pizza",
"value": "large",
"children": [
{
"type": "PizzaSize",
"value": "large"
}
]
},
{
"parentType": "Pizza",
"value": "pepperoni",
"children": [
{
"type": "PizzaTopping",
"value": "pepperoni"
}
]
},
{
"parentType": "Pizza",
"value": "pizza",
"children": []
}
]
下面是我从路易斯那里得到的关于一个查询的回复中的一些片段。第一位表示实际查询和匹配的意图
"query": "order large pepperoni pizza",
"topScoringIntent": {
"intent": "OrderPizza",
"score": 0.9999995
},
在“实体”列表下,您可以同时找到简单实体和复合实体,如下所示
{
"entity": "large",
"type": "PizzaSize",
"startIndex": 6,
"endIndex": 10,
"score": 0.9186653
},
{
"entity": "large",
"type": "Pizza", // This is the composite entity!
"startIndex": 6,
"endIndex": 10,
"score": 0.940835536
}
下面是复合实体的列表:
"compositeEntities": [
{
"parentType": "Pizza",
"value": "large",
"children": [
{
"type": "PizzaSize",
"value": "large"
}
]
},
{
"parentType": "Pizza",
"value": "pepperoni",
"children": [
{
"type": "PizzaTopping",
"value": "pepperoni"
}
]
},
{
"parentType": "Pizza",
"value": "pizza",
"children": []
}
]
我目前正在尝试这个解决方案。感谢示例中的清晰性。我还可以检查一下,在我的例子中,它更像是我需要我的模型来识别由多个单词组成的实体。例如:圣地亚哥需要被认定为一个城市(而不是单独阅读圣地亚哥或圣地亚哥)。同时,我还有另一个短语,如“圣地亚哥比萨饼”,它需要被视为一个单一实体的价值。对于“圣地亚哥”来说,这个短语列表很管用。但一旦我加上“圣地亚哥比萨饼”,这两个短语都不会被发现。你的建议仍然适用吗?很抱歉我错过了!这种方法仍然适用;这对你不起作用很奇怪。。。这对你来说还是个问题吗?如果你有一个回答的例子,你能编辑你的原始问题,包括它吗?我目前正在尝试这个解决方案。感谢示例中的清晰性。我还可以检查一下,在我的例子中,它更像是我需要我的模型来识别由多个单词组成的实体。例如:圣地亚哥需要被认定为一个城市(而不是单独阅读圣地亚哥或圣地亚哥)。同时,我还有另一个短语,如“圣地亚哥比萨饼”,它需要被视为一个单一实体的价值。对于“圣地亚哥”来说,这个短语列表很管用。但一旦我加上“圣地亚哥比萨饼”,这两个短语都不会被发现。你的建议仍然适用吗?很抱歉我错过了!这种方法仍然适用;这对你不起作用很奇怪。。。这对你来说还是个问题吗?如果你有一个回答的例子,你能编辑你的原始问题来包括它吗?