我在Python和NLP方面是新手,我的难题是如何找出给定问题的意图。例如,我有一组这样的问题和答案:
question:什么是NLP; answer: NLP代表自然语言处理
我对上述问题进行了基本的POS标注
,在上述问题中我得到了实体 [NLP]
,我还进行了字符串匹配
使用这个算法。
我基本面临以下问题:
- 如果用户问
什么是NLP
,那么它会返回准确的答案 - 如果用户问
NLP的含义
,那么它会失败 - 如果用户问
NLP的定义
,那么它会失败 - 如果用户问
什么是自然语言处理
,那么它会失败
那么我应该如何识别给定问题的用户意图呢?因为在我的情况下,字符串匹配或模式匹配不起作用。
回答:
您可以使用DeepPavlov进行意图识别,它支持多标签分类。更多信息可以在http://docs.deeppavlov.ai/en/master/components/classifiers.html找到,演示页面在https://demo.ipavlov.ai