Электронная библиотека диссертаций и авторефератов России
dslib.net
Библиотека диссертаций
Навигация
Каталог диссертаций России
Англоязычные диссертации
Диссертации бесплатно
Предстоящие защиты
Рецензии на автореферат
Отчисления авторам
Мой кабинет
Заказы: забрать, оплатить
Мой личный счет
Мой профиль
Мой авторский профиль
Подписки на рассылки



расширенный поиск

Автоматизация мониторинга общественного мнения на основе интеллектуального анализа сообщений в социальных сетях Будыльский Дмитрий Викторович

Автоматизация мониторинга общественного мнения на основе интеллектуального анализа сообщений в социальных сетях
<
Автоматизация мониторинга общественного мнения на основе интеллектуального анализа сообщений в социальных сетях Автоматизация мониторинга общественного мнения на основе интеллектуального анализа сообщений в социальных сетях Автоматизация мониторинга общественного мнения на основе интеллектуального анализа сообщений в социальных сетях Автоматизация мониторинга общественного мнения на основе интеллектуального анализа сообщений в социальных сетях Автоматизация мониторинга общественного мнения на основе интеллектуального анализа сообщений в социальных сетях Автоматизация мониторинга общественного мнения на основе интеллектуального анализа сообщений в социальных сетях Автоматизация мониторинга общественного мнения на основе интеллектуального анализа сообщений в социальных сетях Автоматизация мониторинга общественного мнения на основе интеллектуального анализа сообщений в социальных сетях Автоматизация мониторинга общественного мнения на основе интеллектуального анализа сообщений в социальных сетях Автоматизация мониторинга общественного мнения на основе интеллектуального анализа сообщений в социальных сетях Автоматизация мониторинга общественного мнения на основе интеллектуального анализа сообщений в социальных сетях Автоматизация мониторинга общественного мнения на основе интеллектуального анализа сообщений в социальных сетях Автоматизация мониторинга общественного мнения на основе интеллектуального анализа сообщений в социальных сетях Автоматизация мониторинга общественного мнения на основе интеллектуального анализа сообщений в социальных сетях Автоматизация мониторинга общественного мнения на основе интеллектуального анализа сообщений в социальных сетях
>

Диссертация - 480 руб., доставка 10 минут, круглосуточно, без выходных и праздников

Автореферат - бесплатно, доставка 10 минут, круглосуточно, без выходных и праздников

Будыльский Дмитрий Викторович. Автоматизация мониторинга общественного мнения на основе интеллектуального анализа сообщений в социальных сетях: диссертация ... кандидата технических наук: 05.13.10 / Будыльский Дмитрий Викторович;[Место защиты: Брянский государственный технический университет].- Брянск, 2015.- 169 с.

Содержание к диссертации

Введение

1 Социальные сети как объект мониторинга общественного мнения 11

1.1 Роль общественного мнения в управлении социально-экономическими системами 11

1.2 Интернет и социальные сети в России сегодня 16

1.3 Мониторинг социальных сетей как инструмент поддержки принятия управленческих решений 21

1.4 Проблемы и методы анализа информации, полученной в ходе мониторинга социальных медиа 27

1.5 Обзор методов анализа тональности текстовой информации на русском языке 31

1.6 Выводы по главе 40

2 Постановка и исследование задачи мониторинга социальных сетей с поддержкой автоматизированного интеллектуального анализа пользовательских сообщений 42

2.1 Анализ свойств объекта исследования 42

2.2 Определение отдельных параметров мониторинга социальной сети 48

2.3 Методика выявления агентов социальной сети, подверженных мониторингу 51

2.4 Построение обобщенного алгоритма мониторинга социальных сетей с поддержкой аспектного анализа тональности 58

2.5 Выводы по главе 64

3 Исследование моделей глубокого обучения, используемых в задачах обработки текстовнаестественном языке 66

3.1 Постановка задачи исследования 66

3.2 Модели векторного представления текстовой информации 67

3.3 Рекуррентные нейронные сети 73

3.4 Сети GRU и LSTM 77

3.5 Сверточные нейронные сети 80 3.6 Рекурсивные нейронные сети 84

3.7 Разработка модели глубокого обучения для аспектного анализа тональности 87

3.8 Выводы по главе 91

4 Проектирование программного комплекса мониторинга социальных сетей с поддержкой аспектного анализа тональности 93

4.1 Обзор функциональных требований 93

4.2 Разработка архитектуры программного комплекса 101

4.3 Выбор средств разработки 110

4.4 Построение моделей глубокого обучения на основе Theano 114

4.5 Выводы по главе 118

5 Экспериментальная проверка разработанных моделей, методов, алго ритмовипрограммного комплекса 120

