Method Article

Классификация спама с помощью метода опорных векторов с использованием метода Ван дер Вардена Rank Score Attention

DOI:

10.3791/69082

October 31st, 2025

In This Article

Summary

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

В этом исследовании предлагается инновационный подход, основанный на методе опорных векторов, интегрированном с механизмом Ван дер Вардена с улучшенным вниманием к признакам, направленный на решение проблем многомерных разреженных данных о спаме и повышение производительности классификации при обнаружении спама.

Abstract

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

По мере роста использования электронной почты спам становится серьезной проблемой, угрожающей безопасности сети и снижающей эффективность связи. Традиционные методы обнаружения сталкиваются с постоянными ограничениями: традиционные модели машинного обучения часто испытывают трудности с многомерными разреженными данными, в то время как глубокое обучение требует значительных вычислительных ресурсов.

В этом исследовании представлена функция оценки рангов Ван дер Вардена с улучшенным вниманием Метод опорных векторов (VWR-Attn-SVM) для решения этих проблем. Метод применяет преобразование рангов Ван дер Вардена для нормализации текстовых объектов, повышения устойчивости к выбросам и сохранения порядковых отношений. Улучшенный механизм внимания дополнительно оптимизирует выбор признаков за счет нелинейной обработки с регуляризацией, выделяя функции, наиболее важные для обнаружения спама.

Эксперименты на наборах данных UCI Spambase и Indonesian Spam показали, что VWR-Attn-SVM превосходит традиционные классификаторы по точности, точности, запоминаемости, F1-score и AUC. Сочетая высокую производительность со сниженными вычислительными затратами, метод обеспечивает эффективное и интерпретируемое решение для классификации спама с потенциальным расширением на другие текстовые платформы, такие как обмен сообщениями и социальные сети.

Introduction

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 и SVM 17,18,19. Эти подходы обычно опираются на традиционные методы извлечения признаков, такие как TF-IDF. В то время как TF-IDF эффективен для количественной оценки важности слов в документе, он изо всех сил пытается уловить сложные семантические отношения и контекстуальные нюансы, присущие текстам электронных писем. Более того, при работе с многомерными и разреженными данными, что типично для функциональных пространств электронной почты, эти методы часто сталкиваются с вычислительными узкими местами. Их ограниченная надежность может привести к попаданию в ловушку локальных оптимальных решений в процессе обучения, что серьезно ограничивает точность классификации и способность моделей к обобщению.

Глубокое обучение, обладающее замечательными возможностями автоматического извлечения признаков, стало мощной альтернативой в обнаружении спама. Алгоритмы, такие как сверточные нейронные сети (CNN)20,21,22, рекуррентные нейронные сети (RNN)23 и сети с длительной кратковременной памятью (LSTM)24,25, а также более поздние модели на основе трансформеров, такие как Word2vec и BERT26,27, добились значительных успехов в улучшении производительности классификации. СНС хорошо умеют извлекать локальные признаки из данных, РНС и LSTM могут хорошо обрабатывать последовательные данные, захватывая временные зависимости в тексте, а модели на основе трансформеров преуспевают в анализе сложных семантических отношений и контекстной информации. Современные эффективные методы NLP, такие как текстовые классификаторы28 на основе TinyML, обеспечивают надежную основу для классификации спама. Модели TinyML оптимизированы для периферийных устройств с ограниченной памятью. Мы сравниваем наш метод с этими подходами в разделе «Результаты», подчеркивая компромисс между точностью, вычислительной эффективностью и гибкостью развертывания. Однако эти модели глубокого обучения имеют свой собственный набор ограничений. Обычно они требуют большого количества параметров обучения, что приводит к высоким требованиям к вычислительным ресурсам и увеличению времени обучения. Модели глубокого обучения, такие как BERT, требуют в 3-5 раз больше памяти и в 10 раз больше времени обучения, чем традиционные SVM29, что делает их менее подходящими для сред с ограниченными ресурсами. Это делает их менее практичными для развертывания в средах с ограниченными ресурсами, таких как мобильные устройства или серверы с низким уровнем производительности. Более того, их сложная архитектура часто делает их менее интерпретируемыми, что может быть существенным недостатком в приложениях, где понимание процесса принятия решений по модели имеет решающее значение.

