В настоящее время востребованным является сервис по автоматическому анализу мнений и оценок пользователей о контенте web-сайтов. Такой сервис называется web-аналитикой. Web-аналитика представляет собой сбор, анализ, представление и интерпретация информации о действиях посетителей веб-сайтов с целью их улучшения [1]. Анализ пользовательских оценок позволяет оперативно принимать решения о полезности той и или иной информации размещённой в сети на web-сайтах. Это помогает компаниям оценить свою маркетинговую политику, привлечь больше посетителей на свои ресурсы в сети, и в итоге получить большую прибыль [2, 3].
В связи с этим возникает необходимость разработки систем, которые выполняли бы автоматический анализ мнений и оценок пользователей о контенте web-сайтов и собирали бы всю эту информацию в единую базу данных.
Структурная схема разработанной автоматизированной информационной системы сбора и анализа статистики пользовательских сообщений на web-сайтах показана на рисунке 1.
Рисунок 1 — Структурная схема системы
Система состоит из пяти основных модулей:
- модуль предобработки текста;
- NLP-модуль;
- модуль извлечения аспектов;
- модуль определения тональности текста;
- модуль «Визуализация результатов анализа тональности».
Модуль предобработки текста выполняет на конечном этапе определение частей речи в предложениях входящего текста и передает данную информацию NLP-модулю.
NLP-модуль выполняет автоматическое извлечение признаков из полученных данных о частях речи и выполняет их бинаризацию, в результате будет сформирована таблица признаков сообщения, данные о сообщении и таблице признаков передаются в модуль извлечения аспектов.
Модуль извлечения аспектов выполняет применение таких фильтров к полученному сообщению как: частотный фильтр, лингвистический фильтр, а также выполняет определение принадлежности н-граммы множеству аспектов, полученная информация передается модулю определения тональности.
Модуль определения тональности выполняет классификацию сообщения одним из двух методов выбранных администратором системы, результаты выполненной классификации отображаются пользователю в виде отчета.
В качестве среды разработки выбрана Microsoft Visual Studio 2012, язык C#, а в качестве СУБД для хранения данных – Microsoft SQL Server 2012.
Работа алгоритма всей системы заключается в следующем. Первый этап заключается в выполнении предварительной обработки текста сообщений. На донном этапе выполняется преобразование текста сообщения в нижний регистр, далее замена смайлов и некоторых знаков препинания на метки в соответствии с таблицей 1, далее выполняется выделение отдельных слов предложений (используется Penn Treebank Tokenizer из NLTK). Далее выполняется поиск и замена принятых сокращений, например т.к. – так как, пр. – прочее, после чего выполняется приведение всех выделенных слов к их начальной форме (используется алгоритм Penn Treebank Tokenizer из NLTK), в последнюю очередь выполняется удаление предлогов, союзов и артиклей из текста сообщения.
Для выражения эмоций в тексте пользователи ставят смайлы. В случае с короткими текстами нет более простого способа отметить своё отношение к содержимому web-сайта. Замена смайлов, отражающих эмоциональную окраску текста осуществляется в соответствии с таблице 1.
Таблица 1 – Эмоциональная окраска смайлов
Смайл |
Метка |
Смайл |
Метка |
Смайл |
Метка |
Смайл |
Метка |
Смайл |
Метка |
:-) :с) :} 8-D XD B^D :-c :-[ :@ :’) D= :^* ;) ;D :P :-p :p >: : :S O:-) 0;^) |
+ + + + + + - - - + - + + + + + + - - - + + |
:) :> :^) 8D =-D :-)) :c :[ >:( D:< DX ( *-) ;^) X-P :p :-p >:/ =/ >.< 0:-3 O_O |
+ + + + + + - - - - - + + + + + + - - - + - |
:o) =] :>) x-D =D >:[ :-< :{ :’-( D: v.v }{ *) :-, x-p =p :-b :-/ = :| 0:3 0/ |
+ + + + + - - - - - - + + + + + + - - - + + |
:] 8) :-D xD =-3 :-( :>C ;( :’( D8 D-‘: ) ;-] >:P xp :-p :b :-. :L :-| 0:-) <3 |
+ + + + + - - - - - - + + + + + + - - - + + |
:3 =) :D X-D =3 :( :< :-|| :’-) D; :* ;-) ;] :-P XP :p d: :/ =L :$ 0:) </3 |
+ + + + + - - - + - + + + + + + + - - - + - |
Разработанная система выполняет следующие функции:
1) выделение из текста сообщений отдельных предложений;
2) выделение отдельных слов в полученных предложениях;
3) определение частей речи полученных слов;
4) извлечение смайлов из текста сообщения и их классификация по тональности;
5) разбиение обработанного текста сообщения на n-граммы;
6) извлечение признаков;
7) выполнение бинарной классификации;
8) применение частотного и лингвистического фильтров;
9) определение принадлежности н-граммы множеству аспектов;
10) выполнение классификации методом SVM;
11) выполнение классификации байесовским методом;
12) визуализация результатов анализа тональности сообщений.
Таким образом, разработанная система сбора и анализа статистики пользовательских сообщений на web-сайтах может использоваться компаниями по улучшению привлекательности для пользователей своих сетевых ресурсов. Что в конечном итоге должно отразится на увеличении прибыли компаний.
Библиографический список
- Трофимова Е.В. Туральчук К.А. Разработка рекомендательной системы на основе анализа тональности текста// Актуальные проблемы гуманитарных и естественных наук Выпуск № 1-1 / 2015
- Константин Селезнев, Александр Владимиров. Лингвистика и обработка текстов // Открытые системы. — 2013. — № 04. — C. 46–49.
- Е.В. Проноза, Е.В. Ягунова Аспектный анализ отзывов о ресторанах для рекомендательных систем е-туризма// Компьютерная лингвистика и вычислительные онтологии [Электронный ресурс] URL: http://openbooks.ifmo.ru/ru/file/2213/2213.pdf