Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/audio/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Nlp 使用具有重叠单词的短语列表功能训练LUIS模型_Nlp_Botframework_Azure Language Understanding - Fatal编程技术网

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": []
    }
]

我目前正在尝试这个解决方案。感谢示例中的清晰性。我还可以检查一下,在我的例子中,它更像是我需要我的模型来识别由多个单词组成的实体。例如:圣地亚哥需要被认定为一个城市(而不是单独阅读圣地亚哥或圣地亚哥)。同时,我还有另一个短语,如“圣地亚哥比萨饼”,它需要被视为一个单一实体的价值。对于“圣地亚哥”来说,这个短语列表很管用。但一旦我加上“圣地亚哥比萨饼”,这两个短语都不会被发现。你的建议仍然适用吗?很抱歉我错过了!这种方法仍然适用;这对你不起作用很奇怪。。。这对你来说还是个问题吗?如果你有一个回答的例子,你能编辑你的原始问题,包括它吗?我目前正在尝试这个解决方案。感谢示例中的清晰性。我还可以检查一下,在我的例子中,它更像是我需要我的模型来识别由多个单词组成的实体。例如:圣地亚哥需要被认定为一个城市(而不是单独阅读圣地亚哥或圣地亚哥)。同时,我还有另一个短语,如“圣地亚哥比萨饼”,它需要被视为一个单一实体的价值。对于“圣地亚哥”来说,这个短语列表很管用。但一旦我加上“圣地亚哥比萨饼”,这两个短语都不会被发现。你的建议仍然适用吗?很抱歉我错过了!这种方法仍然适用;这对你不起作用很奇怪。。。这对你来说还是个问题吗?如果你有一个回答的例子,你能编辑你的原始问题来包括它吗?