Содержание к диссертации
Введение
Глава 1. Состояние проблемы и обзор существующих методов классификации и фильтрации веб-контента. Постановка задачи 12
1.1. Методы классификации веб-контента 12
1.2. Способы хранения информации о классифицированных источниках веб контента 27
1.3. Методы фильтрации веб-контента 28
1.4. Постановка задачи 34
Выводы по Главе 1 36
Глава 2. Базовая модель сети доверия для классификации веб-контента 37
2.1. Сеть доверия для классификации веб-контента 37
2.2. Обоснование целесообразности использования теории игр для формализации взаимодействия агентов сети доверия. Необходимые сведения из теории игр 43
2.3. Теоретико-игровая модель сети доверия 45
Выводы по Главе 2 57
Глава 3. Разработка алгоритмов классификации, фильтрации источников веб контента и определения устойчивости равновесных состояний 58
3.1. Алгоритм А1 классификации веб-контента 58
3.2. Алгоритм А2 фильтрации веб-контента 59
3.3. Алгоритмы А3, А4 для определения устойчивости равновесных состояний теоретико-игровой модели 61
Выводы по Главе 3 75
Глава 4. Практическая реализация 77
4.1. Система классификация и фильтрации веб-контента «Этикум» 77
4.2. Сценарий работы системы з
4.3. Возможности дальнейшего развития теоретико-игрового подхода в сфере
информационно-телекоммуникационных систем 101
Выводы по Главе 4 102
Заключение 104
Список литературы 106
- Способы хранения информации о классифицированных источниках веб контента
- Обоснование целесообразности использования теории игр для формализации взаимодействия агентов сети доверия. Необходимые сведения из теории игр
- Алгоритмы А3, А4 для определения устойчивости равновесных состояний теоретико-игровой модели
- Сценарий работы системы
Способы хранения информации о классифицированных источниках веб контента
Для анализа в подобных методах используются данные HTTP(S)-запросов и ответов [2, 3]: заголовки, содержащие кроме всего прочего URL, и тело ответа на запрос. С учётом того, что в теле HTTP(S)-ответа может передаваться текстовое, графическое, аудио, видео и другое содержимое, в методах автоматизированной классификации можно выделить методы, позволяющие обрабатывать текстовые, графические, аудио- и видео-данные.
Для автоматической классификации используются методы информационного поиска [4, 5] и машинного обучения [5–7]. Классификаторы текста реализуются на основе сетей Байеса [8, 9], нейронных сетей [10–16], с использованием генетического моделирования [17, 18], N-грамм [19, 20] и др. Для графических данных применяются классификаторы, использующие линейную машину опорных векторов [21] с описанием изображений векторами Фишера [22], конволюционные нейронные сети [23], основанные на деревьях решений и их ансамблях [24].
В процессе формирования веб-страницы, как основного элемента веб-контента, могут принимать участие несколько ресурсов: непосредственно запрашиваемый ресурс (чьё имя является частью запрашиваемого URL), множество сторонних ресурсов, которые могут являться источником связанных со страницей данных (графики и/или других мультимедиа-данных; средств визуального отображения, например, CSS; выполняющихся на стороне клиента скриптов и т. п.), а также данные, полученные при помощи различных клиентских технологий. Часто текстовое и мультимедийное содержимое интегрируется непосредственно в тело запрашиваемой страницы со сторонних ресурсов. Примером такого способа формирования страницы является использование различных сетей доставки (и дистрибуции) контента (CDN) [25]. Существует два способа интеграции внешнего содержимого в страницу: встраивание на стороне сервера и запрос содержимого со стороны клиента (браузером). Первый способ используется в основном для встраивания текстовых данных в страницу, а второй — как текстовых, так и любых других связанных со страницей данных (графика и другие мультимедиа-данные). В настоящее время в процессе формирования страниц в браузере широко используются клиентские технологии, возлагающие часть нагрузки по преобразованию и/или визуализации данных на клиента. Основной из таких технологий является AJAX [26], позволяющая загружать порции данных и/или разметки в определённый XML/HTML-контейнер. Подобный способ загрузки может использоваться для частей страницы, не относящихся непосредственно к её содержанию (например, реклама, всплывающие окна и т. п.), но влияющих в целом на восприятие страницы пользователем, а значит, и на принадлежность к тому или иному классу.
Таким образом, при решении задачи классификации веб-контента автоматизированные методы не являются достаточно эффективными при обработке веб-страниц, представляющих собой в общем случае мультимедийное содержимое из множества источников, и использующих клиентские технологии для генерации контента.
Автором предложен метод автоматизированной классификации HTML-страниц с предварительным выделением значимой части страницы и определением функционально-смыслового типа текста. Схема программного комплекса, реализующего данный метод, показана на рис. 1.1.
Программный модуль взаимодействия с браузером (1) реализует приём данных от браузера, содержащих код страницы и метаданные, и передачу этих данных модулю принятия решения для получения решения о разрешении или запрете отображения запрошенной страницы. Реализация интерфейса взаимодействия с браузером предполагает использование интерфейса программирования приложений (API) браузера для получения кода запрошенной страницы и ее метаданных (рис. 1.1, вход 1). Извлеченная информация преобразуется в объект, передаваемый модулю принятия решения (рис. 1.2). После получения от модуля 2 решения о разрешении или запрете отображения запрошенной страницы, браузеру чрез его API передается код страницы для отображения. Для обеспечения совместимости с различными браузерами, одно устройство может иметь несколько различных модулей 1 взаимодействия с браузером HTML-страниц с предварительным выделением значимой части страницы и определением функционально-смыслового типа текста Программный модуль принятия решения (2) осуществляет приём от модуля взаимодействия с браузером объекта, содержащего код страницы и ее метаданные (рис. 1.2), и передачу модулю взаимодействия с браузером решения о разрешении или запрете отображения запрошенной страницы. После получения данных от модуля взаимодействия с браузером модуль отправляет запрос характеристик страницы модулю хранения информации о классифицированных интернет-ресурсах и, если запись о странице существует в базе данных, получает от модуля 4 сообщение о характеристиках страницы в формате RDF/XML (рис. 1.3). Каждое сообщение содержит URL ресурса в поле Identifier, факторы E3 (aims) и I1 (topic) классификации Синклера-Шарова [27] в полях Type и Subject соответственно. Поле Creator для внутренних сообщений не заполняется. Если в базе данных отсутствует запись о запрошенной странице, модуль 2 отправляет объект, содержащий код страницы и её метаданные (рис. 1.2), модулю классификации HTML-страниц и в ответ получает сообщение о характеристиках страницы в формате RDF/XML (рис. 1.3) с пустым полем Creator. На основании полученного сообщения и действующей политики (настроек устройства) модуль 2 принимает решение о разрешении или запрете отображения запрошенной страницы и перенаправляет принятое решение в модуль взаимодействия с браузером.
Обоснование целесообразности использования теории игр для формализации взаимодействия агентов сети доверия. Необходимые сведения из теории игр
Существующие модели сетей доверия [49] имеют некоторые свойства [50, 51], которые могут быть использованы для решения задач классификации и оказывают влияние на способы перерасчёта значений репутаций агентов.
Свойство 1. Прямое и транзитивное доверие. Существуют системы [16, 52], моделирующие только отношения прямого доверия. В таких системах решение о взаимодействии с агентом принимается на основании опыта предыдущих контактов и (возможно) дополнительных характеристик, таких как, например, контекст взаимодействия (ситуативность), взаимности, выполнение ролей [53] и т. д. При этом на изменение значения репутации влияет только непосредственный опыт взаимодействия между агентами. Системы, в которых помимо прямого доверия учитывается также и транзитивное доверие [54–57], позволяют формировать мнение об агенте на основе непрямого взаимодействия, например, при помощи «семантического расстояния» [54], «ядра доверия» [55], цепочки или сети доверия [56–58] или социальной сети [32]. В этом случае значения репутации могут быть относительными или вычисляемыми (в зависимости от выстроенных транзитивных отношений), а изменения этих значений могут происходить и без непосредственного взаимодействия между агентами.
Свойство 2. Анонимность агентов сети. В некоторых существующих системах [33, 56] анонимность агентов является одним из свойств, позволяющих повысить устойчивость системы к манипуляциям недобросовестных пользователей. В этом случае исключается или минимизируется возможность агента целенаправленно повышать собственную репутацию и объединяться с другими агентами с этой целью.
Свойство 3. Устойчивость, надёжность и автономность системы. Устойчивость и надёжность обусловлены механизмом изменения репутации агентов и, как, например, в [55], отсутствием стимулов совершения пустых транзакций между агентами [33]. Автономность или саморегулируемость отражает степень зависимости системы от необходимости внешних регулирующих воздействий. Существуют модели, например, [56], способные работать полностью автономно.
Свойство 4. Выражение значения репутации. Существуют модели, в которых значения репутации выражаются дискретными значениями [54, 55, 59] или числовыми значениями в определённом диапазоне [32, 33, 52, 53, 56]. Причём в модели [52] значение находится в фиксированном предопределённом диапазоне, в модели [33] ограничено снизу и сверху. Также возможно выражение репутации в виде совокупности значений, как, например, в [60]. Изменение значения репутации происходит после завершения процесса взаимодействия между агентами сети репутации. Известны модели, в которых решение о взаимодействии принимается с использованием пороговых значений [16, 58]. В некоторых моделях, кроме завершения транзакции, используются и другие условия изменения репутации, например, выполнение определённых действий (ролей) [53].
В предлагаемой модели агенты сети репутации не взаимодействуют друг с другом напрямую. В качестве показателя репутации используется не мнение об агенте других участников сети [61], а степень доверия системы данному агенту. В этом случае является неизменным контекст взаимодействия, я значит, репутация может быть выражена единственным значением. Значение репутации агента используется при расчёте совокупной оценки источника веб-контента, при этом каждый агент оказывает влияние на совокупную оценку пропорционально его репутации. Могут использоваться многофакторные оценки. Изменения значений репутации каждого из агентов происходит на основе опыта его участия в оценке того или иного интернет-ресурса [62].
Результатом процесса классификации является присвоение источнику веб-контента оценки принадлежности источника веб-контента к одному или нескольким классам (возрастным, тематическим, отраслевым и другим группам). Здесь и далее понятия оценка источника веб-контента и оценка веб-контента используются как синонимы в силу того, что оценке подвергается непосредственно веб-контент, а в результате процесса классификации оценка присваивается источнику данного (оценённого) веб-контента. Каждая группа оценок X задана множеством возможных значений оценок Xj, где i = l,к, к— количество возможных оценок для данной группы.
Например, согласно федеральному закону «О защите детей от информации, причиняющей вред их здоровью и развитию» (№ 436-ФЗ), существует 5 возрастных оценок информационного содержимого: 0+, 6+, 12+, 16+ и 18+ [1].
В рамках работы задача классификации источников веб-контента решается при помощи сети доверия А, представляющей собой множество агентов щ (і = Ui): А = {а1,а2,...,ап}, где п — количество агентов, зарегистрированных в сети доверия на данный момент. Агентами сети доверия могут являться пользователи и автоматизированные системы (программы). Такая сеть доверия предназначена для определения соответствия источника веб-контента тому или иному классу посредством определения итоговой оценки, полученной на основе взвешенного мнения агентов сети. Агенты-пользователи оценивают источники веб-контента, руководствуясь собственным опытом, а автоматизированные системы осуществляют оценку на основании данных, предоставленных внешними службами (источниками данных).
Алгоритмы А3, А4 для определения устойчивости равновесных состояний теоретико-игровой модели
Разработанный алгоритм классификации веб-контента описывает процесс классификации источников веб-контента агентами сети доверия. Исходными данными для работы алгоритма является идентификатор источника веб-контента, для которого необходимо определить принадлежность к классу.
Данная последовательность действий выполняется для каждого агента сети доверия при формировании им оценки источника веб-контента.
Шаг 1. Агент сети доверия выбирает оценку для определённого источника веб-контента и отправляет выбранную оценку для дальнейших расчётов.
Шаг 2. Оценка, выбранная агентом, сохраняется для последующего использования. Если для данного источника веб-контента агент ранее оставлял оценку, новая оценка заменит предыдущую.
Шаг 3. Если другие агенты сети доверия ранее оставляли оценки для данного источника веб-контента, то эти оценки будут использованы при расчёте итоговой оценки. Если других оценок для данного источника веб-контента не зарегистрировано, то единственная оценка используется как итоговая, и на этом работа алгоритма заканчивается.
Шаг 4. Если существуют оценки для данного источника веб-контента, оставленные другими агентами, то на основе всех существующих для данного источника веб-контента оценок рассчитывается итоговая оценка. При расчёте итоговой оценки используются текущие значения репутации каждого из агентов. Итоговая оценка выбирается по формуле (2.1), как оценка, имеющая максимальную сумму значений репутации агентов сети доверия.
Шаг 5. После определения итоговой оценки для каждого агента, чьи оценки данного источника веб-контента были использованы при расчёте итоговой оценки, вычисляется новое значение репутации по формулам (2.2 и 2.3). Значение репутации агентов, чья оценка совпала с итоговой, увеличивается. Значение репутации остальных агентов, оставивших оценки для данного источника веб-контента, уменьшается.
Шаг 6. Рассчитанная итоговая оценка сохраняется, и работа алгоритма завершается. Блок-схема алгоритма классификации веб-контента показана на рис. 3.1. Исходными данными для работы алгоритма фильтрации веб-контента является профиль фильтрации и идентификатор источника веб-контента (целевой веб-контент), доступ к которому следует разрешить или ограничить. Данная последовательность действий выполняется при каждой попытке доступа к источнику веб-контента:
Шаг 1. Загрузка профиля фильтрации. Профиль фильтрации содержит критерии разрешения или запрета доступа к веб-контенту, имеющему определённые оценки, определяющие его принадлежность к тому или иному классу (возрастные, тематические, отраслевые и другие метки).
Шаг 2. Определение режима фильтрации. Значениями режима фильтрации являются «разрешить» и «запретить». Если фильтр работает в режиме «разрешить», то доступ разрешается к источникам веб-контента, удовлетворяющим профилю фильтрации, или не имеющим рассчитанную итоговую оценку. Если фильтр работает в режиме «запретить», то доступ запрещается к источникам веб-контента, не удовлетворяющим профилю фильтрации, или не имеющим рассчитанную итоговую оценку. Шаг 3. По идентификатору источника веб-контента, к которому предполагается получить доступ, выполняется запрос на получение оценки (группы оценок), связанной с данным источником веб-контента.
Шаг 4. Если данные об оценке целевого источника веб-контента получены, то выполняется проверка на соответствие полученной оценки (или группы оценок) профилю фильтрации: доступ к веб-контенту предоставляется, если оценка удовлетворяет профилю фильтрации, и запрещается в противном случае.
Шаг 5. Если с целевым источником веб-контента не связано ни одной оценки, то решение о предоставлении или запрете доступа принимается на основании режима фильтрации — «разрешить» или «запретить». После предоставления или запрета доступа работа алгоритма заканчивается. Блок-схема алгоритма фильтрации веб-контента показана на рис. 3.2. В предложенной теоретико-игровой модели игра переходит из одной точки равновесия в другую не мгновенно, а через изменение выигрышной стратегии, создавая вокруг новой точки равновесия (соответствующей новой выигрышной стратегии) область притяжения [80]. Игра не перейдёт в новую точку равновесия до тех пор, пока все игроки не сменят свои стратегии на новую выигрышную стратегию.
Таким образом, устойчивость равновесных состояний в разработанной теоретико-игровой модели можно оценить следующими способами: 1. Определить, какую долю в суммарной репутации игроков, участвующих в игре, должна составлять сумма значений репутаций игроков, отклонившихся от равновесной стратегии, чтобы в игре изменилась выигрышная стратегия. 2. Определить минимальное значение репутации игрока, необходимое для того, чтобы в игре изменилась выигрышная стратегия при последовательном присоединении к игре нескольких игроков, имеющих данное значение репутации.
Сценарий работы системы
Сервер дополнительно включает соединённые с блоком хранения данных блок регистрации новых ресурсов и блок присвоения оценок.
В случае необходимости разделения вычислительных ресурсов блок приёма оценок, блок актуализации оценок и блок приёма-передачи информации предпочтительно размещают на первом сервере, а блок хранения данных — на втором сервере.
Система классификации и фильтрации веб-контента работает следующим образом. Предварительно в блоке фильтрации клиентского устройства пользователя, посредством которого предполагается осуществлять доступ к веб-контенту, производят настройку профиля доступа пользователя к веб-контенту с учётом необходимых пользователю критериев.
Запрос с обращением к источнику веб-контента, сформированный пользователем на клиентском устройстве пользователя, передается в блок фильтрации. Запрос содержит адрес источника веб-контента (URL). Блок фильтрации перенаправляет запрос в расположенный на удалённом сервере блок приёма-передачи информации. Блок приёма-передачи информации запрашивает информацию о характеристиках источника веб-контента из блока хранения данных. Если блок хранения данных содержит информацию, характеризующую целевой веб-контент, то информация, относящаяся к запрошенному ресурсу, возвращается в блок приёма-передачи информации, откуда передаётся в блок фильтрации. На основании полученных от блока приёма-передачи информации данных и профиля фильтрации, установленного и настроенного в блоке фильтрации, блоком фильтрации принимается решение о предоставлении или ограничении доступа к запрашиваемому источнику веб-контента, в результате чего пользователь получает содержимое запрошенного информационного ресурса или, соответственно, уведомление о запрете доступа. Если в блоке хранения данных не содержится информации, характеризующей целевой веб-контент, информация об этом также передаётся в блок фильтрации, и пользователь получает или не получает доступ к запрошенному ресурсу на основе соответствующих настроек в профиле блока фильтрации. Адрес неописанного в блоке хранения данных источника веб-контента передаётся из блока приёма-передачи информации в блок регистрации новых ресурсов, который передаёт информацию об этом ресурсе в блок хранения данных, который осуществляет запись и хранит соответствующую информацию о новом источнике веб-контента.
Одновременно с этим на клиентском устройстве агента сети доверия, а именно — в блоке формирования оценок, при обращении к источнику веб-контента или при получении через блок формирования оценок приглашения оценить определённый источник веб-контента агентом сети доверия присваивается оценка веб-ресурса. Присвоенная оценка направляется в блок приёма оценок. Блок приёма оценок передаёт информацию о веб-ресурсе, его оценке, присвоенной агентом сети доверия, и значение репутации агента в блок хранения данных, который сохраняет переданную информацию. Блок приёма оценок передаёт информацию о необходимости актуализации оценки данного интернет-ресурса в блок актуализации оценок. Блок актуализации оценок при взаимодействии с блоком хранения данных осуществляет перерасчёт оценки данного источника веб-контента, на основе оценок, присвоенных агентами сети доверия и значений репутации каждого из этих агентов. При этом оценки агентов сети доверия учитываются при расчёте совокупной оценки пропорционально значениям их репутации. Рассчитанная совокупная оценка источника веб-контента передаётся для сохранения в блок хранения данных и используется в процессе запроса оценки блоком фильтрации. После сохранения совокупной оценки блок актуализации оценок инициирует процесс перерасчёта значений репутации агентов сети, чьи оценки были использованы в процессе актуализации совокупной оценки источника веб-контента. При этом значения репутации агентов корректируются в зависимости от того, насколько оценка, присвоенная данным агентом, соответствует рассчитанной совокупной оценке источника веб-контента.
Блок присвоения оценок обрабатывает информацию о веб-ресурсах, запись о которых была сделана блоком регистрации новых ресурсов. При этом блок присвоения оценок запрашивает из блока хранения данных информацию о ресурсах, не имеющих оценок, и осуществляет поиск информации об источнике веб-контента во внешних источниках информации (базах данных, каталогах, сервисах и т. п.). При этом при наличии в системе нескольких блоков присвоения оценок каждый блок присвоения оценок работает с каким-либо одним внешним источником и выполняет преобразование данных, полученных из внешнего источника, в формат оценки, передаваемой блоком формирования оценок блоку приёма оценок. Каждый блок присвоения оценок выступает в системе как агент сети доверия, формирующий оценки источников веб-контента и имеющий собственное значение репутации. Каждая оценка, сформированная блоком присвоения оценок и переданная блоку хранения данных, вызывает перерасчёт совокупной оценки источника веб-контента и корректировку значений репутаций агентов сети доверия в блоке актуализации оценок [93].