如何构建一个用于词语的文本分类器?

我正在尝试将大量词语分类到5个类别中。每个类别的示例和字符串包括:

invoice-Number : "inv123","in12","123"
invoice-Date   : "22/09/1994","22-Mon-16"
vendor-Name    : "samplevendorname"
email          : "[email protected]"
net-amount     : "1234.56"

如果有任何关于如何用Python实现的建议,将不胜感激。

编辑1:我正在寻找一种机器学习方法,因为类别的数量会更多,且每个类别中的数据会有所不同,所以正则表达式不可行。


回答:

你可以从基于词袋模型(BoW)的想法开始,(词袋模型),但修改为字符袋模型(BoC),使用一个不会移除任何字符的分词器,并构建1到4个字符的n-gram词典。

之后,你可以将任何词表示为向量,可以计算出现的次数,是否出现,或者使用tfidf

然后构建你的模型,并将词向量传递给它进行学习。你可以研究n-gram的交叉标签,以剔除数据集中产生噪音的部分。

希望这能帮助你起步。

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注