5.1 Исследование моделей векторного представления текстовой информации на русском языке 120

5.2 Сравнение разработанных моделей глубокого обучения в задаче аспектного анализа тональности 124

5.3 Использование разработанного программного комплекса в задаче оценки мнений пользователей социальных сетей 134

5.4 Выводы по главе 142

Заключение 144

Список литературы 146

Введение к работе

Актуальность темы исследования. Общественное мнение сегодня является важным индикатором состояния социально-экономической системы, поскольку отражает уровень социальной напряженности. Учет и контроль этого уровня позволяет выстраивать стратегическое планирование для обеспечения устойчивого развития социально-экономической системы, будь то промышленное предприятие, субъект Российской Федерации или государство в целом. В связи с этим, мониторинг общественного мнения является важным и актуальным инструментом управления, активно применяемым социально-политическими, финансово-экономическими и общественными структурами.

Активный рост аудитории социальных медиа в сети Интернет, таких как социальные сети, форумы, блоги и интернет-СМИ, привел к становлению этих ресурсов в качестве нового источника данных о мнении и настроении граждан. Специфика работыстакими данными несетвсебе целыйряд преимуществинедостатков.Кпре-имуществам относится скорость доступа к информации, охват аудитории и спектр выражаемых мнений. Однимизглавных достоинств, как исерьезным препятствием, является объем этих данных. Так, согласно статистике на 2015-й год, ежемесячно в русскоязычных социальных сетях около 30 миллионов уникальных авторов публикуют почти 580 миллиардов сообщений.

Миллиарды публикаций, оставляемых пользователями ежемесячно, невозможно обработать вручную при проведении исследования общественного мнения. Этот факт выдвигает на первый план потребность в методах автоматизированного интеллектуального анализа текстовой информации, позволяющих за короткое время обработать большие объемы данных и понять смысл пользовательских сообщений. Именно понимание смысла сообщений является наиболее важным и сложным элементом автоматизированной обработки.

Таким образом, актуальность диссертационной работы обусловлена необходимостью развития методологического аппарата, который позволил бы использовать большие объемы публикаций пользователей социальных сетей для решения комплекса задач по автоматизации мониторинга общественного мнения.

Объектом исследованияявляется процесс мониторинга общественного мнения пользователей социальных сетей.

Предметом исследования является автоматизация мониторинга общественного мнения на основе применения методов аспектного анализа тональности.

Целью диссертационной работы является разработка моделей, методов и алгоритмов аспектного анализа тональности текстовой информации, их применение к публикациям в социальных сетях для совершенствования методов автоматизации мониторинга общественного мнения.

Для достижения заданной цели необходимо решить следующие задачи:

разработать методику автоматизированного мониторинга социальных сетей, позволяющую извлекать, хранить и анализировать пользовательские сообщения;

выполнить исследование существующих подходов к аспектному анализу тональности текстовой информации, определить наиболее эффективные методы оценки тональности публикаций; разработать методику автоматизации аспектного анализа тональности текстовой информации на русском языке, полностью основанную на методах машинного обучения; разработать программный комплекс, реализующий мониторинг публикаций в социальных сетях и их аспектный анализ тональности на основе алгоритмов машинного обучения; провести экспериментальную проверку разработанных моделей аспектного анализа тональности путем апробации на общедоступных наборах данных и сравнения результатов с инженерно-лингвистическими и гибридными методами; провести экспериментальную проверку разработанного программного комплекса в рамках прикладной задачи исследования общественного мнения. Методы исследования. При выполнении работы использовались методы теории анализа социальных сетей (Social Network Analysis, SNA), методы обработки естественного языка (Natural Language Processing, NLP), методы машинного обучения (Machine Learning), в том числе глубокого обучения (Deep Learning), а также математический аппарат искусственных нейронных сетей. В ходе реализации программного комплекса были использованы методики построения высоконагружен-ных распределенных систем с поддержкой хранения и обработки больших объемов данных.

Соответствие диссертации паспорту специальности. Работа соответствует паспорту специальности 05.13.10 «Управление в социальных и экономических системах»:

п. 5 – разработка специального математического и программного обеспечения систем управления и механизмов принятия решений в социальных и экономических системах; п. 6 – разработка и совершенствование методов получения и обработки информации для задач управления социальными и экономическими системами; п. 10 – разработка методов и алгоритмов интеллектуальной поддержки принятия управленческих решений в экономических и социальных системах; п.12– разработка новых информационных технологий врешении задач управления и принятия решений в социальных и экономических системах. Научная новизна. В работе получены следующие результаты, характеризующиеся научной новизной.

  1. Предложена концептуальная модель автоматизированного анализа общественного мнения с использованием информации из социальных сетей. Модель основана на автоматизации процесса отслеживания текстовых публикаций в социальных сетях с их последующей автоматизированной интеллектуальной обработкой при помощи аспектного анализа тональности.

  2. Предложен метод применения моделей глубокого обучения к задаче аспектного анализа тональности текстовых данных на русском языке, использую-

