Stanford POS Tagger 对意图和回复进行分类时可能出现的错误
Possible error with Stanford POS Tagger and classifying intent and the replies
我有一个特定的用例,一个人会说这样的话:
- "Hey (Trigger Word), note in object history XYZ" 或:
- "Hey (Trigger Word), record in object diagnosis that PQR"
- (示例中使用的"object"是一个占位符,可以用'Maintenance/Patient'等词代替)
我想认清意图和槽点。
然后我使用 Stanford Parser 来解析句子,例如解析 "Note in object history object was last updated in may twenty eighteen" 给出这个元组列表:
[('Note', 'VB'),
('in', 'IN'),
('object', 'NN'),
('history', 'NN'),
('object', 'NN'),
('was', 'VBD'),
('last', 'RB'),
('updated', 'VBN'),
('in', 'IN'),
('may', 'MD'),
('twenty', 'CD'),
('eighteen', 'CD')]
现在,我的重点是如何使用这些信息来获得必要的输出:
- 需要注意的地方(我们在数据库中有一个字段:对象历史记录) 和
- 注意事项(对象最后更新于五月二十八)。
另一个问题是,由于NLP的输入来自ASR系统,因此缺少大写字母。词性标注器将 'note' 错误标记为 'NN'(而不是 'VB')。理想情况下 'note'/'record' 应该是一个动词。我该如何解决这个可能的错误?
您可以使用 TrueCaseAnnotator 修复大小写问题:
https://stanfordnlp.github.io/CoreNLP/truecase.html
一般来说,您可能只想使用 TokensRegex 并编写规则模式来处理这些模板。更多信息在这里:
我有一个特定的用例,一个人会说这样的话:
- "Hey (Trigger Word), note in object history XYZ" 或:
- "Hey (Trigger Word), record in object diagnosis that PQR"
- (示例中使用的"object"是一个占位符,可以用'Maintenance/Patient'等词代替)
我想认清意图和槽点。
然后我使用 Stanford Parser 来解析句子,例如解析 "Note in object history object was last updated in may twenty eighteen" 给出这个元组列表:
[('Note', 'VB'),
('in', 'IN'),
('object', 'NN'),
('history', 'NN'),
('object', 'NN'),
('was', 'VBD'),
('last', 'RB'),
('updated', 'VBN'),
('in', 'IN'),
('may', 'MD'),
('twenty', 'CD'),
('eighteen', 'CD')]
现在,我的重点是如何使用这些信息来获得必要的输出:
- 需要注意的地方(我们在数据库中有一个字段:对象历史记录) 和
- 注意事项(对象最后更新于五月二十八)。
另一个问题是,由于NLP的输入来自ASR系统,因此缺少大写字母。词性标注器将 'note' 错误标记为 'NN'(而不是 'VB')。理想情况下 'note'/'record' 应该是一个动词。我该如何解决这个可能的错误?
您可以使用 TrueCaseAnnotator 修复大小写问题:
https://stanfordnlp.github.io/CoreNLP/truecase.html
一般来说,您可能只想使用 TokensRegex 并编写规则模式来处理这些模板。更多信息在这里: