0

我正在使用LUISCognitive Services Emotion API一起工作,该 API对 8 种情绪(愤怒、轻蔑、厌恶、恐惧、幸福、中性、悲伤、惊讶)的图像进行排名。

在我的 LUIS 模型中,我将“情感”定义为一个实体并训练了模型。

LUIS 正确识别了情感实体,但我坚持如何将其映射到情感 API 使用的 8 个已定义词(愤怒、蔑视、厌恶、恐惧、幸福、中立、悲伤、惊讶)。

例如,如果我发送“谁是这里最悲伤的人”,它将返回这个

"entities": [{
  "entity": "saddest",
  "type": "Emotion",
  "startIndex": 11,
  "endIndex": 17,
  "score": 0.967470348
}]

但是如何使用 LUIS 或任何其他 API 将“最悲伤”映射到“悲伤”?

4

2 回答 2

0

我不完全确定你的情况是什么,所以我的回答可能有点偏离。

根据您的描述,我了解到您希望在实体类型和 Emotion API 的情绪类别之间创建映射。我要做的是在 LUIS 中创建 8 种不同的实体类型,例如 Emotion_Anger、Emotion_Sadness 等,然后训练模型使其分别识别这些实体类型。对于您的示例,假设您正确训练了 LUIS 模型,预期结果将是

“entities”:[{ “entity”:“saddest”,“type”:“ Emotion_Sadness ”,“startIndex”:11,“endIndex”:17,“score”:0.967470348 }]

然后,您可以轻松地将实体类型 Emotion_Sadness 映射到悲伤类别。

于 2016-10-07T02:48:18.920 回答
0

我自己通过创建一个名为的实体来实现这一点,该emotion实体使用情感 API 使用的名称(愤怒、蔑视等)为 8 种情感中的每一种都有一个子实体。

带有 8 个子实体的情感实体

然后我训练 LUIS 使用话语区分每种情绪(子实体),现在 LUIS 返回类似这样的内容以响应“谁是最快乐的人”之类的查询(注意我使用了“最快乐”而不是“快乐”是子实体是什么)

  "entities": [
    {
      "entity": "happiest",
      "type": "emotion::happiness",
      "startIndex": 11,
      "endIndex": 18,
      "score": 0.9464528
    }
  ]

使用此响应,我能够确定使用实际名称而不是话语中的文本来识别哪些儿童情绪。

于 2016-10-12T14:29:54.677 回答