щий только алгоритмы машинного обучения, что позволяет исключить привлечение экспертов-лингвистов к задачам обработки текстов на естественном языке.

3. Проведены экспериментальные исследования применимости методов векторного представления текстов на русском языке, оценены возможности этих методов поавтоматическому выявлению скрытых семантико-синтаксических связей между словами.

Практическая значимость работы.

  1. Разработана библиотека программных компонентов, позволяющая быстро и гибко проектировать модели глубокого обучения различной сложности, а также проводить эффективное обучение этих моделей на графических процессорах.

  2. Спроектирован и разработан программный комплекс мониторинга социальных сетей с поддержкой аспектного анализа тональности, ключевыми особенностями которого является отказоустойчивость и гибкая горизонтальная масштабируемость.

  3. На основе созданного программного комплекса формализован и упрощен процесс анализа общественного мнения в социальных сетях для конечного потребителя.

Достоверность исследований определяется использованием фундаментальных методов машинного обучения при построении моделей, использовании общих методов оценки эффективности моделей и алгоритмов глубокого обучения в задаче аспектного анализа тональности русскоязычных текстов.

Реализация и внедрение результатов. Программный комплекс мониторинга социальных сетей с поддержкой аспектного анализа тональности использовался при исследовании общественного мнения граждан отдельных регионов ЦФО, проводимого Управлением информационного обеспечения деятельности Губернатора Брянской области и Правительства Брянской области. Разработанная библиотека программных компонентов внедрена в учебный процесс кафедры «Информатика и программное обеспечение» ФГБОУ ВПО «Брянский государственный технический университет» в рамках учебного модуля «Интеллектуальный анализ данных».

Основные положения, выносимые на защиту.

  1. Концептуальная модель мониторинга информации в социальных сетях для автоматизированного скрытого анализа общественного мнения.

  2. Алгоритмы мониторинга текстовых публикаций в социальных сетях с поддержкой аспектного анализа тональности.

  3. Методика применения моделей глубокого обучения для решения задачи аспектного анализа тональности текстовой информации на русском языке.

  4. Архитектура созданного программного комплекса, основополагающие принципы ее построения: отказоустойчивость и гибкость при масштабировании.

  5. Результаты сравнительной экспериментальной проверки реализованных методов аспектного анализа тональностина корпусе русскоязычных текстов, результаты апробации программного комплекса в решении прикладной задачи оценки общественного мнения.

Апробация работы. Основные научные и практические результаты работы докладывались на научных конференциях: Creativity in Intelligent Technologies & Data Science (Волгоград, 2015 г.); международная научно-практическая конференция «Современные концепции развития науки» (Уфа, 2015 г.); IV международная научно-практическая конференция «Вопросы науки: современные технологии и технический прогресс» (Воронеж, 2015 г.); XIX международная научно-практическая конференция «Информационно-вычислительные технологии и их приложения» (Пенза, 2015 г.); IV всероссийская научно-практическая конференция студентов, аспирантов и молодых ученых «Актуальные проблемы современной науки: взгляд молодых» (Челябинск, 2015 г.); VI международная научно-практическая конференция «Достижения молодых ученых в развитии инновационных процессов в экономике, науке, образовании» (БГТУ, Брянск, 2014); международная молодежная научная конференция «Поколение будущего: взгляд молодых ученых – 2013» (Курск, 2013 г.).

Результаты работы также были представлены на следующих конкурсах: конкурс «УМНИК» («Участник молодежного научно-инновационного конкурса») – 1-е место в номинации «Информационные технологии» (2014 г.); конкурс на лучшую научную работу аспирантов, соискателей и молодых ученых Брянской области «Современные научные достижения – 2015» – 3-е место.

Личный вклад автора. Представленные в рамках диссертационной работы обзоры, исследования и эксперименты являются результатами работы, проведенной лично автором. Публикации, написанные вместе с соавторами, также отражают результаты и положения, полученные непосредственно автором.

Основные результаты исследований отраженыв12научных работах,из них 3яв-ляются публикациями в центральных рецензируемых журналах, рекомендованных ВАК РФ, 1 статья опубликована в издании, индексируемом в международной библиографической базе данных Scopus.

