从自由格式文本中提取信息以创建事务

数据挖掘 Python nlp 信息检索
2021-09-28 15:28:01

我正在研究一个用例,其中将向用户提供一个文本框来输入事务应用程序的详细信息。
例如,用户可能会输入以下文本,我必须解析数据并相应地创建交易。(我以创业为例)

示例 1:将 100 美元从账户 1 转入账户 2
示例 2:将总计 400 美元的资金从帐户# 转入 Mr.xxxx 拥有的帐户
示例 3:将 5000 美元存入帐户#

对于上述示例,我必须解析并转换为表格格式,如 Trx_Type(存款或转账)、Amt、From_Acct#、To_Acct#、Acct_Holder_Name 等。

我正在尝试通过在 python 中使用 NLTK 进行命名实体 (NER) 或分类器建模来查看选项。有人可以分享从哪里开始的想法,并以草稿方式指导我继续进行。
期待回复。谢谢!

1个回答

我的回答基于几个假设:

  • 用户输入或多或少是标准的,所以不会有“Ex 20000”
  • 您至少涵盖了大多数形式的输入

在每个有代表性的交易描述示例中,您都需要标记感兴趣的单词,例如持有人姓名和帐号。您可以从 10-20 个示例开始,然后,当您标记了所有必填字段后,您可以训练一个序列标记模型,或者说,自定义命名实体识别模型,它将解析新文本并提取所需给你的数据。

该问题回答了如何训练实际模型:Help about NER in NLTK,以及如何标记数据 - 更多的是您应该回答的问题,因为只有您知道,应该将什么标记为帐号,帐户持有人等等。

如果您要深入研究 NER 训练,我建议您不要仅依赖当前的单词特征,而是添加一些类似正则表达式的特征和字典作为特征,因为任务在上下文变化方面似乎非常有限。