方法文章

基于Van der Waerden秩得分注意力机制的支持向量机垃圾信息分类

DOI:

10.3791/69082

2025年10月31日

* These authors contributed equally

本文内容

摘要

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

本研究提出了一种基于支持向量机的创新方法,该方法结合了经范德瓦尔登秩得分增强的特征注意力机制,旨在应对高维稀疏垃圾信息数据带来的挑战,并提升垃圾信息检测的分类性能。

摘要

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

随着电子邮件的广泛使用,垃圾邮件已成为一个严峻的挑战,威胁着网络安全并降低通信效率。传统的检测方法存在持续性的局限:传统机器学习模型通常难以处理高维稀疏数据,而深度学习则需要大量的计算资源。

本研究提出了一种基于范德瓦尔登秩得分特征注意力增强的支持向量机(VWR-Attn-SVM)方法,以解决上述问题。该方法采用范德瓦尔登秩变换对文本特征进行归一化处理,提高了对异常值的鲁棒性,并保留了特征的序数关系。通过引入增强的注意力机制,结合正则化的非线性处理进一步优化特征选择,突出对垃圾信息检测最为相关的特征。

在UCI Spambase和印度尼西亚垃圾邮件数据集上的实验表明,VWR-Attn-SVM在准确率、精确率、召回率、F1分数和AUC方面均优于传统分类器。该方法在实现高性能的同时降低了计算成本,为垃圾邮件分类提供了高效且可解释的解决方案,并有望扩展至其他基于文本的平台,如即时通讯和社交媒体。

引言

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

在当今数字时代,互联网和数字技术迅速发展,尽管即时通讯和社交媒体平台不断涌现和创新,电子邮件在电子交易和企业通信领域仍保持着不可或缺的核心地位1。其跨越时空限制的能力赋予了电子邮件独特的优势,使得全球范围内的通信可在任何时间无缝进行。然而,这种广泛使用也引发了一个紧迫且有害的问题——垃圾邮件的泛滥。恶意行为者利用电子邮件系统作为传播渠道,大量发送未经请求的商业广告、恶意软件和非法内容。研究表明,从2012年到2023年,全球垃圾邮件在总电子邮件流量中的比例飙升了7700%2,3。垃圾邮件的泛滥不仅严重干扰用户的正常邮件使用,还带来多方面的威胁:它可能泄露敏感信息,侵犯个人隐私;通过数据泄露和恶意软件感染危及企业安全;甚至通过助长欺诈活动破坏经济秩序4,5。有效的垃圾邮件分类可使与网络钓鱼相关的经济损失减少40%至60%6,凸显了高效、准确过滤方法的实际价值。因此,开发高效且准确的垃圾邮件检测模型已成为保障网络安全、提升通信效率的关键研究方向。

大量现有的垃圾信息检测研究集中于机器学习和深度学习方法。在传统机器学习领域,已探索并应用了多种多样的技术。基于规则的方法,例如决策树7,已被用于根据从数据特征中提取的预定义规则进行分类决策。提升方法8,9,10(将多个弱学习器集成成一个强学习器)以及粗糙集理论11(用于处理数据中的不确定性和不精确性)也展现出一定潜力。此外,包括逻辑回归、K近邻(KNN)12,13、朴素贝叶斯14,15,16和SVM17,18,19在内的统计方法也被广泛采用。这些方法通常依赖于TF-IDF等传统特征提取方法。尽管TF-IDF在量化文档中词语的重要性方面有效,但在捕捉电子邮件文本中固有的复杂语义关系和上下文细微差别方面存在困难。此外,当面对高维且稀疏的数据(这在电子邮件特征空间中很常见)时,这些方法常常遇到计算瓶颈。其有限的鲁棒性可能导致在训练过程中陷入局部最优解,从而严重限制模型的分类准确性和泛化能力。

深度学习因其强大的自动特征提取能力,已成为垃圾信息检测中的一种有力替代方法。诸如卷积神经网络(CNN)20,21,22、循环神经网络(RNN)23、长短期记忆网络(LSTM)24,25,以及近期基于Transformer的模型(如Word2vec和BERT)26,27等算法,在提升分类性能方面取得了显著进展。CNN擅长从数据中提取局部特征,RNN和LSTM能够有效处理序列数据,捕捉文本中的时序依赖关系,而基于Transformer的模型则在挖掘复杂的语义关系和上下文信息方面表现优异。近期一些高效的自然语言处理方法,例如基于TinyML的文本分类器28,为垃圾信息分类提供了强有力的基线模型。TinyML模型针对内存受限的边缘设备进行了优化。我们将在结果部分将所提出的方法与这些方法进行比较,重点分析准确率、计算效率与部署灵活性之间的权衡。然而,这些深度学习模型也存在自身的局限性。它们通常需要大量的训练参数,导致对计算资源的需求较高,并延长了训练时间。例如,像BERT这样的深度学习模型所需的内存是传统支持向量机(SVM)的3至5倍,训练时间则长达10倍29,使其在资源受限的环境中适用性较低。这使得它们在移动设备或低端服务器等资源受限环境中的部署实用性较差。此外,其复杂的网络结构通常导致模型可解释性较差,而在需要理解模型决策过程的应用中,这一点可能成为显著的缺点。