Структура и объем работы. Диссертационная работа состоит из введения, пяти глав, заключения, списка использованных источников, включающего 169 наименований, и приложений. Основная часть работы изложена на 169 страницах машинописного текста, содержит 46 рисунков и 2 таблицы.

Проблемы и методы анализа информации, полученной в ходе мониторинга социальных медиа

В качестве заключающего вывода данной цепочки можно утверждать, что мониторинг и анализ социальной напряженности в регионе является важной и актуальной задачей, лежащей в основе устойчивого развития и экономической безопасности. Учитывая то, что Российская Федерация также представляет собой социально-экономическую систему (разумеется, больших масштабов, чем отдельно взятый регион), представленный вывод справедлив для устойчивого развития государства и национальной экономической безопасности.

Одним из способов мониторинга и анализа социальной обстановки является отслеживание таких экономических показателей, как размеры доходов граждан, размеры пенсии по старости и социальных выплат, уровень нищеты [9]. Другим способом является исследование общественного мнения граждан региона. В работе [40] на примере исследования общественных настроений в республиках Северного Кавказа показана важность общественного мнения как инструмента мониторинга и анализа социальной обстановки. Автор подчеркивает важность общественного мнения, называя его «необходимым инструментом».

Г.И. Козырев дает следующее определение общественного мнения: «Общественное мнение – это проявление массового сознания, выражающее ценностно-оценочные суждения социальных групп, отдельных общностей и всего общества по отношению к актуальным проблемам и явлениям социальной действительности. Оно может проявляться в виде суждений, оценок, идей, требований, представлений о проблеме, имеющей социальную значимость» [44]. Также отмечается, что общественное мнение информирует власть и общество о существующих проблемах и инициирует их решение. Оно имеет свойство накапливать свой по 14 тенциал, а при отсутствии легальных способов снятия социальной напряженности может привести к социальному взрыву.

Таким образом, мониторинг общественного мнения выступает в роли одного из главных инструментов оценки состояния социально-экономической системы в контексте процессов стратегического управления и устойчивого развития. Пример реализации практики регионального мониторинга общественного мнения представлен в работе [33]. Автор отмечает, что мониторинг дает широкий срез информации о социальном самочувствии и экономическом положении, политических настроениях населения, используется для анализа и оценки эффективности социального управления, а также при разработке проектов перспективных программ регионального развития. В этой же работе представлено описание структуры по сбору, обработке и анализу информации. Она включает в себя: – анкетеров в каждой точке опроса; – руководителей опроса на местах, координирующих действия анкетеров; – сотрудников головного центра, занимающихся общей координацией работ, обработкой и анализом информации.

Как можно видеть, сбор информации об общественном мнении производится при помощи процедуры опроса граждан. До 80% всей эмпирической информации социологи получают методом опроса [77, с. 87]. Рассмотренный пример структуры организации проведения сбора и анализа информации об общественном мнении показывает, что этот процесс имеет немало издержек (как организационного, так и финансового характера). Для снижения указанных издержек, а также получения ряда других выигрышей в надежности и валидно-сти данных, методы социологических исследований адаптируют под интернет-среду [31]. Отдельно стоит отметить следующие преимущества использования интернет-технологий для проведения опросов [32]: – широта пространственного охвата при фиксированном бюджете; – управление временными параметрами опроса для обеспечения его одно-моментности; – легкость реализации процедур контроля над выборочными единицами. Тем не менее, отмечается и ряд проблем при проведении онлайн-исследований. Ключевым фактором успешного онлайн-опроса является эффективность выборки. Анонимность пользователей сети Интернет рассматривается как причина низкой эффективности выборки ввиду невозможности гарантированной идентификации пользователя [3].

М.В. Дьякова в своей работе по анализу ситуации в сфере онлайн-исследований [38] рассматривает проблемы опросов в интернет-пространстве. Респонденты устали и испытывают раздражение от длинных и утомительных интернет-анкет, сложных отборочных критериев и частых приглашений к опросам. Это привело к снижению количества откликов на участие в исследованиях и даже полному отказу от дальнейшего пользования системами онлайн-панелей (Access Panel).

Одним из путей решения образовавшейся проблемы является повышение заинтересованности и вовлеченности панелистов. Анализируя мотивы участия респондентов в онлайн-опросах, Е.А. Соловьева определила следующие наиболее важные из них: оплата за участие в опросе, возможность высказать собственное мнение, участие в разработке новых продуктов и решение социальных проблем [75].

