解析文件是机器学习的应用吗?

数据挖掘 机器学习 解析
2021-09-21 11:31:14

我目前以半 csv 格式从设备接收文件。我编写了一个简单的递归下降解析器,用于从这些文件中获取信息。每次设备更新固件时,我都有一个新版本的解析器,用于更新带来的变化。

未来,我们将从其他设备获取数据,这意味着另一个解析器和更多固件更新。我想知道我是否可以定义“这是我需要的数据”的基本结构并使用神经网络来获取解析后的数据,而不必为每个新的文件类型编写解析器。

这是白日梦还是机器学习的有效应用?我更像是一名软件工程师,而不是一名数据科学家,但我开始涉足机器学习领域。

提前致谢。

3个回答

我会从两个层面回答这个问题。第一个层次是“可以使用机器学习来完成吗?” 我想说机器学习本质上是关于学习的。因此,如果您准备了足够的样本文档示例和期望从这些文档中获得的输出,您就可以训练网络来学习文档的结构并提取相关信息。从文档中提取信息的更一般形式是一个经过充分研究的问题,通常称为信息检索它不仅限于机器学习技术,您还可以使用自然语言处理工具。因此,就其一般形式而言,它实际上是在实践中进行的。来到第二个层次,“你应该使用机器学习来做吗??”。我同意@NeilSlater 所说的。更好和更可行的方法是使用良好的编程实践,以便您可以随着数据集的发展重用解析器的某些部分。

大多数编程语言和标记语言都有相对简单的语法,因此通常不需要使用机器学习技术来解析这些语言。在机器学习中,自动学习形式语法的过程也称为语法归纳为此目的设计了几个自适应解析器。

我的业务遇到了类似的问题:解析大量不同格式的邮件,其中一些邮件随着时间的推移略有变化。我没有解决它,但我使用来自http://www.scriptminer.com/的服务,这显然是使用机器学习工具来解析这些半结构化消息。