从列数据中对表标题进行分类

问题描述 投票:0回答:1

我有大量包含数字和文本数据的 CSV;这是一个示例:

公司ID 公司名称 群组ID 货币 金额 ...
8494494 Acme 公司 F942G 欧元 1.56 美元 ...
9283422A 沃尔玛 XXH3F3 澳元 $5.64 ...
... ... ... ... ... ...

我有一组单独的 CSV,其标题可能被错误标记。我想构建分类器来确定另一组中的列是否是 Company IDCompany NameGroup ID

这三列中的数据足够复杂,我无法单独使用正则表达式来解决这个问题;然而,从肉眼测试来看,我相信可以训练一个简单的分类器来区分它们(并且对于其他杂项数据(例如“AUD”)也返回 False)。

这里最好使用什么模型?我考虑过通过 BERT 传递这些字符串,然后在嵌入之上构建一个分类器。我也考虑过只在角色级别训练 RNN。

~

PS:我还有两个稍微复杂一点的想法:

  • 通过 NER 模型传递这些字符串是否合适?或者这会不会太过分了,因为这里没有太多“连续”信息?
  • 另一个想法是采用“word2vec”方法并尝试创建我自己的自定义嵌入,但使用我的训练数据将不同列的嵌入“推”得彼此远离。
machine-learning deep-learning classification prediction word-embedding
1个回答
0
投票

在尝试您建议的方法之前,我会采取比建议的方法更简单的方法,例如看看 n-gram。然后训练一个简单的分类器,例如逻辑回归或朴素贝叶斯分类器,如这篇文章

我认为这应该适用于您此处的大多数列,可能只有 ID 列(例如组 ID 和公司 ID)可能会变得困难,因为它们的外观没有明确的模式。也许看看如何区分此类列以及它们对于这种方法是否太随机。

这可能比嵌入更容易,我认为它应该非常有效。

© www.soinside.com 2019 - 2024. All rights reserved.