Стоит отдельно подчеркнуть тот факт, что людям важно не просто получить материальное благо, но донести свое мнение, внести свой вклад, быть частью принятия решений социальных проблем. Здесь происходит стык двух потребностей. Первая из них – потребность людей, ответственных за стратегическое управление регионом, в мониторинге общественного мнения. Вторая – потребность граждан в изъявлении своего мнения, своей позиции по тем или иным вопросам (в том числе социальным). Рассмотренные ранее методики проведения социологических опросов являются хорошим кандидатом на роль однозначного способа удовлетворения обоих потребностей, однако, возвращаясь к их недостаткам (издержки «реальных» опросов и потеря мотивации респондентов в «виртуальных»), возникла необходимость поиска альтернативных решений.

На помощь социологам пришли социальные медиа в сети интернет (форумы, блоги, микроблоги, социальные сети1) [38; 81; 82]. Платформы, изначально предназначенные для общения интернет-пользователей между собой довольно быстро стали предметом интереса многих исследователей ввиду обилия инфор-1Под социальной сетью на качественном уровне понимается социальная структура, состоящая из множества агентов и определенного на нем множества отношений [28]. Существуют различные виды социальных сетей: онлайновые социальные сети (такие как Facebook, Одноклассники, Twitter и др.), социальные сети сотрудников компании, социальные сети научных авторов и ряд других. Далее в данной работе понятие «социальная сеть» будет относиться исключительно к онлайновым социальным сетям. Более детальное определение социальной сети будет дано во второй главе. мации,находящейсявоткрытом доступе.Кэтой информации относитсянетолько межличностная переписка между людьми, но и выражение мнений и отношения к тем или иным событиям, компаниям, продуктам, персонам и многому другому [82].

Сопоставляя между собой потенциальное количество респондентов, можно отметить разницу в несколько порядков: несколько миллионов пользователей онлайн-панелей против миллиардов пользователей социальных сетей, уже имеющих готовые к анализу профили [81].

Таким образом, социальные сети, ввиду широты охвата аудитории идоступ-ности коммуникации с респондентами, имеют основания считаться перспективным источником данных для мониторинга и анализа общественного мнения, который, как отмечалось ранее, имеет большое значение при стратегическом управлении регионом и обеспечении его устойчивого развития.

Определение отдельных параметров мониторинга социальной сети

Рассматривая практическую задачу мониторинга социальных сетей, следует отдельно выделить тот факт, что мониторинг подразумевает только считывание информации из уже готовой структуры социальной сети, и в нем не стоит подзадачи моделирования этой структуры, либо предсказания каких-либо будущих явлений и состояний. Разумеется, социальная сеть развивается - появляются новые агенты (регистрации новых пользователей и/или сообществ) и удаляются существующие (удаление сообществ или аккаунтов пользователей по различным причинам).

Извлекая в момент времени t сообщения социальной сети на основе структуры Gu система мониторинга может фиксировать необходимый набор данных в своей базе. Если в момент времени t +1 в структуре социальной сети произошли изменения (часть агентов была удалена, появились новые), то система мониторинга продолжит функционировать, однако получит отказ в получении сообщений агентов, которые были удалены и не сделает запрос на получение сообщений от новых агентов.

Допустим, имеется модель поведения социальной сети, способная на основе данных графа Gt предсказать структуру Gt+\. В этом предсказании с определенной долей вероятности pfel отдельно взятый агент сети с индексом і будет удален. Исключение данного узла из мониторинга дает потенциальный выигрыш в избежании проведения «лишнего» запроса к API социальной сети.

Учитывая описанные ранее ограничения API на количество запросов, физически возможно отслеживать ограниченное количество агентов сети. Разумным решением будет определить в такую выборку наиболее важных агентов (согласно одной из метрик центральности), вероятность удаления которых будет мала. В таком случае, описанный потенциальный выигрыш лишен практического смысла.

С другой стороны, если агент, подверженный мониторингу, прекращает свое существование, система мониторинга, получив соответствующий ответ от API социальной сети при попытке извлечения очередной порции сообщений, уже точно исключит данного агента из мониторинга. Рассматривая также вероятность появления новых агентов, система не может заранее предсказать их технические характеристики (такие как уникальные идентификаторы, если они генерируются случайно либо задаются пользователем при регистрации). Таким образом, несмотря на развитый аппарат моделирования структур социальных сетей, позволяющих предсказывать будущее поведение социальной сети, в задаче мониторинга эти модели могут привести к увеличению вычислительных затрат и избыточным запросам к API (которые имеют существенные лимиты), при крайне низкой степени полезности. На основе этого можно констатировать, что считывание информации из социальных сетей в момент времени t является достаточным для обеспечения непрерывного отслеживания.