На этом фоне главной целью данного исследования является разработка инновационного подхода, который может преодолеть ограничения существующих методов и эффективно решить проблемы, связанные с многомерным и разреженным характером спам-данных. Предложенная функция Ван дер Вардена Rank Score Feature Attention-Enhanced SVM (VWR-Attn-SVM) представляет собой новую интеграцию методов, направленных на повышение производительности обнаружения спама (рис. 1). Фундаментальный принцип, лежащий в основе VWR-Attn-SVM, заключается в его уникальной конструкции, сочетающей в себе сильные стороны нескольких компонентов.

figure-introduction-1
Рисунок 1: Общая блок-схема исследований по классификации спама с помощью VWR-Attn-SVM. Эта блок-схема иллюстрирует рабочий процесс классификации спама на основе рейтинга Ван дер Вардена и функций SVM, включая подготовку данных (загрузку, разделение, предварительную обработку), экспериментальную подготовку, проверку статистических корреляций TF-IDF между метками признаков, обнаружение спама на основе SVM с повышенным вниманием и сравнение нескольких классификаторов. Пожалуйста, нажмите здесь, чтобы просмотреть увеличенную версию этой цифры.

Основной механизм Enhanced Feature Attention Mechanism обрабатывает отдельные образцы электронных писем с определенной размерностью. Применяя ранжирование преобразования Ван дер Вардена, он нормализует текстовые функции электронной почты, искаженные аномальной частотой употребления слов, в стандартную форму, похожую на нормальное распределение. Это преобразование значительно повышает надежность модели, позволяя ей лучше обрабатывать изменчивость данных электронной почты. Ранжирование Ван дер Вардена было предпочтительнее логарифмического масштабирования и квантильных преобразований по трем причинам: (1) Устойчивость к выбросам спама (например, экстремальным встречаемости слов), в отличие от логарифмического масштабирования, которое усиливает низкочастотный шум; (2) Сохранение порядковых отношений признаков (критически важно для иерархии индикаторов спама, таких как «бесплатно» и «выигрыш»), в то время как квантильные преобразования выравнивают распределения; (3) Нормализуйте до [0,1], облегчая интеграцию механизма внимания и обеспечивая постоянное взвешивание (Рисунок 2).

figure-introduction-2
Рисунок 2: Экспериментальная блок-схема. (A-C) Рабочие процессы для классификации спама, охватывающие обработку данных, выбор признаков, обучение модели, оценку и сравнение с/без преобразования рейтинга Ван дер Вардена. Пожалуйста, нажмите здесь, чтобы просмотреть увеличенную версию этой цифры.

Структурно механизм представляет собой двухуровневую полносвязную сеть для нелинейного преобразования признаков (рис. 2). Первый слой, оснащенный функцией активации LeakyReLU, уменьшает входные размеры, внося нелинейность, и включает в себя слой Dropout для смягчения последствий переобучения. Второй слой, используя сигмоидальную функцию, выводит веса внимания, которые могут точно количественно оценить важность каждого признака. Стратегия регуляризации L1/L2 интегрирована в модель для оптимизации выбора признаков, где регуляризация L1 способствует разреженности, эффективно отсеивая менее релевантные признаки, а регуляризация L2 предотвращает переобучение, ограничивая величину весов. На этапе обучения используется многозадачная структура обучения, сочетающая потери при реконструкции признаков и потери классификации для оптимизации параметров модели. Это позволяет VWR-Attn-SVM точно адаптироваться к объемным, разреженным функциям текстов электронной почты TF-IDF, которые характерны для сложного характера содержимого электронной почты.

