垃圾邮件分类中的特征(例如文档长度、标点符号……)之间的相关性

数据挖掘 Python 分类 文本挖掘 相关性
2022-02-10 23:26:29

我从我的数据集中提取了一些关于标点符号、大写字母、大写单词的其他特征。我得到了这些价值:

在此处输入图像描述

在 python 中使用 .corr() 查看与我的目标变量(1=垃圾邮件,0=非垃圾邮件)的相关性。BT 代表二进制文本,例如,BS 代表二进制摘要,我根据文本/摘要中是否存在大写字母或大写单词,或...

您认为这些功能在模型构建中有用吗?我看不到非常强的相关性,但我想根据这些特征(字符/文本长度的数量;存在!,大写单词......)来确定电子邮件是否是垃圾邮件。

我有大约 1000 封电子邮件,但只有 50 封是垃圾邮件(可能太小而无法提取有用信息)。但是,我必须提取这些信息,所以它是一个新的数据集,是我自己构建的,所以我无法收到更多的垃圾邮件(例如,我不想使用来自 kaggle 的数据集)。

你怎么看?

1个回答

首先,我认为您可以添加一些功能,例如:

  • 收到信的时间,
  • 电子邮件中的链接数量,
  • 整个结构(是否遵循电子邮件的典型结构),
  • 包含数字的单词数,
  • 电子邮件的整体情绪是什么(销售、威胁、信息、...-为此,您可以使用情绪分析),
  • 附件数量,
  • 附件类型等等。

之后尝试功能选择(您可以在此处阅读有关它的更多信息)。对于不平衡数据,您需要重新采样数据。我会:

  • 添加垃圾邮件副本(过采样)
  • 尝试生成新的垃圾邮件(smote)

你可以在这里阅读更多我希望我的回答能让你清楚一些。