Как уже было отмечено, ограничения социальных сетей на запросы к прикладным интерфейсам программирования ставят вопрос о том, чтобы подвергать мониторингу не всех агентов, а только наиболее значимых. Важно заметить, что указанные ограничения на выборку агентов нужно иметь ввиду при организации мониторинга для последующего поиска по ключевым словам. Вне зависимости от того, является ли тематика прикладной задачи узкой или широкой, социальные сети имеют строгие ограничения на количество запросов к API.

Рассмотренные выше характеристики центральности узлов имеют свои предназначения и хорошо себя проявляют в тех или иных задачах анализа социальных сетей. Однако, следует сразу выделить тот факт, что метрики, основан-ныенаполной структуре графа социальной сети (учитывающие кратчайшие пути, собственные вектора), подразумевают наличие полной информации об абсолют 55 но всех агентах социальной сети, число которых (для крупнейших социальных сетей) составляет сотни миллионов.

Специфика задачи мониторинга социальных сетей для обеспечения устойчивого развития определенного региона говорит о том, что рассматривать стоит не всех агентов, а лишь интересующее подмножество (например, только жителей Брянской области). Но и в этом случае число узлов может измеряться сотнями тысяч, а то и миллионами (в зависимости от региона), поэтому метрики, основанные на полной структуре графа, являются очень затратными с вычислительной точки зрения. Даже с применением наиболее оптимизированных алгоритмов анализа, стоит помнить об ограничениях API социальной сети на количество запросов. Для своевременного обновления всей структуры графа (пусть даже регионального подграфа), необходимо производить тысячи обращений к API.

Простым и эффективным решением является использование степени узла для оценки важности агента социальной сети. Этот простой количественный показатель уже заранее реализован во многих социальных сетях (число подписчиков сообщества VK, число «фолловеров» Twitter и др.), поэтому для определения n важнейших агентов сети требуется просто отсортировать агентов по количеству подписчиков, что прямым образом согласуется с описанным ранее подходом к определению взаимоотношений между агентами. На рисунке 2.4 показано распределение 2000 крупнейших сообществ Брянска в социальной сети VK. В действительности, количество зарегистрированных брянских сообществ в сети VK в несколько раз больше, однако ограничения API не позволяют извлечь больше информации [36]. Тем не менее, этого достаточно для того, чтобы отследить степенной закон распределения и выделить количество наиболее значимых сообществ. Так, по состоянию на начало сентября 2015 года, всего одно сообщество имеет больше 100 тыс. подписчиков, еще 29 имеет аудиторию, превышающую 10 тыс. человек, а сообществ с тысячей пользователей чуть меньше 600.

Разумеется, помимо VK рассмотрению подлежат и другие сети, а также мониторингу могут быть подвергнуты не только сообщества, но и отдельные пользователи. Целью данного примера было показать степенной характер распределения агентов социальной сети (по количеству подписчиков), что позволяет с уверенностью брать этот показатель за основу выбора наиболее важных агентов. Конкретное количество агентов зависит от ограничений конкретной социальной

Рекуррентные нейронные сети

Главными компонентами любой информационной системы являются базы данных, т.к. именно они занимаются хранением информации, обработка которой составляет основу приложения. В предыдущем разделе было показано, что программный комплекс мониторинга содержит в себе две независимые базы данных – нереляционная СУБД для хранения больших объемов данных (важнейшим элементом которой является горизонтальная масштабируемость), и реляционная, хранящая сравнительно малые объемы критически важных данных.

Причина использования двух систем управления базами данных заключается в ограничениях теоремы Брюера, известной также как теорема CAP (Consistency, Availability, Partition tolerance). Согласно теореме, в любой реализации распределенных вычислений можно обеспечитьнеболее двух свойств: согласованность данных (Consistency), доступность (Availability), устойчивость к разделению (Partition tolerance).

Данные о пользователях, их заказах и оплатах важно поддерживать в целостности, что успешно обеспечивают реляционные СУБД, в то время как пользовательские сообщенияизсоциальных сетейнестоль важны. Несогласованность или даже утрата каких-либо данных из социальных сетей является «каплей в море» и не влияет на работу системы, однако утрата, скажем, данных заказа может повлечь недовольство конечного пользователя и потенциальную потерю клиента сервиса.

Основными критериями выбора средств разработки являются: – бесплатное использование, критически важное для снижения издержек; – распространенность и наличие документации, важные для облегчения изучения и внедрения, что влияет на охват специалистов для найма; – эффективность в решении поставленных задач, к которой можно отнести как скорость вычислительной обработки, так и простоту написания программного кода.

По состоянию на конец лета 2015 г. лидером среди бесплатных реляционных СУБД является MySQL, среди NoSQL-решений наиболее популярна MongoDB [99]. В этой же статье показана популярность хранилища Redis, широко используемого для хранения runtime-данных приложений.

