Дмитрий Соловьев Евгений Чернов
DESCRIPTION
Выявление спам сайтов на основе анализа контента страниц. Дмитрий Соловьев Евгений Чернов. Что мы хотим получить?. Уменьшение количества поискового спама в выдаче поиска mail.ru. www.mail.ru. 2. 2. Зачем ?. Так как спам: генерирует огромное количество мусорного контента; - PowerPoint PPT PresentationTRANSCRIPT
Дмитрий СоловьевЕвгений Чернов
Выявление спам сайтов на основе анализа контента страниц
www.mail.ru 2
Что мы хотим получить?
Уменьшение количества поискового спама в выдаче поиска mail.ru
Уменьшение количества поискового спама в выдаче поиска mail.ru
2
Зачем ?
Так как спам:
генерирует огромное количество мусорного контента;
затрудняет эффективную работу поисковых серверов;
ухудшает ранжирование хороших интернет-ресурсов и релевантность результатов;
как следствие, приводит к уходу пользователей.
Так как спам:
генерирует огромное количество мусорного контента;
затрудняет эффективную работу поисковых серверов;
ухудшает ранжирование хороших интернет-ресурсов и релевантность результатов;
как следствие, приводит к уходу пользователей.
www.mail.ru 33
www.mail.ru 4
Методы воздействия на поисковый механизм:
Перенасыщение заголовков ключевыми словами.
Перенасыщение текстов ключевыми словами.
Оптимизация текстов под одно ключевое слово.
Оптимизация текстов под большое количество ключевых слов.
Оптимизация анкоров ссылок под ключевые слова.
Активный обмен ссылками.
Фермы ссылок. ...
4
Классификация воздействий на поисковый механизм
Воздействие при помощи оптимизации контента страницы.
Воздействие при помощи оптимизации ссылок.
Воздействие на поведенческие факторы.
…
Воздействие при помощи оптимизации контента страницы.
Воздействие при помощи оптимизации ссылок.
Воздействие на поведенческие факторы.
…
www.mail.ru 5
Вопрос:Разработка в каком направлении даст
лучшие результаты?
5
В 2006 году в рамках материалов конференции IW3C2 была опубликована статья: «Выявление спам-страниц через анализ контента» («Detecting Spam Web Pages through Content Analysis”. A. Ntoulas и коллектив авторов).
В статье показано, что 86% спама можно вычислить на основе анализа контента страниц.
www.mail.ru 6
Разработка в направлении детекции
контекстного спама даст лучший профит.
6
www.mail.ru 7
Для генерации текстов можно использовать:
Марковские цепи, обученные на больших объёмах текстов.
Заимствование существующих текстов и случайные вставки ключевых слов внутрь существующих текстов.
Замена слов в существующих текстах на синонимы.
7
Если для генерации текста использовать Марковскую модель N-го порядка, то, что бы выявить искусственность этого текста, потребуется строить модели порядка N+1.
Например:
«Самым интересным для меня узнать, как называются воды, омывающие остров Рюген»
для → меня → [узнать] P=0.0019
интересным → для → [меня] P=0.0020
меня →узнать → [,] P=0.0018
узнать → , → [как] P=0.0018
для → меня → [было] P=0.0001
меня → было → [узнать] P=0.0001
для → меня → было → [узнать] P=0.0008
интересным → для → меня → [было] P=0.0009
меня →было → узнать → [,] P=0.0007
было → узнать → , → [как] P=0.0007
важно → для → меня → [узнать] P=0.0004
меня → было → не → [узнать] P=0.0004
www.mail.ru 88
Модель 2-го порядка Модель 3 -го порядка
www.mail.ru 9
Нам интересны более простые методы выявления искусственности страниц.
Достаточно просто поддерживать в актуальном
состоянии.
Использовать для классификации спама с
высокой точностью.
9
www.mail.ru 10
Рассмотрим проблему обнаружения спам страниц как задачу бинарной классификации.
1 — спам
0 — не спам
Требуется:
1. Определить пространство признаков.
2. Определиться с методом классификации.
10
www.mail.ru 11
Качество классификации напрямую зависит от качества признаков описывающих пространство.
Линейно разделимые
признаки
Линейно неразделимые
признаки.
Выделение небольшого количества хорошо разделимых признаков позволит нам решить задачу классификации с большей
эффективностью.
11
www.mail.ru 12
020
040
060
080
010
0012
0014
0016
0018
0020
0022
0024
0026
0028
0030
0032
0034
0036
0038
0040
0042
0044
0046
0048
00
0
1
2
3
4
5
6
7
8
Не спамСпам
Количество слов на странице
% с
тра
ниц
мно
же
ства
Распределение количества слов на странице в спамовых и неспамовых множествах
12
0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 95 100
105
120
175
200
215
0
5
10
15
20
25
30
35
40
45
50
Не спамСпам
Количество слов в заголовке на странице
% с
тра
ниц
мно
же
ства
www.mail.ru 13
Распределение количества слов в заголовке страниц в спамовых и неспамовых множествах.
13
Распределение средней длины слова в спамовых и неспамовых множествах
0 2 4 6 8 10 12 14 160
5
10
15
20
25
30
35
40
Не спамСпам
Средняя длина слова
% с
тра
ниц
мно
же
ства
www.mail.ru 14
Количество слов в анкорах ссылок для спамовых и неспамовых множеств
0 30 60 90 120
150
180
210
240
270
300
330
360
390
420
450
480
510
540
570
600
630
660
690
0
2
4
6
8
10
12
Не спамСпам
Количество слов в анкорах ссылок
% с
тра
ниц
мно
же
ства
www.mail.ru 15
www.mail.ru
Степень сжатия документов в спамовых и неспамовых множествах
1 2 3 4 5 6 7 8 9 10 11 12 13 15 17 23
25,5 37
0
5
10
15
20
25
30
35
40
Не спамСпам
Степень сжатия
% д
оку
ме
нто
в м
нож
ест
ва
16
www.mail.ru
Сравнивая приведенные данные с ранними
исследованиями, приходим к выводу, что спам
подвергается мутациям, в сторону обычных страниц.
Хотя, в распределениях все еще присутствует явная
«искусственность».
Сравнивая приведенные данные с ранними
исследованиями, приходим к выводу, что спам
подвергается мутациям, в сторону обычных страниц.
Хотя, в распределениях все еще присутствует явная
«искусственность».
17
www.mail.ru
Распределение усредненного веса ключевых слов для спам- и обычных страниц
0
0,05 0,1
0,15 0,2
0,25 0,3
0,35 0,4
0,45 0,5
0,55 0,6
0,65 0,7
0,75 0,8
0,85 0,9
0,95
0
5
10
15
20
25
Не спамСпам
Усредненное значение веса ключевых слов
% с
тра
ниц
мно
же
ства
Усредненное значение веса ключевых слов документа: w̄dkw=
∑i=1
N
wi
N вес ключевого слова количество ключевых слов
wiN
18
00,
010,
020,
030,
040,
050,
060,
070,
080,
09 0,1
0,11
0,12
0,13
0,14
0,15
0,16
0,17
0,18
0,19 0,2
0,23
0,25
0,28
0,33
0,37
0
5
10
15
20
25
Не спамСпам
Усредненное значение веса значимых ключевых слов.
% с
тра
ниц
мно
же
ства
www.mail.ru
Распределение отношения веса значимых ключевых слов к общему количеству слов в спамовых и неспамовых
множествах
Усредненное значение веса значимых ключевых слов документа: w̄dimp=
∑i=1
K
wi
N вес ключевого слова количество ключевых слов количество значимых слов
wiN
K
19
0
0,03
0,05
0,07
0,09
0,11
0,13
0,15
0,17
0,19
0,21
0,23
0,25
0,27
0,29
0,31
0,33
0,36
0,38
0
2
4
6
8
10
12
14
16
18
Не спамСпам
Суммарная вероятность n-грамм грамматических категорий на странице
% с
тра
ниц
мно
же
ства
Распределение вероятности n-грамм грамматических категорий
www.mail.ru
P lh=1k∑i=0
k
(log (P (w+ 1. .. w+n ) ))Вероятность правдоподобия документа:P (w+ 1 . . . w+n )
kвероятность встречаемости n-граммыколичество n-грамм
20
www.mail.ru
Мы привели несколько характеристических языковых признаков и увидели, что они дают лучшее разделение, чем признаки, полученные на основе параметров страницы.
В эксперименте мы рассчитали 10 дополнительных признаков, основанных на статистике распределения слов в текстах. Теперь, имея хороший набор факторов, перейдем к решению поставленной задачи, а именно – попробуем создать классификатор на основе описанных признаков.
21
www.mail.ru
Для тренировки нашего классификатора мы использовали
страницы, отобранные асессорами. ___________________________________________
Обучающий вектор - 80 признаков.
Размер обучающего множества — 20000 страниц.
Размер тестового множества — 50000 страниц.
___________________________________________
Классификатор — многослойный персептрон:Входной слой — 80 нейронов ,
Скрытый слой — 96 нейронов
Выходной слой — 2 нейрона спам=1 и не-спам=0
Функция активации — сигмоид
Точность - 0,97Полнота - 0,94F-мера - 0,96
22
www.mail.ru
Результат показывает, что использование признаков, связанных
со статистикой распределения слов и грамматических
конструкций в текстах, привело к значительному улучшению
качества классификации спам-страниц, даже несмотря на
использование слабого алгоритма классификации.
Результат показывает, что использование признаков, связанных
со статистикой распределения слов и грамматических
конструкций в текстах, привело к значительному улучшению
качества классификации спам-страниц, даже несмотря на
использование слабого алгоритма классификации.
Что делать дальше.
Можно ли использовать информацию, полученную из
контентента страниц, для классификации сайтов?
Что делать дальше.
Можно ли использовать информацию, полученную из
контентента страниц, для классификации сайтов?
www.mail.ru 24
Спам или нет?
Спам сайт Не спам сайт
100% = спам 0% = не спам
www.mail.ru 25
Спам или нет?Спам сайт Не спам сайт
?? ?
www.mail.ru 26
Причины:
Хороший сайт со спам страницами:
Ошибка классификатора. Взломанный сайт. Переоптимизированный контент.
Спам сайт с полезными страницами:
Ошибка классификатора.Разбавление спама не спам страницами.
Хороший сайт со спам страницами:
Ошибка классификатора. Взломанный сайт. Переоптимизированный контент.
Спам сайт с полезными страницами:
Ошибка классификатора.Разбавление спама не спам страницами.
www.mail.ru 27
www.mail.ru
Характеристики сайта:
1. Доля спам страниц.
2. Расположение спам страниц.
3. Вероятность прихода/ухода на спам страницу с сайта.
4. На какие страницы ведут входящие/исходящие ссылки.
5. Вероятность участия в спам-ферме.
1. Доля спам страниц.
2. Расположение спам страниц.
3. Вероятность прихода/ухода на спам страницу с сайта.
4. На какие страницы ведут входящие/исходящие ссылки.
5. Вероятность участия в спам-ферме.
28www.mail.ru
Доля спам страниц
www.mail.ru 29www.mail.ru
Доля сайтов
Доля спам страниц
Распределение спама по сайту
www.mail.ru 30www.mail.ru
Энтропия спам страниц
Доля сайтов
31www.mail.ru
Участие в спам ферме
Целевой сайт
Дорвеи
0%100%20% 60%
50%45%
P=0,3
1. Вычисляем вероятность того, что сайт раскручивается спам-сайтами.
2. Вычисляем вероятность участия в спам-ферме.
www.mail.ru 32
Вероятность участия в спам-ферме
На отобранных признаках строим классификатор.
Используем алгоритм Еxpectation Maximization для выделения из множества сайтов двух центров, соответствующих классам: спам и не спам.
Используем полученные центры как исходные данные для классификации при помощи алгоритма k-nearest neighbor.
Всего получили 20 признаков
Результаты:
Уменьшение количества спама в выдаче в среднем на 20%.
Точность анализатора - 90%.
Доля спам сайтов - 17%.