许多NLP API提供API.ai和wit.ai等意图提取.但是我不清楚他们的细节.他们是做依赖解析然后提取关系,还是简单地从句子中取出关键词?如何解析“检查明天是否会下雨”? 最佳答案 我知道有一些方法.它们可以一起用作输出分数的整体.
(1)将意图映射到字符串文字.比较这些字符串文字以获得完全匹配或余弦相似性.
(2)根据背景缩小可能意图的范围.
(3)正则表达式匹配:如果句子包含特征正则表达式(如电话号码),那么它至少可以“缩小搜索范围”.
(4)单词移动距离:它类似于单词嵌入(即深度学习NLP),但整个句子被传入,并且与另一个句子的总距离进行比较.
(5)使用双向LSTM:见tutorial或tensorflow.
(6)使用命名实体识别(NER)保留“候选意图”列表. spaCy这样做.更好的是将它用于subject-object extraction.
(7)如果找不到,则使用“后备意图”.这可以指“层次意图”,其中底层叶子表示您所指的意图.这也可以指“机器人不知道该说什么”的意图.