在此背景下,本研究的总体目标是开发一种创新方法,以克服现有方法的局限性,并有效应对垃圾数据高维性和稀疏性所带来的挑战。所提出的基于范德瓦尔登秩分特征注意力增强的支持向量机(VWR-Attn-SVM)是一种旨在提升垃圾信息检测性能的技术新融合(图1)。VWR-Attn-SVM 的基本原理在于其独特的设计,该设计结合了多个组件的优势。

垃圾邮件分类示意图;SVM 方法;TF-IDF 特征分析;分类器比较流程。
图 1:基于 VWR-Attn-SVM 的垃圾邮件分类研究总体流程图。该流程图展示了基于范德瓦尔登秩分与特征注意力增强型支持向量机(SVM)的垃圾邮件分类工作流程,涵盖数据准备(加载、划分、预处理)、实验准备、TF-IDF 特征与标签间统计相关性的验证、基于注意力增强型 SVM 的垃圾邮件检测,以及多分类器性能比较。请点击此处查看该图的放大版本。

核心增强特征注意力机制以特定的维度处理单个电子邮件样本。通过应用范德瓦尔登秩变换(Van der Waerden rank transformation),将因异常词频导致扭曲的电子邮件文本特征归一化为近似标准正态分布的形式。该变换显著提升了模型的鲁棒性,使其能够更好地应对电子邮件数据的变异性。相较于对数缩放和分位数变换,范德瓦尔登秩得分具有三个优势,因而被优先选用:(1)对垃圾邮件特征中的离群值(例如极端的词频)具有鲁棒性,而对数缩放会放大低频噪声;(2)保留特征的序数关系(这对于“免费”与“中奖”等垃圾邮件指示词的层级关系至关重要),而分位数变换会压平分布;(3)归一化至[0,1]区间,便于与注意力机制集成,并确保权重分配的一致性(图2)。

数据处理流程图:数据加载、预处理、特征选择、模型训练、评估。
图 2:实验流程图。A-C)垃圾信息分类的工作流程,涵盖数据处理、特征选择、模型训练、评估,以及使用与不使用 Van der Waerden 秩分转换的比较。请点击此处查看此图的放大版本。

从结构上看,该机制采用一个双层全连接网络来实现非线性特征变换(图2)。第一层配备LeakyReLU激活函数,在降低输入维度的同时引入非线性,并结合Dropout层以减轻过拟合。第二层使用Sigmoid函数输出注意力权重,能够精确量化每个特征的重要性。模型中集成了L1/L2正则化策略以优化特征选择:其中L1正则化促进稀疏性,有效筛选出相关性较低的特征;L2正则化则通过约束权重的幅值来防止过拟合。在训练阶段,采用多任务学习框架,结合特征重构损失和分类损失共同优化模型参数。这使得VWR-Attn-SVM能够精准适应电子邮件文本高维稀疏的TF-IDF特征,这类特征反映了邮件内容的复杂性。

我们的方法针对从几千到一万条文本垃圾信息数据集(例如 Spambase、印度尼西亚垃圾信息数据集(补充文件 1))进行了优化,训练过程仅需标准计算资源(Intel Core i7 处理器,16 GB RAM);推理可在标准笔记本电脑(Intel Core i5,8 GB RAM)上运行,延迟低于一秒。主要限制包括对非文本类垃圾信息(例如嵌入图像的垃圾信息)性能有限,以及依赖于结构化文本特征。与现有替代技术相比,VWR-Attn-SVM 具有若干显著优势。不同于传统机器学习方法,它不仅依赖基础特征提取,而是通过增强的注意力机制主动学习根据特征重要性进行加权,从而更有效地捕捉与垃圾信息分类更相关的特征。与深度学习模型相比,它在性能与计算效率之间实现了良好平衡。该方法所需计算资源更少、训练时间更短,因此更适用于广泛的应用场景,尤其适合资源受限的环境。这一创新方法不仅适用于电子邮件系统中的垃圾信息检测这一特定任务,还有潜力扩展至其他基于文本的通信渠道,例如即时通讯应用、社交媒体平台和短信服务,这些场景中同样存在不受欢迎和恶意内容传播的问题。总体而言,VWR-Attn-SVM 代表了垃圾信息检测领域的一项重要进展,为应对数字通信环境中长期存在的垃圾信息问题,提供了一种更实用、高效且多功能的解决方案。

