newpage section Разработка модели данных для решения задачи поиска спа

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
\newpage
\section[Разработка модели данных для решения задачи поиска спам-сообщений]{Разработка модели данных для решения задачи поиска спам-сообщений}
\subsection[Подходы к решению задачи поска спама]{Подходы к решению задачи поска спама}
\hspace{\parindent}Спам - серьёзная проблема, возникающая перед подавляющим большинством пользователей. Существует множество различных подходов к её решению. Одни основаны на анализе содержимого сообщения, другие — на анализе поведения абонента. Рассмотрим подробнее эти методы.
\subsubsection[Подходы к решению задачи поска спама]{Подходы к решению задачи поска спама}
\hspace{\parindent}
Чтобы её решить, необходимо научиться классифицировать сообщения на спам и не-спам. Основной подход к классификации текста основан на машинном обучении классификатора с помощью обучающих данных — некоторого количество типичных образцов документов из каждого класса. Для реализации этого подхода предварительно производится построение некоторой числовой модели сообщения, например в виде многомерного вектора слов и их веса в документе, а затем строится и обучается классификатор. Существуют различные виды машинного обучения: решающие деревья, наивный байесовский классификатор, нейронные сети, метод опорных векторов и другие. Так или иначе они используются для решения задачи поиска спам-сообщений, но их специфика различна. Например, для email'ов более эффективен метод k ближайших соседей (объект присваивается тому классу, который является наиболее распространённым среди соседей данного элемента), а для коротких сообщений — метод опорных векторов и наивный байесовский классификатор.\\\indent
Рассмотрим для начала один из наиболее простых и распространённых методов для фильтрации спама — байесовскую фильтрацию. Этот метод основан на предположении, что одни слова чаще встречаются в спаме, а другие — в обычных сообщениях. Смысл байесовского фильтра в том, что при его обучении для каждого слова вычисляется и сохраняется «вес» — оценка вероятности, что сообщение, содержащее данное слово, является спамом. Например, такой оценкой может являться отношение числа появлений слова с спаме к общему числу появлений. «Весом» сообщения является усреднённый вес всех его слов. Является ли сообщение спамом, определяется по тому, превышает ли «вес» письма некоторую планку. После отнесения сообщения к категории спама или не-спама для содержащихся в нем слов пересчитываются «веса». У данного подхода существует проблема редких слов, то есть если слово не участвовало в обучении, невозможно вычислить «вес» такого слова. Простое решение этой проблемы состоит в игнорировании подобных слов. Опять же можно игнорировать те слова, «вес» которых примерно равен 1/2 — нейтральные слова. Более чувствительным к контексту является метод, при котором используются сочетания слов, а не просто отдельные слова.\\\indent
При использовании метода опорных векторов сообщение рассматривается как неупорядоченное множество термов. Термами в информационном поиске называют слова, из которых состоит текст, а также такие элементы текста, как, например, числа. Для каждого из термов указан «вес», причём можно по-разному определять
Так или иначе практически в любом классификаторе для спама потребуется словарь, содержащий с ключевые, присущие именно спам-сообщениям слова.