我正在构建一个应用程序,用于识别来自 SMS 的信息,类似于费用管理应用程序。我有一个解析器,它读取用户的所有 SMS,识别感兴趣的 SMS 并从中解析有用的信息。这一点工作正常,但问题是我还想对解析器的完整性和准确性进行评分。
完整性 - 在 100 条感兴趣的 SMS 中,有多少条解析器能够识别
准确性 - 在识别为相关的 SMS 中,有多少条 SMS 解析器能够提取正确的信息
我有一个手动过程来识别这些。我从语料库中随机抽取样本以及解析结果并手动标记哪些是正确的或错误的。我能够识别解析器中的差距并通过这个过程修复它们。但是,我修复的差距越多,就越难以确定此过程中的进一步差距。此外,由于样本是随机的,它有许多结构相同的短信。类似 SMS 的解析成功/失败是类似的。随机样本的完整性和准确性也不能正确代表整个语料库的正确性和准确性。
我在想,由于感兴趣的金融 SMS 具有与之关联的模板,如果我可以标记 SMS 的模板,我可以跟踪已知正确解析的模板,并且只对尚未手动标记的模板进行手动检查为了正确性。这也将帮助我构建工具来识别整个语料库的正确性、准确性和未知状态。它还可以帮助我识别添加到语料库中的新模板。
有1000个模板。模板示例:
Template1 - Thanks for spending INR 100 at Amazon on 1st Jan, your available credit limit is 1,000
Template2 - You have spent INR 100 on your credit card ending in 1234 at Amazon on 1st Jan 2020
Template3 - You txn of INR 100 is credited/reversed by Amazon on 2nd Jan 2020, Avl Bal - 1,100
Template4 - You account xxxx1234 has been debited with INR 500 and bene A/C xxxx4321 has been credit on 3rd Jan
我在谷歌上搜索了很多,许多似乎相关的结果都来自这个论坛。基于 n-gram 的相似性似乎很有趣,但我无法充分说明如何将其应用于我的问题。看起来非常相似的问题之一:在文本片段中识别带有参数的模板。但是,它在从给定语料库中识别具有相似模板的句子这一意义上略有不同。我想在不查看整个语料库的情况下标记一个句子的模板。我可以训练模型来标记模板,但我希望模型能够识别不属于原始语料库的新模板并标记它们。
我是一名软件工程师,之前没有数据科学方面的经验。如果我没有任何意义或者这个论坛不适合这个问题,请原谅我。我真的很感激任何帮助确定正确的方法和一些参考资料来理解所涉及的概念。