Важнейшим программным компонентом является модуль обучения. Необходимо организовать приложение, способное использовать вычислительные ресурсы графического процессора для эффективного обучения моделей. При этом важно, чтобы это использование было максимально простым и прозрачным.

Сегодня эффективные вычисления на графических процессорах производятся при помощи платформы NVIDIA CUDA, обеспечивающей набор расширения для языков C и C++. Однако, такой код, несмотря на свою эффективность, является довольно громоздким и трудноподдерживаемым, вследствие чего сообщество программистов в сфере Deep Learning разработало ряд библиотек, использующих CUDA совместно с более лаконичными языками программирования, такими как Lua или Python.

Наиболее популярными библиотеками глубокого обучения являются Caffe [97], Theano [157; 158] и Torch [159]. В рамках исследований выбор был сделан в пользу Theano по следующим причинам: использование лаконичного и многофункционального языка Python, автоматическая генерация кода на языке C, прозрачная поддержка GPU, гибкость в построении математических моделей глубокого обучения.

Не последнее место среди описанных причин занимает использование Python, т.к. для этого языка существует ряд библиотек, позволяющих обеспечивать легковесные и эффективные API, в частности, посредством библиотеки Flask. Это позволяет использовать всего один язык для создания серверного процесса, обеспечивающего прикладной интерфейс программирования к обученным моделям глубокого обучения, что важно при написании модулей анализа. Та 112 ким образом, Python, вместе с библиотеками Theano и Flask, становится основой для модулей глубокого обучения.

Учитывая наличие хорошо развитых и проработанных библиотек на языке Python для доступа к социальным сетям, выглядит рациональным использование его для разработки модуля мониторинга. Также немало хороших библиотек для доступа к социальным сетям имеют и другие языки, например, Ruby. Однако, при отсутствии объективных причин по использованию отдельного языка программирования, выбор остается в пользу Python – это поможет исключить найм отдельных специалистов при расширении штата программистов.

Последним серверным компонентом остается приложение, поддерживающее логику клиентских взаимодействий (обозначенное на рисунке 4.3 как сервер приложения). Ключевой особенностью этого программного компонента является взаимодействие с внешними источниками – двумя различными СУБД и модулями анализа тональности. Это выдвигает на первый план эффективность операций ввода-вывода. Наиболее эффективной реализацией неблокирующего IO является асинхронность, заложенная в основу платформы Node.js – серверной реализации языка JavaScript на основе движка V8. Используя асинхронный ввод-вывод, запросы клиентского приложения не будут блокированы выполнением других, требующих долгой обработки. Это позволяет значительно повысить эффективность обработки пользовательских запросов.

Популярной и достаточно удобной концепцией разработки серверных приложений является MVC (Model View Controller – модель, вид, контроллер). Существует целый ряд фреймворков, позволяющих реализовать MVC на основе Node.js [86]. Очень популярным является фреймворк Express.js, а также его модификация, ориентированная на использование вебсокетов – Express.io. Однако, в последнее время все большую популярность набирает фреймворк Sails.js, поддерживающий вебсокеты и все популярные СУБД. Не случайно именно он занял 1-е место в списке лучших MVC фреймворков для Node.js по версии [86].

Переходя к клиентской части, представленной в виде связки языка разметки HTML, языка описания каскадных таблиц стилей CSS и языка программирования JavaScript, следует выделить Anguar.js как наиболее популярный фреймворк для разработки клиентских приложений на языке JavaScript [92].

Ранее также было отмечено, что наличие большого количества статических файлов может приводитькснижению производительности, поэтому современные приложения используют механизмы оптимизации статических файлов, используемые в рамках автоматизаторов задач, таких как Grunt или Gulp. При помощи этих приложений можно организовать отдельный процесс веб-сервера для отдачи статических файлов.

Несмотря на то, что рассмотренные программные продукты (Flask, Gulp, Sails.js) имеют встроенные возможности по организации веб-сервера, в качестве прокси-сервера и/или балансировщика можно использовать веб-сервер Nginx.

Построение моделей глубокого обучения на основе Theano

В главе 4 были описаны действия конечного пользователя (аналитика – клиента сервиса мониторинга и анализа публикаций), в число которых входят регистрация, аутентификация, отправка и согласование заявки, а также просмотр результатов мониторинга. Такие действия как регистрация, логин и обмен сообщениями в рамках системы, являются повсеместно используемыми и не представляют интереса для демонстрации. Куда больший интерес представляет непосредственно результат практического применения разработанных моделей глубокого обучения для анализа реальных данных из социальных сетей.

