Рисунок 3. Архитектура модуля предварительной обработки
Архитектура модуля предварительной обработки показана на рисунке 3.
Как следует из рисунка 3, архитектура модуля предварительной обработки состоит из отдельных приложений, выполняющих удаление HTML-разметки, приведение к нижнему регистру, удаление стоп-слов, стемминг [103], удаление знаков пунктуации, лемматизацию, а также извлечение ключевых слов с использованием алгоритма TF-IDF [104].
7.4. Классификатор спама
Рассматриваемая система агрегирования контента должна иметь эффективный механизм обнаружения спама и нежелательного контента. Проблема состоит в том, что спам может содержаться в различных типах контента и принимать многочисленные формы: от скрытой рекламы до незаконного контента в статьях, агрегированных комментариях и отзывах. Идентификация и классификация спама является актуальной научно-технической проблемой, которая решается разнообразными способами, включая применение экспертных систем на основе правил, а также систем, базисом которых являются алгоритмы машинного обучения.
Например, в исследовании [105] описан фреймворк для гетерогенного обучения на основе cost-based методов, которые применяются для обнаружения спама в сообщениях Twitter и представляют собой сочетание работы экспертов и алгоритмов машинного обучения, отвечающих за фильтрацию спама в сообщениях.
В статье [106] спам-сообщения были идентифицированы с помощью ИИ на основе алгоритмов глубокого обучения. Исследователи применили шесть моделей обучения и обнаружили, что XGBoost [107] имеет лучшую производительность среди моделей машинного обучения при определении спама.
Классификатор спама, входящий в состав предлагаемой системы, основан на поведенческом методе, описанном в [108], который совмещает подход, основанный на правилах, с нейросетевой обработкой. Данный метод использовался авторами указанного исследования для решения задач обнаружения спама в электронных письмах. Архитектура предлагаемого классификатора спама показана на рисунке 4.
Рисунок 4. Архитектура классификатора спама
Классификатор спама работает следующим образом: при поступлении новой партии агрегированного контента запускается анализ входного текста на предмет наличия внешних ссылок, занесенных в спам-список. При обнаружении совпадений на этом этапе данные считаются спамом и сохраняются в БД со спамом.
Следующим шагом является обработка на основе правил, в которой используются знания предметной области из базы знаний. Если данные определяются как спам, то они снова сохраняются в БД со спамом.
Для выявления спам-поведения предполагается формировать новости, комментарии, блоги и другой агрегированный контент в соответствии с их ключевыми словами, тегами, датой создания, информацией об авторе, внешними ссылками,