Наш метод оптимизирован для текстовых наборов данных о спаме в диапазоне от нескольких тысяч до десяти тысяч (например, Spambase, Indonesian Spam dataset (Supplemental File 1)) и требует стандартных вычислительных ресурсов (процессор Intel Core i7, 16 ГБ оперативной памяти) для обучения; инференс может быть запущен на стандартном ноутбуке (Intel Core i5, 8 ГБ ОЗУ) с задержкой менее секунды. К основным ограничениям относятся ограниченная производительность при работе с нетекстовым спамом (например, спамом со встроенными изображениями) и зависимость от функций структурированного текста. По сравнению с существующими альтернативными технологиями, VWR-Attn-SVM имеет несколько замечательных преимуществ. В отличие от традиционных методов машинного обучения, он полагается не только на базовое извлечение признаков, но и активно учится взвешивать признаки в соответствии с их важностью с помощью механизма повышенного внимания, чтобы лучше улавливать признаки, более релевантные классификации спама. В отличие от моделей глубокого обучения, он обеспечивает благоприятный баланс между производительностью и эффективностью вычислений. Он требует меньше вычислительных ресурсов и более короткое время обучения, что делает его более подходящим для широкого спектра приложений, особенно с ограниченными ресурсами. Этот инновационный подход применим не только к конкретной задаче обнаружения спама в почтовых системах, но и имеет потенциал для распространения на другие текстовые каналы коммуникации, такие как приложения для обмена мгновенными сообщениями, платформы социальных сетей и SMS-сервисы, где существуют аналогичные проблемы распространения нежелательного и вредоносного контента. В целом, VWR-Attn-SVM представляет собой значительный шаг вперед в области обнаружения спама, предлагая более практичное, эффективное и универсальное решение для борьбы с постоянной проблемой спама в цифровом коммуникационном ландшафте.

Access restricted. Please log in or start a trial to view this content.