На рисунке 5.7 показан экран панели сводного отчета системы АСМА (автоматизированная система мониторинга и анализа), который предоставляется конечному пользователю для обзора результатов мониторинга и аспектно-ориентированного анализа тональности текстовых публикаций в социальных сетях.

Панель сводного отчета позволяет настраивать отображение отдельных графиков и диаграмм по желанию пользователя. В качестве примера, на скриншо 135

Экран сводного отчета программного комплекса те представлены результаты произведенного объектно-ориентированного анализа текстовых публикаций в социальных сетях для четырех регионов центрального федерального округа: Брянская область, Калужская область, Орловская область и Смоленская область.

Предметная область является тематикой узкой направленности, где на первый план выступают мнения как можно большего количества пользователей, а не отдельных лиц. Для этого была использована методика поиска по ключевым словам, использующая в качестве параметра географическое расположение авторов публикации. Разумеется, в масштабах страны количество сообщений во много раз больше – узконаправленная специфика отслеживания сообщений по регионам существенно сокращает выборку, поскольку основное множество публикаций приходится на города-столицы, такие как Москва и Санкт-Петербург.

Другим ограничением является тот факт, что будучи альфа-версией, программный комплекс еще не обеспечивает мониторинг всех возможных социальных медиа: всех социальных сетей и площадок блогосферы, интернет-СМИ, форумов и других изданий. На данный момент публикации взяты из VK, LiveJournal и Twitter. Для обеспечения полного покрытия необходимо привлечение дополнительных работников сервиса, что возможно после запуска программного обеспечения в коммерческую эксплуатацию и оформления юридического лица.

Тем не менее, несмотря на небольшое количество извлеченных сообщений (порядка 300) за первые девять месяцев 2015-го года, основным является демонстрация того, что продукт реализован и выполняет поставленную задачу по сбору и автоматизированному интеллектуальному анализу данных из социальных сетей. Расширение тематики, возможное при смене предметной сделает проводимый анализ более полным, с точки зрения охвата аудитории. Однако, этот вопробласти как таковой, а также при снятии/изменении временных или географических ограничений, ос является техническим и не влияет на основные концептуальные элементы программного комплекса – мониторинг и интеллектуальный анализ.

Рассмотрим каждый из элементов сводного отчета более подробно. Рисунок 5.8 показывает круговую диаграмму распределения общего количества извлеченных сообщений по регионам.

Интерфейс системы позволяет визуально разделить области, соответствующие разным регионам, а также обеспечить интерактивность представляемой диаграммы – при помощи наведения указателя на определенный сегмент диаграммы можно увидеть интерактивное пояснение. На приведенном выше скриншоте указатель наведен на зеленый участок, что визуально выделяет его и поясняет, что соответствующая область диаграммы соответствует данным об извлеченном количестве сообщений по Брянской области. Так, в рамках исследования, за 9 месяцев 2015 года количество сообщений для каждого из регионов составило:

Данная диаграмма представляет собой общую информацию по проведенному мониторингу, позволяя пользователю оценить, насколько часто обсуждается в сети заданная им предметная область, согласно ограничениям, указанным в заявке на мониторинг. Так, например, на основе представленных выше данных о количестве извлеченных сообщений для заданных регионов центрального федерального округа, можно делать вывод, что региональные отзывыо банках являются не столь репрезентативными, и необходимо рассмотреть укрупнение выборки до форматов всего федерального округа либо страны целиком.

Предметная область, относящаяся к деятельности таких крупных компаний, как ведущие банки страны, в большей степени нацелены на охват мнений в пределах всего государства, поскольку их деятельность (рекламные кампании, предоставляемые услуги) во многом совпадает для всех регионов.

Помимо общей информации о количестве упоминаний за выбранный временной промежуток, аналитику важно иметь инструмент, отражающий динамику упоминаний. Система предоставляет такую визуализацию, пример которой представлен на рисунке 5.9.

График показывает сколько сообщений было извлечено из социальных сетей и проанализировано программным обеспечением мониторинга за каждый месяц. При этом, система позволяет увидеть детали мониторинга для каждого из регионов, давая аналитику понимание того, как активно в отдельно взятом субъекте Российской Федерации происходило обсуждение заданной предметной области. На примере проведенного исследования банковской сферы можно видеть, что в марте 2015 года имеется некоторый всплеск обсуждений банков в Брянской области, по сравнению с другими. В августе того же года происходит активизация обсуждений во всех рассматриваемых регионах. Сентябрь характеризуется снижением показателя. Это связано с тем, что момент фиксирования скриншотов работы программного комплекса происходил в первую неделю сентября и количество сообщений, извлеченных впоследствии, может еще существенно возрасти.