1.17 自然语言理解
自然语言理解的目的是为聊天任务生成一种语义表示形式[8] 。通常来说,聊天机器人系统中的自然语言理解功能包括用户意图识别、用户情感识别、指代消解、省略恢复、回复确认及拒识判断等技术。
1)用户意图识别:用户意图又包括显式意图和隐式意图,显示意图通常对应一个明确的需求,如用户输入“我想预定一个标准间”,明确表明了想要预定房间的意图;而隐式意图则较难判断,如用户输入“我的手机用了三年了”,有可能想要换一个手机或者显示其手机性能和质量良好。
2)用户情感识别:用户情感同样也包含显式和隐式两种,如用户输入“我今天非常高兴”,明确表明了喜悦的情感;而“今天考试刚刚及格”,则不太容易判断用户的情感。
3)指代消解和省略恢复:在对话过程中,由于人们之间具备聊天主题背景一致性的前提,用户通常使用代词来指代上文中的某个实体或事件,或者干脆省略一部分句子成分。但对于聊天机器人系统来说只有明确了代词指代的成分以及句子中省略的成分,才能正确理解用户的输入,给出合乎上下文语义的回复。因此需要进行代词的消解和省略的恢复。
4)回复确认:用户意图有时会带有一定的模糊性,这时就需要系统具有主动询问的功能,进而对模糊的意图进行确认,即回复确认。
5)拒识判断:聊天机器人系统应当具备一定的拒识能力,主动拒绝识别超出自身回复范围之外或者涉及敏感话题的用户输入。
当然,词法分析、句法分析以及语义分析等基本的自然语言处理技术,对于聊天机器人系统中的自然语言理解功能也起到了至关重要的作用。