Protocol

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. Бинаризуйте эти объекты, используя среднее значение в качестве порога для предстоящего теста хи-квадрат.
      ПРИМЕЧАНИЕ: Убедитесь, что файл со спамом находится в правильном рабочем каталоге, или укажите полный путь к файлу при использовании команды read.
  2. Тестовая предварительная обработка данных (Дополнительный файл 2 и Дополнительный файл 3)
    1. Используйте sklearn.feature_selection.chi2 для теста хи-квадрат на бинаризованных функциях TF-IDF:
      Вызов кода:
      от sklearn.feature_selection import chi2
      chi2_values, p_values = chi2(df_binary, df['спам'])
      significant_features_chi2 = [feature_cols[i] для i в np.where(p_values < 0.05)[0]]
      print(f"Количество значимых особенностей: {len(significant_features_chi2)}")
      Ожидаемый результат: подмножество признаков (например, 35 из 57) со статистической связью со спам-метками, включая такие ключевые слова, как «бесплатно» или «удалить».
    2. Выполните реализацию, используя sklearn.feature_selection.f_classif:
      Вызов кода:
      от sklearn.feature_selection импорта f_classif
      f_values, f_p_values = f_classif(df[feature_cols], df['спам'])
      significant_features_f = [feature_cols[i] для i в np.where(f_p_values < 0.05)[0]]
      print(f"Сохраненные функции: {len(significant_features_f)}")
      ПРИМЕЧАНИЕ: Обычно при этом сохраняется 40-50 признаков (в зависимости от набора данных), частично перекрывающихся результатами хи-квадрат.
      Перед проведением статистических тестов проверьте формат данных и параметры, чтобы гарантировать точные результаты.
  3. Визуализация
    1. Выберите 20 основных объектов с наименьшими p-значениями из результатов теста хи-квадрат.
    2. Сгенерируйте с помощью seaborn.heatmap:
      Вызов кода:
      Импорт Seaborn в качестве SNS
      top_indices = np.argsort(p_values)[:20]
      top_features = [feature_cols[i] для i в 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. Улучшенная классификация SVM для обнаружения спама (Дополнительный файл 2 и Дополнительный файл 3)

  1. Предварительная обработка данных
    1. Загрузка данных: Разделите данные с помощью sklearn.model selection.train тестовое разделение с фиксированным начальным значением:
      Вызов кода:
      из sklearn.model selection импорт тестового сплита поезда
      X train, X test, y train, y test test split(X, y, размер теста = 0.3, случайное состояние = 42)
    2. Стандартизация и балансировка классов: Реализация с помощью выборки imblearn.over. SMOTE (Метод синтетической избыточной выборки меньшинств (SMOTE)31):
      Вызов кода:
      из imblearn.over импорт выборки SMOTE
      # По умолчанию: стратегия выборки='auto', k соседей=5
      smote=SMOTE(случайное состояние=42)
      X поезд ударил, y поезд ударил = smote.fit resample(X поезд, y поезд)
      Распределение весов по классам (например, от 85:15 до 50:50).
  2. Улучшенная архитектура модели внимания к признакам: Разработайте механизм, который изучает веса важности признаков с помощью многослойных нелинейных преобразований. Назначайте более высокие весовые коэффициенты внимания критически важным элементам, чтобы усилить их влияние.
    1. Предварительная обработка элементов (необязательно)
      1. Примените преобразование нормального ранга Ван дер Вардена к входным объектам. Преобразуйте необработанные элементы в приблизительное нормальное распределение для повышения надежности модели. Используйте формулу:
        figure-protocol-1
        Где x представляет вектор признаков TF-IDF выборки, R(x) — ранг значения признака, d — длина вектора (d=57), а φ-1 — обратная кумулятивная функция распределения стандартного нормального распределения.
        ПРИМЕЧАНИЕ:Используйте параметр use_rank_transform (Boolean) для управления включением нормального преобразования рангов для обработки признаков.
    2. Многослойное нелинейное преобразование: Изучите нелинейное представление объектов с помощью двухслойной полностью связной сети.
      1. Преобразование первого слоя: Используйте формулу:
        figure-protocol-2
        Где W1figure-protocol-3,R, k×d и k=64 (скрытые нейроны).
        Реализовано в Keras с помощью LeakyReLU:
        Вызов кода:
        из tensorflow.keras.layers импорт Dense
        self.dense1=Dense(units=64, # 256 для VWR-Attn-SVM
        activation='leaky relu', # По умолчанию отрицательный наклон=0.01
        ядро регуляризатор=регуляризаторы.l1 l2(l1=0.0002, l2=0.0002))
        ПРИМЕЧАНИЕ: Добавьте слой dropout с коэффициентом выпадения 0,2 для предотвращения переобучения.
      2. Преобразование второго слоя: Примените преобразование второго слоя с помощью Sigmoid для создания весов внимания в диапазоне [0,1]. Используйте формулу:
        figure-protocol-4
        где W2 figure-protocol-5 Rd×k и a figure-protocol-6 Rk — веса внимания для каждого признака. Выберите Sigmoid вместо SoftMax, чтобы сохранить независимость важности нескольких функций.
        Применяйте активацию сигмовидной кишки Keras для весов внимания:
        Вызов кода:
        self.dense2 = Dense(input shape[-1], activation='sigmoid',
        ядро регуляризатор=регуляризаторы.l1 l2(l1=0.0002, l2=0.0002))
    3. Взвешивание признаков: Улучшите важные признаки, выполняя поэлементное умножение с весами внимания. Используйте формулу:
      figure-protocol-7
      Где figure-protocol-8 обозначает поэлементное умножение.
  3. Обучение модели улучшенного внимания к признаку
    1. Многозадачная целевая оптимизация: минимизация взвешенной функции потерь, сочетающей потери при реконструкции и потери на перекрестной энтропии, для обучения модели. Убедитесь, что механизм внимания сохраняет важную информацию, сосредоточившись на функциях, имеющих отношение к классификации. Используйте формулу:
      figure-protocol-9
      Использование среднеквадратичных потерь по ошибке figure-protocol-10
      для восстановления входных объектов и применения потерь перекрестной энтропии figure-protocol-11
      к задаче классификации.
      Реализация пользовательских потерь в многозадачности в PyTorch: Пользовательские потери в Keras с alpha=0.5:
      Вызов кода:
      model.compile(optimizer='adam',loss={
      'enhanced_feature_attention':'mse','classification':
      'binary_crossentropy'},loss_weights={
      'enhanced_feature_attention': 0.5, 'классификация': 0.5})
      alpha=0.5 балансировки реконструкция признаков (MSE) и классификация (кросс-энтропия), что приводит к стабильной сходимости в пределах 50-100 эпох.
      ПРИМЕЧАНИЕ: Примените смешанную регуляризацию L1/L2 (эластичная сеть, интенсивность по умолчанию 0,001) к обоим полностью связанным слоям для улучшения выбора объектов и генерализации.
    2. Настройки параметра: Установите весовой коэффициент α для контроля относительной важности двух потерь и используйте в коде α = 0,5. Настройте размер пакета равным 64, задайте количество эпох равным 200 и выделите 10% данных для проверочного набора.
    3. Добавьте функции обратного вызова.
      Оповещения Keras с параметрами по умолчанию:
      Вызов кода:
      из tensorflow.keras.callbacks импортирует EarlyStopping, ReduceLROnPlateau
      callbacks = [EarlyStopping(monitor='val_loss', patience=5, mode='min', restore_best_weights
      =true), Уменьшите LROnPlateau(monitor='val_loss', factor=0.5, patience=5, min_lr=0.0005, verbose=1)]
      1. Включите обратный вызов EarlyStoping , чтобы остановить процесс обучения, когда потери при проверке не уменьшаются в течение 5 последовательных эпох.
      2. Добавьте обратный вызов ReduceLROnPlateau для адаптивной настройки скорости обучения. Установите коэффициент затухания равным 0,5 и минимальный коэффициент обучения равным 0,0002.
    4. Генерация функций веса внимания: После тренировки извлеките веса внимания из слоя Enhanced Feature Attention. Создание взвешенных признаков как для обучающего, так и для тестового наборов. Передайте эти характеристики в классификатор SVM.
  4. Оценка модели
    ПРИМЕЧАНИЕ: Разделение 70 на 30 тренировок и тестов балансирует между обучением и оценкой. SMOTE устраняет дисбаланс классов, повышая производительность при работе с несбалансированными текстовыми данными. MinMaxScaler стабилизирует модели, основанные на расстоянии. Единицы: 64 (Attn-SVM) и 128 (VWR-Attn-SVM) балансовая емкость; 128 учитывает сложность преобразования рангов Ван-дер-Вардена. Отсеивание (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) корректирует скорость обучения (min 0.0001-0.0005) для лучшей сходимости.
    1. Дизайн исследования абляции и сравнение: Определите следующие модели для сравнения: Базовый уровень SVM: Традиционная SVM с ядром радиальной базисной функции (RBF); Attn-SVM: SVM с улучшенным механизмом внимания к функциям; VWR-Attn-SVM: SVM, сочетающая в себе преобразование Ван дер Вардена и повышенное внимание к функциям.
    2. Метрики оценки (Таблица 2): Оцените производительность модели с помощью точности, точности, полноты, оценки F1 и AUC.
  5. Визуализация внимания и интерпретация моделей
    1. Визуализация весов внимания ключевых особенностей
      Барплот Matplotlib для 15 основных функций:
      Вызов кода:
      Импортируйте matplotlib.pyplot как PLT
      top_indices = np.argsort(-avg_weights)[:15]
      top_features = [feature_names[i] для i в top_indices]
      top_weights = avg_weights[top_indices]
      plt.figure(figsize=(12, 8))
      plt.barh(top_features, top_weights, color='небесно-голубой')
      plt.xlabel('Вес внимания')
      plt.title('Веса внимания к основным функциям')
      plt.show()
    2. Сравнение влияния обычного преобразования рангов: Сравните производительность модели (точность, точность, полнота, оценка F1, AUC) с включенным use_rank_transform и без него . Выделите ключевые различия в метриках в форматированной таблице.
    3. Сравнение важности признаков: Проанализируйте согласованность между важными признаками, выявленными статистическими тестами (например, хи-квадрат) и механизмом внимания.
      ПРИМЕЧАНИЕ: Если вычислительные ресурсы ограничены, уменьшите количество единиц (например, до 32) или эпох (например, до 100). Настройте l1_reg/l2_reg для балансировки сложности модели (более высокие значения улучшают регуляризацию).

4. Сравнение нескольких классификаторов (Дополнительный файл 2 и Дополнительный файл 3)

  1. Определите словарь классификатора. Создайте словарь классификаторов для сравнения, включая KNN, Logistic Regression, AdaBoost, Naive Bayes и SVM с ядром RBF (параметры по умолчанию).
  2. Инициализируйте результирующие кадры данных. Создайте четыре кадра данных для хранения метрик оценки со столбцами: Classifier, Accuracy, Precision, Recall, F1-Score и AUC.
  3. Обучайте и оценивайте классификаторы. Для каждого классификатора выполните следующие действия.
    Примеры классификаторов с параметрами и начальными значениями:
    Вызов кода:
    из sklearn.linear_model import LogisticRegression
    из sklearn.svm импорт SVC
    lr = Логистическая регрессия(random_state=RANDOM_SEED, max_iter=1000)
    svm = GridSearchCV(SVC(random_state=RANDOM_SEED, вероятность=True),
    param_grid={'C': [0.001,0.01 1, 10,100,1000], 'гамма': [0.001,0.01 1, 10,100,1000],
    kernel': ['rbf', 'linear']}, cv=5, scoring='f1')
    ПРИМЕЧАНИЕ: Во всех моделях используется random_state=42 для воспроизводимости.
    1. Обучите классификатор на масштабированных обучающих данных.
    2. Прогнозируйте и вычисляйте вероятности как на обучающем, так и на тестовом наборах.
    3. Создавайте отчеты о классификации и сохраняйте метрики в соответствующих кадрах данных.
  4. Интеграция результатов SVM с улучшенным вниманием к функциям. Включите метрики производительности из Attn-SVM и VWR-Attn-SVM (из эксперимента 3) в существующие кадры данных.
  5. Распечатайте сравнительные результаты. Отображайте таблицы оценки для электронных писем, не содержащих спам и спам, как в обучающих, так и в тестовых наборах.
  6. Визуализируйте результаты. Используйте sns.barplot для построения графиков метрик производительности классификатора. Поверните надписи по оси X на 45° для обеспечения удобочитаемости. Оптимизируйте макет и отобразите график с помощью plt.show().
    Интерпретация выходных данных sns.barplot:
    Вызов кода:
    Импорт Seaborn в качестве SNS
    sns.barplot(x='Классификатор', y='F1-Score', data=results)

5. Сравнительная таблица многомерной производительности различных классификаторов по времени обучения/тестирования и памяти (Дополнительный файл 4)

  1. Предварительная обработка данных: Загрузить spambase.csv или spam_indonesian.csv; Разбивается на 70% тренировочные/30% тестовые наборы; стандартизируйте функции с помощью MinMaxScaler.
  2. Обучение модели: Train KNN, Logistic Regression, AdaBoost, Naive Bayes, 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]; kernel:['rbf','linear']); В моделях внимания используются 2-слойные полносвязные сети, регуляризация L1/L2 и Dropout.
    Выходные данные: таблицы производительности, таблицы ресурсов, мультиметрические диаграммы, графики времени/памяти, визуализация веса внимания.

6. Экспериментальные результаты CNN, RNN, LSTM или трансформаторов (Дополнительный файл 5)

  1. Предварительная обработка: Загрузите spambase.csv или spam_indonesian.csv, при необходимости примените SMOTE для дисбаланса классов, разделите на тренировку/тест (70/30).
  2. Обучение: Сборка CNN, RNN, LSTM, Трансформатор; Adam(0.001), двоичная кросс-энтропия, batch_size=32, эпохи=10, ранняя остановка (терпение=5) и планирование скорости обучения.
  3. Оценка: точность вычислений, прецизионность, полнота, F1, AUC; Записывайте время обучения/тестирования и использование памяти.
  4. Визуализация: создание графиков сравнения производительности и ресурсов; сохранять результаты CSV.
  5. Выходные данные: таблица показателей производительности, таблица потребления ресурсов, графики сравнения, файлы CSV.

7. Инструкции по дополнительному коду

  1. Чтобы запустить код и реплицировать рисунки, поместите spam.csv или spam_indonesian.csv в ту же директорию. Install dependencies via pip install numpy pandas matplotlib seaborn scikit-learn tensorflow imbalanced-learn psutil. Выполнение скрипта; Он будет автоматически обрабатывать данные, обучать модели и генерировать/отображать все цифры (тепловые карты, графики производительности) во время выполнения.

Access restricted. Please log in or start a trial to view this content.

Results

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

Для начала, в соответствии с установленным протоколом эксперимента, на рисунке 1 представлен обзор общей блок-схемы данного исследования. На рисунке 2 последовательно изображены блок-схемы операций экспериментов 2. Кроме того, в таблице 1 в основном представлены частоты употребления слов и символов в наборе данных спам-писем spam.csv.

Что касается оценки производительности модели, использовались пять ключевых метрик: ...

Access restricted. Please log in or start a trial to view this content.

Discussion

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

Это исследование подтвердило эффективность VWR-Attn-SVM на основе набора данных Spambase, что дало представление о многомерном и разреженном характере данных о спаме. Эксперименты показали, что только некоторые признаки в данных о спаме имеют сильную корреляцию с метками; Традиционные модели одинаково обрабатывают все функции, что приводит к снижению производительности, в то время как механизм внимания этой модели может динамически оценивать ключевые функции. После интеграции рангового п...

Access restricted. Please log in or start a trial to view this content.

Disclosures

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

У авторов нет конфликта интересов, который можно было бы раскрыть.

Acknowledgements

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

Мы благодарим Фуцзяньский математический альянс (грант No 2023SXLMMS10) и Фонд естественных наук провинции Фуцзянь (2023J05083, 2022J011396, 2023J011434) за финансирование этой работы.

Access restricted. Please log in or start a trial to view this content.

Materials

List of materials used in this article
NameCompanyCatalog NumberComments
<Сильный>Дополнительный файл 2: code_new.py; Дополнительный файл 3: code_indonesian.py.
numpyРазработчики NumPyБиблиотека для численных вычислений на Python
ПандыКоманда разработки пандБиблиотека для обработки и анализа данных
matplotlibMatplotlib Developers Библиотека для создания статичных, анимированных и интерактивных визуализаций
СиборнМайкл Уаском и др.Библиотека визуализации статистических данных на базе matplotlib
scikit-learnКоманда разработчиков scikit-learnБиблиотека машинного обучения, включающая различные алгоритмы классификации, регрессии и кластеризации
тензорный потокGoogleОткрытый фреймворк машинного обучения, включая API Keras для построения нейронных сетей
imblearnРазработчики с дисбалансированным обучениемБиблиотека для работы с несбалансированными наборами данных, включая SMOTE для перевыборки
ПредупрежденияСтандартная библиотека PythonМодуль для выдачи предупреждающих сообщений
Дополнительный файл 4: code_compute_time.py
numpyРазработчики NumPyЧисленная вычислительная библиотека для Python
ПандыКоманда разработки пандБиблиотека обработки и анализа данных
matplotlibРазработчики MatplotlibБиблиотека визуализации для создания сюжетов и фигур
СиборнМайкл Уаском и др.Библиотека визуализации статистических данных, построенная на matplotlib
scikit-learnКоманда разработчиков scikit-learnБиблиотека машинного обучения с инструментами классификации, регрессии и предобработки
тензорный потокGoogleОткрытый фреймворк машинного обучения с API Keras для нейронных сетей
imblearnкоманда разработчиков с несбалансированным обучениемБиблиотека для обработки несбалансированных наборов данных (включает SMOTE)
ПредупрежденияСтандартная библиотека PythonМодуль для выдачи предупреждающих сообщений
ВремяСтандартная библиотека PythonМодуль для функций, связанных со временем
psutilДжампаоло РодолаБиблиотека для получения информации о системе и мониторинга использования ресурсов
ОССтандартная библиотека PythonМодуль для взаимодействия с операционной системой
Дополнительный файл 5: DNN.py.
ПандыКоманда разработки пандБиблиотека обработки и анализа данных
numpyРазработчики NumPyЧисленная вычислительная библиотека для Python
ВремяСтандартная библиотека PythonМодуль для функций, связанных со временем
psutilДжампаоло РодолаБиблиотека для поиска информации о системе и мониторинга ресурсов
matplotlibРазработчики MatplotlibБиблиотека визуализации для создания сюжетов и фигур
scikit-learnКоманда разработчиков scikit-learnБиблиотека машинного обучения с инструментами предварительной обработки данных, выбора моделей и метрик
imblearnкоманда разработчиков с несбалансированным обучениемБиблиотека для обработки несбалансированных наборов данных (включает SMOTE)
тензорный потокGoogleОткрытый фреймворк машинного обучения с API Keras для построения нейронных сетей

References

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).

Access restricted. Please log in or start a trial to view this content.

Reprints and Permissions

Request permission to reuse the text or figures of this JoVE article

Request Permission

Tags

Spam ClassificationSupport Vector MachinesVan Der WaerdenRank Score AttentionFeature SelectionText NormalizationOutlier RobustnessAttention MechanismHigh Dimensional DataText Based Platforms

Related Articles