我正在创建一个简单的聊天机器人。我想从用户响应中获取信息。一个示例场景:
Bot : Hi, what is your name?
User: My name is Edwin.
我希望从句子中提取出埃德温的名字。但是,用户可以通过不同的方式进行响应,例如
User: Edwin is my name.
User: I am Edwin.
User: Edwin.
我试图依靠单词之间的依赖关系,但结果效果不佳。
关于可以使用哪种技术来解决此问题的任何想法?
[更新]
我使用命名实体识别以及部分语音标记器和解析器进行了测试。我发现大多数模型都是以某种方式训练的,即人名或专有名词的实体的第一个字符必须为大写。这对于普通文档可能是正确的,但是对于聊天机器人则无关紧要。例如
User: my name is edwin.
大多数NER未能意识到这一点。