访问受限。请登录或开始试用以查看此内容。

方案

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

1. 实验准备(补充文件2和补充文件3)

  1. 数据描述:从 UCI 机器学习仓库加载用于垃圾邮件检测的开源垃圾邮件数据集30。记录该数据集包含 4,601 个实例,具有 57 个连续特征和 1 个类别标签,其中包括 1,813 个垃圾邮件样本(39.4%)和 2,788 个非垃圾邮件样本(60.6%)(表 1)。
  2. 导入库
    1. 导入必要的库(参见材料表)。
    2. 全局随机种子设置为42,以确保结果的可重复性。
  3. 配置绘图设置:英文文本使用Times New Roman 字体,解决负号显示问题,并将字体大小设置为16,以提高可读性。

表1:数据集统计信息和特征定义汇总。 本表列出了用于垃圾邮件分类的变量,包括词频(word_freq_WORD)、字符频率(char_freq_CHAR)、大写字符连续长度指标以及目标类别变量,并对每种变量类型及其含义进行了描述。请点击此处下载该表格。

2. 验证TF-IDF特征与标签之间统计关联性的实验(补充文件2和补充文件3)

  1. 数据预处理
    1. 加载数据集(补充文件 1):第一个数据集:spambase.csv;第二个数据集:spam_indonesian.csv。
    2. 检查垃圾邮件与非垃圾邮件标签的分布情况,并计算每个类别的比例。
    3. 使用均值作为阈值对这些特征进行二值化处理,以用于后续的卡方检验。
      ​注意:确保垃圾邮件文件位于正确的当前工作目录中,或在使用读取命令时提供完整的文件路径。
  2. 测试数据预处理(补充文件 2补充文件 3
    1. 使用 sklearn.feature_selection.chi2 对二值化的 TF-IDF 特征进行卡方检验:
      代码调用:
      from sklearn.feature_selection import chi2
      chi2_values, p_values = chi2(df_binary, df['spam'])
      significant_features_chi2 = [feature_cols[i] for i in np.where(p_values < 0.05)[0]]
      print(f"显著特征数量: {len(significant_features_chi2)}")
      预期输出:一组与垃圾邮件标签具有统计关联的特征子集(例如,57 个特征中的 35 个),包括“free”或“remove”等关键词。
    2. 使用 sklearn.feature_selection.f_classif 进行实现:
      代码调用:
      from sklearn.feature_selection import f_classif
      f_values, f_p_values = f_classif(df[feature_cols], df['spam'])
      significant_features_f = [feature_cols[i] for i in np.where(f_p_values < 0.05)[0]]
      print(f"保留的特征数量: {len(significant_features_f)}")
      注意:通常会保留 40–50 个特征(取决于数据集),与卡方检验结果部分重叠。
      在运行统计检验之前,请验证数据格式和参数,以确保结果准确。
  3. 可视化
    1. 从卡方检验结果中选择 p 值最小的前 20 个特征。
    2. 使用 seaborn.heatmap 生成热图:
      代码调用:
      import seaborn as sns
      top_indices = np.argsort(p_values)[:20]
      top_features = [feature_cols[i] for i in top$\_$indices]
      corr_matrix = df[top_features + ['spam']].corr()
      plt.figure(figsize=(12, 10))
      sns.heatmap(corr_matrix, annot=True, cmap='coolwarm')
      plt.show()
      注意:预期模式:与垃圾邮件相关的特征会与垃圾邮件标签在红色区域聚集(正相关)。

3. 用于垃圾信息检测的注意力增强型支持向量机分类(补充文件 2 和补充文件 3)

  1. 数据预处理
    1. 数据加载:使用 sklearn.model selection.train test split 方法并设置固定随机种子进行数据划分:
      代码调用:
      from sklearn.model selection import train test split
      X train, X test, y train, y test = train test split(X, y, test size=0.3, random state=42)
    2. 标准化与类别平衡:通过 imblearn.over sampling.SMOTE(合成少数类过采样技术,SMOTE31)实现:
      代码调用:
      from imblearn.over sampling import SMOTE
      # 默认:sampling strategy='auto', k neighbors=5
      smote=SMOTE(random state=42)
      X train smote, y train smote = smote.fit resample(X train, y train)
      平衡类别分布(例如,从 85:15 调整为 50:50)。
  2. 增强特征注意力模型架构:设计一种机制,通过多层非线性变换学习特征重要性权重,为关键特征分配更高的注意力权重,以增强其影响。
    1. 特征预处理(可选)
      1. 对输入特征应用 Van der Waerden 正态秩变换,将原始特征转换为近似正态分布,以提高模型鲁棒性。使用公式:
        正态分位数变换公式,用于统计数据分析的方程。
        其中 x 表示样本的 TF-IDF 特征向量,R(x) 是特征值的秩,d 为向量长度(d=57),φ-1 为标准正态分布的逆累积分布函数。
        注:使用 use_rank_transform(布尔型)参数控制是否启用正态秩变换进行特征处理。
    2. 多层非线性变换:通过两层全连接网络学习特征的非线性表示。
      1. 第一层变换:使用公式:
        神经网络层方程:\( h_1 = \text{LeakyReLU}(W_1x + b_1) \),激活函数。
        其中 W1 静力平衡 ΣFx=0, MA=0 方程图示;力平衡;教育用物理概念 Rk×dk=64(隐藏神经元数量)。
        在 Keras 中使用 LeakyReLU 实现:
        代码调用:
        from tensorflow.keras.layers import Dense
        self.dense1=Dense(units=64, # 256 用于 VWR-Attn-SVM
        activation='leaky relu', # 默认负斜率=0.01
        kernel regularizer=regularizers.l1 l2(l1=0.0002, l2=0.0002))
        注:添加 dropout 层,dropout 率为 0.2,以防止过拟合。
      2. 第二层变换:使用 Sigmoid 函数进行第二层变换,生成范围在 [0,1] 内的注意力权重。使用公式:
        Sigmoid 激活函数公式图示:a=Sigmoid(W2h1+b2),用于神经网络计算。
        其中 W2 静力平衡 ΣFx=0, MA=0 方程图示;力平衡;教育用物理概念 Rd×k 静力平衡 ΣFx=0, MA=0 方程图示;力平衡;教育用物理概念 Rk 为各特征的注意力权重。选择 Sigmoid 而非 SoftMax,以保持多个特征重要性的独立性。
        使用 Keras 的 Sigmoid 激活函数生成注意力权重:
        代码调用:
        self.dense2 = Dense(input shape[-1], activation='sigmoid',
        ​kernel regularizer=regularizers.l1 l2(l1=0.0002, l2=0.0002))
    3. 特征加权:通过与注意力权重进行逐元素相乘,增强重要特征。使用公式:
      x-attended=x⊙a 公式,注意力机制,神经网络,张量运算,教育用途。
      其中 静力平衡图示,ΣFx=0, ΣFy=0, 力矩平衡,教育用物理概念 表示逐元素相乘。
  3. 训练增强特征注意力模型
    1. 多任务目标优化:最小化结合重构损失与交叉熵损失的加权损失函数,以训练模型。确保注意力机制在关注分类相关特征的同时保留关键信息。使用公式:
      损失函数公式:L=α·MSE+CE,结合均方误差与交叉熵并赋予权重。
      使用均方误差损失 数学公式 MSE(x, x-attended),用于统计误差分析应用。
      用于重构输入特征,并在分类任务中应用交叉熵损失 交叉熵公式 CE(y,ŷ),统计分析方法,用于数据分类的符号。
       。
      在 PyTorch 中实现自定义多任务损失:在 Keras 中使用 alpha=0.5:
      代码调用:
      model.compile(optimizer='adam',loss={
      'enhanced_feature_attention':'mse','classification':
      'binary_crossentropy'},loss_weights={
      'enhanced_feature_attention': 0.5, 'classification': 0.5})
      alpha=0.5 平衡特征重构(MSE)与分类(交叉熵),在 50–100 个训练轮次内实现稳定收敛。
      注:对两个全连接层均应用 L1/L2 混合正则化(Elastic Net,默认强度为 0.001),以增强特征选择能力与泛化性能。
    2. 参数设置:设置权重系数 α 以控制两项损失的相对重要性,代码中 α = 0.5。将批量大小设为 64,训练轮次设为 200,并将 10% 的数据划分为验证集。
    3. 添加回调函数。
      Keras 回调函数(默认参数):
      代码调用:
      from tensorflow.keras.callbacks import EarlyStopping, ReduceLROnPlateau
      callbacks = [EarlyStopping(monitor='val_loss', patience=5, mode='min', restore_best_weights
      ​=True), ReduceLROnPlateau(monitor='val_loss', factor=0.5, patience=5, min_lr=0.0005, verbose=1)]
      1. 引入 EarlyStopping 回调函数,当验证损失连续 5 个轮次未改善时停止训练。
      2. 添加 ReduceLROnPlateau 回调函数,自适应调整学习率。设置衰减因子为 0.5,最小学习率为 0.0002。
    4. 生成加权注意力特征:训练完成后,从增强特征注意力层中提取注意力权重。为训练集和测试集生成加权特征,并将这些特征输入 SVM 分类器。
  4. 模型评估
    注:70-30 的训练-测试划分平衡了训练与评估过程。SMOTE 解决类别不平衡问题,提升在不平衡文本数据上的性能。MinMaxScaler 稳定基于距离的模型。神经元数量:64(Attn-SVM)和 128(VWR-Attn-SVM)在模型容量上取得平衡;128 可适应 Van der Waerden 秩变换的复杂性。Dropout(0.2)防止过拟合,适用于中小规模数据集。L1/L2 正则化(0.0002–0.002):L1 诱导稀疏性,L2 限制权重幅值。损失权重相等(MSE:0.5,交叉熵:0.5)平衡重构与分类学习。训练轮次:200(Attn-SVM),300(VWR-Attn-SVM),并启用早停机制(patience=5)以避免过拟合。批量大小 64 在效率与稳定性之间取得平衡。ReduceLROnPlateau(factor=0.5,patience=5–10)调整学习率(最小值 0.0001–0.0005),以实现更优收敛。
    1. 消融实验设计与对比:定义以下模型进行比较:基线 SVM:使用径向基函数(RBF)核的传统 SVM;Attn-SVM:结合增强特征注意力机制的 SVM;VWR-Attn-SVM:结合 Van der Waerden 变换与增强特征注意力机制的 SVM。
    2. 评估指标(表 2):使用准确率、精确率、召回率、F1 分数和 AUC 评估模型性能。
  5. 注意力可视化与模型解释
    1. 关键特征的注意力权重可视化
      使用 Matplotlib 绘制前 15 个特征的条形图:
      代码调用:
      import matplotlib.pyplot as plt
      top_indices = np.argsort(-avg_weights)[:15]
      top_features = [feature_names[i] for i in top_indices]
      top_weights = avg_weights[top_indices]
      plt.figure(figsize=(12, 8))
      plt.barh(top_features, top_weights, color='skyblue')
      plt.xlabel('注意力权重')
      plt.title('前 15 个特征的注意力权重')
      ​plt.show()
    2. 比较正态秩变换的影响:比较启用与未启用 use_rank_transform 时的模型性能(准确率、精确率、召回率、F1 分数、AUC),并在格式化表格中突出关键指标差异。
    3. 特征重要性对比:分析统计检验方法(如卡方检验)识别的重要特征与注意力机制识别结果之间的一致性。
      注:若计算资源有限,可减少神经元数量(例如降至 32)或训练轮次(例如降至 100)。调整 l1_reg/l2_reg 以平衡模型复杂度(较大值增强正则化)。

4. 多种分类器的比较(补充文件2和补充文件3)

  1. 定义分类器字典。创建一个用于比较的分类器字典,包括KNN、逻辑回归、AdaBoost、朴素贝叶斯以及使用RBF核的SVM(默认参数)。
  2. 初始化结果数据框。创建四个DataFrame以存储评估指标,列包括:分类器、准确率、精确率、召回率、F1分数和AUC。
  3. 训练并评估分类器。对每个分类器执行以下步骤。
    示例分类器及其参数和随机种子:
    代码调用:
    from sklearn.linear_model import LogisticRegression
    from sklearn.svm import SVC
    lr = LogisticRegression(random_state=RANDOM_SEED, max_iter=1000)
    svm = GridSearchCV(SVC(random_state=RANDOM_SEED, probability=True),
    param_grid={'C': [0.001,0.01, 1, 10,100,1000], 'gamma': [0.001,0.01, 1, 10,100,1000],
    'kernel': ['rbf', 'linear']}, cv=5, scoring='f1')
    ​注意:所有模型均使用random_state=42以确保结果可重复。
    1. 在标准化后的训练数据上训练分类器。
    2. 对训练集和测试集进行预测并计算预测概率。
    3. 生成分类报告,并将各项指标存入对应的DataFrame中。
  4. 整合增强特征注意力SVM的结果。将来自Attn-SVM和VWR-Attn-SVM(实验3)的性能指标结果合并到现有的DataFrame中。
  5. 输出比较结果。分别在训练集和测试集中显示非垃圾邮件与垃圾邮件的评估结果表格。
  6. 可视化结果。使用sns.barplot绘制分类器性能指标图。将x轴标签旋转45°以提高可读性。优化布局后使用plt.show()显示图像。
    sns.barplot输出结果的解释:
    代码调用:
    import seaborn as sns
    sns.barplot(x='Classifier', y='F1-Score', data=results)

5. 不同分类器在训练/测试时间及内存方面的多指标性能比较图(补充文件 4)

  1. 数据预处理:加载 spambase.csv 或 spam_indonesian.csv;按 70% 训练集和 30% 测试集划分数据;使用 MinMaxScaler 对特征进行标准化。
  2. 模型训练:训练 KNN、逻辑回归、AdaBoost、朴素贝叶斯、SVM(结合网格搜索)、Attn-SVM 和 VWR-Attn-SVM 模型。
  3. 性能评估:计算准确率、精确率、召回率、F1 分数和 AUC 值。
  4. 资源分析:记录训练时间、测试时间和内存使用情况。
  5. 可视化:生成多指标性能图表和资源消耗图表。
    关键参数:随机种子=42;SVM 网格(C:[0.01,0.1,1,10,100];gamma:[0.01,0.1,1,10,100];核函数:['rbf','linear']);注意力模型采用两层全连接网络,包含 L1/L2 正则化和 Dropout。
    输出:性能结果表格、资源消耗表格、多指标性能图表、时间和内存消耗图表、注意力权重可视化图。

CNN、RNN、LSTM 或 Transformer 的实验结果(补充文件 5)

  1. 预处理:加载 spambase.csv 或 spam_indonesian.csv,如有需要应用 SMOTE 方法处理类别不平衡问题,并按 70/30 的比例划分为训练集和测试集。
  2. 训练:构建 CNN、RNN、LSTM 和 Transformer 模型;使用 Adam 优化器(学习率 0.001)、二元交叉熵损失函数、批量大小为 32、训练轮数为 10,采用早停策略(耐心值为 5)以及学习率调度。
  3. 评估:计算准确率、精确率、召回率、F1 分数和 AUC 值;记录训练和测试时间以及内存占用情况。
  4. 可视化:生成性能与资源消耗的对比图表;保存 CSV 格式的结果文件。
  5. 输出:性能指标表格、资源消耗表格、对比图表以及 CSV 文件。

7. 补充代码说明

  1. 运行代码并复现图表:将 spam.csv 或 spam_indonesian.csv 文件放置在同一目录下。通过 pip install numpy pandas matplotlib seaborn scikit-learn tensorflow imbalanced-learn psutil 安装依赖项。执行脚本后,程序将自动处理数据、训练模型,并在运行过程中生成和显示所有图表(热图、性能图)。

访问受限。请登录或开始试用以查看此内容。

结果

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

首先,根据既定的实验方案,图1 概述了本研究的整体流程图。图2 依次展示了实验2的操作流程图。此外,表1 主要列出了垃圾邮件数据集 spam.csv 中的词频和字符频率。

在模型性能评估方面,采用了五个关键指标:准确率、精确率、召回率、F1分数以及受试者工作特征曲线下面积(AUC)。表2定义了真正例(TP)、假正例(FP)、真反例(TN)和假反例(FN)的概念。F1分数是精确率和召回率的调和平均数,用于平衡分类性能中的这两个关键方面。受试者工作特征(ROC)曲线以假阳性率(FPR)为横轴、真阳性率(TPR)为纵轴,能够全面可视化不同决策阈值下的分类性能。因此,AUC即ROC曲线下面积,成为评估二分类器有效性的关键指标。

表2:分类性能评估指标。 本表定义了用于分类的评估指标:准确率、精确率、召回率、F1分数(...

访问受限。请登录或开始试用以查看此内容。

讨论

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

本研究基于Spambase数据集验证了VWR-Attn-SVM的有效性,为应对垃圾邮件数据的高维稀疏特性提供了新思路。实验表明,垃圾邮件数据中仅有少数特征与标签具有强相关性;传统模型对所有特征一视同仁,导致性能不佳,而该模型的注意力机制能够动态加权关键特征。在引入Van der Waerden(VWR)秩变换后,模型实现了更快的损失收敛速度、更强的泛化能力、更均衡的特征权重,并捕获了更多的特征交互信息。在测试集上表现出优异的分类指标,优于传统方法,同时节省了资源。其创新之处在于解决了传统机器学习与深度学习的固有问题,为文本分类提供了新范式,并适用于资源受限场景,且具有良好的可解释性。

实验操作中的关键步骤
本研究实验操作中的若干关键步骤显著影响了垃圾邮件分类的结果。在数据准备阶段,从 UCI 机器学习库中选取 Spam-base 数据集,该数据集包含 4,601 个样本、57 个连续特征以及一个二分类标签,为实验奠定了坚实基础。验证 TF-IDF 特征与标签之间统计关联性的过程至关重要。通过使用卡方检验进行特征筛选,并利用热图可视化相关...

访问受限。请登录或开始试用以查看此内容。

披露

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

作者声明无利益冲突。

致谢

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

感谢福建省数学联盟(项目编号:2023SXLMMS10)和福建省自然科学基金(项目编号:2023J05083、2022J011396、2023J011434)对本工作的资助。

访问受限。请登录或开始试用以查看此内容。

材料

本文使用的材料清单
姓名公司目录编号评论
补充文件 2:code_new.py;补充文件 3:code_indonesian.py。
numpyNumPy Developers用于 Python 的数值计算库
pandaspandas Development Team用于数据操作与分析的库
matplotlibMatplotlib Developers 用于创建静态、动画及交互式可视化的库
seabornMichael Waskom 等基于 matplotlib 的统计数据分析可视化库
scikit-learnscikit-learn Developers Team包含多种分类、回归和聚类算法的机器学习库
tensorflowGoogle开源机器学习框架,包含用于构建神经网络的 Keras API
imblearnimbalanced-learn Developers用于处理不平衡数据集的库,包括用于过采样的 SMOTE
warningsPython 标准库用于发出警告消息的模块
补充文件 4:code_compute_time.py
numpyNumPy Developers用于 Python 的数值计算库
pandaspandas Development Team用于数据操作与分析的库
matplotlibMatplotlib Developers用于创建图表和图形的可视化库
seabornMichael Waskom 等基于 matplotlib 构建的统计数据分析可视化库
scikit-learnscikit-learn Developers Team包含分类、回归和数据预处理工具的机器学习库
tensorflowGoogle开源机器学习框架,配备用于神经网络的 Keras API
imblearnimbalanced-learn Developers Team用于处理不平衡数据集的库(包含 SMOTE)
warningsPython 标准库用于发出警告消息的模块
timePython 标准库用于时间相关功能的模块
psutilGiampaolo Rodola用于获取系统信息和监控资源使用情况的库
osPython 标准库用于与操作系统交互的模块
补充文件 5:DNN.py。
pandaspandas Development Team用于数据操作与分析的库
numpyNumPy Developers用于 Python 的数值计算库
timePython 标准库用于时间相关功能的模块
psutilGiampaolo Rodola用于系统信息获取和资源监控的库
matplotlibMatplotlib Developers用于创建图表和图形的可视化库
scikit-learnscikit-learn Developers Team包含数据预处理、模型选择和评估指标工具的机器学习库
imblearnimbalanced-learn Developers Team用于处理不平衡数据集的库(包含 SMOTE)
tensorflowGoogle开源机器学习框架,配备用于构建神经网络的 Keras API

参考文献

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,
  1. Ayo, F. E., Ogundele, L. A., Olakunle, S., Awotunde, J. B., Kasali, F. A. A hybrid correlation-based deep learning model for email spam classification using fuzzy inference system. Decis Anal J. 10, 100390(2024).
  2. Douzi, S., AlShahwan, F. A., Lemoudden, M., Ouahidi, B. Hybrid email spam detection model using artificial intelligence. Int J Mach Learn Comput. 10 (2), 316-322 (2020).
  3. Maqsood, U., et al. An intelligent framework based on deep learning for SMS and e-mail spam detection. Appl Comput Intell Soft Comput. 2023, 6648970(2023).
  4. Yang, Z., Nie, X., Xu, W., Guo, J. An approach to spam detection by naive Bayes ensemble based on decision induction. Proc IEEE Comput Soc. , 861-866 (2006).
  5. Nazirova, S., Alguliyev, R. Two approaches on implementation of CBR and CRM technologies to the spam filtering problem. J Inf Secur. 3 (1), 11-17 (2012).
  6. Consumer Sentinel Network Data Book. , Federal Trade Commission. (2022).
  7. DeSouza, M., Fitzgerald, J., Kemp, C., Truong, G. A decision tree-based spam filtering agent. , Available at: http://www.cs.mu.oz.au/481/2001_projects/gntr/index.html (2001).
  8. Boosting trees for anti-spam email filtering. Carreras, X., Marque, L. Proc RANLP-01, 4th Int Conf Recent Adv Nat Lang Process, , INCOMA Ltd. (2001).
  9. Androutsopoulos, I. Learning to filter unsolicited commercial e-mail. Int Proc Comput Sci Inf Tech. , (2025).
  10. XGBoost: a scalable tree boosting system. Chen, T., Guestrin, C. Proc 22nd ACM SIGKDD Int Conf Knowl Discov Data Min, , ACM. 785-794 (2016).
  11. Intelligent analysis, filtering, and rough set discussions of spam. Liu, Y., et al. Proc 12th Annu Conf Comput Netw Data Commun China Comput Fed, , (2002).
  12. Androutsopoulos, I., et al. Learning to filter spam e-mail: a comparison of a naive Bayesian and memory-based approach. Comput Sci. 97 (2), 1-13 (2000).
  13. Cai, J., et al. Fibrosis and inflammatory activity diagnosis of chronic hepatitis C based on extreme learning machine. Sci Rep. 15 (1), 11(2025).
  14. Zhou, Y., Li, Y., Xia, S. An improved KNN text classification algorithm based on clustering. J Comput. 4 (3), 230-237 (2009).
  15. Rapacz, S., Cholda, P., Natkaniec, M. A. Method for fast selection of machine-learning classifiers for spam filtering. Electronics. 10 (17), 2083(2021).
  16. Fu, S., Nizar, B. A. Soft computing model based on asymmetric Gaussian mixtures and Bayesian inference. Soft Comput. 24 (1), 4841-4853 (2020).
  17. Text categorization with support vector machines: learning with many relevant features. Joachims, T. Proc Eur Conf Mach Learn, , Springer. 137-142 (1998).
  18. Drucker, H., Wu, D., Vapnik, V. N. Support vector machines for spam categorization. IEEE Trans Neural Netw. 10 (5), 1048-1054 (2002).
  19. Yuan, Y., Fan, W., Pu, D. Spline function smooth support vector machine for classification. J Ind Manag Optim. 3 (3), 529-542 (2017).
  20. Cai, J., et al. A residual joint antenna network for joint transmit-receive antenna subset selection in MIMO systems. IEEE Trans Antennas Propag. , (2025).
  21. Zhu, S., et al. Singular pooling: a spectral pooling paradigm for second-trimester prenatal level II ultrasound standard fetal plane identification. IEEE Trans Circuits Syst Video Technol. , (2025).
  22. Zhu, S., et al. Contrast and gain-aware attention: a plug-and-play feature fusion attention module for torso region fetal plane identification. Ultrasound Med Biol. , (2025).
  23. Mikolov, T., Karafiat, M., Burget, L., Cernock, J., Khudanpur, S. Recurrent neural network based language model. Proc Interspeech, Int Speech Commun Assoc. , (2015).
  24. Hochreiter, S., Schmidhuber, J. Long short-term memory. Neural Comput. 9 (8), 1735-1780 (1997).
  25. Cai, J., et al. Developing deep LSTMs with later temporal attention for predicting COVID-19 severity, clinical outcome, and antibody level by screening serological indicators over time. IEEE J Biomed Health Inform. 28 (7), 4204-4215 (2024).
  26. Vaswani, A., et al. Attention is all you need. Adv Neural Inf Process Syst. , (2017).
  27. Xian, L. Application of an improved TF-IDF method in literary text classification. Adv Multimed. 2022, 9285324(2022).
  28. Alajlan, N., Ibrahim, D. M. TinyML: enabling inference of deep learning models on ultra-low-power IoT edge devices for AI applications. Micromachines. 13 (6), 851(2022).
  29. Devlin, J., Chang, M. W., Lee, K., Toutanova, K. BERT: pre-training of deep bidirectional transformers for language understanding. Proc North Am Chapter Assoc Comput Linguist. , (2019).
  30. Hopkins, M., Reeber, E., Forman, G., Suermondt, J. Spambase dataset. UCI Mach Learn Repos. , (1999).
  31. Chawla, N. V., Bowyer, K. W., Hall, L. O., Kegelmeyer, W. P. SMOTE: synthetic minority over-sampling technique. J Artif Intell Res. 16, 321-357 (2002).
  32. Cuk, A., et al. Tuning attention-based long short-term memory neural networks for Parkinson's disease detection using modified metaheuristics. Sci Rep. 14, 4309(2024).
  33. Mizdrakovic, V., et al. Forecasting bitcoin: decomposition-aided long short-term memory-based time series modeling and its explanation with Shapley values. Knowl Based Syst. 299 (5), 112026(2024).

访问受限。请登录或开始试用以查看此内容。

重印与许可

申请许可以重复使用本 JoVE 文章的文本或图表

申请许可

标签

相关文章